Category Archives: Programación

Freshdesk aceptó una funcionalidad que pedí

Solo cuento que en Freshdesk todos van a poder disfrutar de la funcionalidad de poder exportar historiales de chats a .csve, así me lo contaba Sabareesan:

Mark,
Our product management team has some good news for you. We are glad to inform you that exporting chat conversation to either Excel or CSV format is in our roadmap and would keep you posted on the updates once the feature is out.
You could also refer to the following link for the same:

 

¿Qué es Freshdesk?

Es la alternativa made in India a Zendesk: más económica y más abierta (no nos “roba la información” por lo que permite exportar gran parte de nuestros datos a .csv: clientes, tickets, etc…). Al tener caos en la administración de la atención al cliente, servicios de pre o posventa, aplicar la filosofía de Freshdesk es sensacional. Realmente no puedo explicar en palabras el amor que Freshdesk genera en mi corazón.

¿Cuándo algo es “Antifrágil”?

Gato negro / Black cat / El gato de la ¿Suerte?

El gato de la ¿Suerte?

La respuesta es “Lo que se beneficia del desorden“. Pero esto puede ser confuso, así que para resumirlo mejor muy hacerlo más fácil de entender, esta es mi definición:
Lo que se beneficia del desorden o a lo que el desorden no le da consecuencias negativas

En la realidad es más fácil encontrar sistemas antigfrágiles que así lo son porque la volatilidad no le causa grandes daños, o estos son ínfimos comparados con las consecuencias positivas que podría tener o no.

Opcionalidad

La opcionalidad es una cualidad de antigfragilidad.
Ejemplo: [ Need example… ]

Asimetría

La asimetría también es una cualidad. Pero vamos a verla más tarde cuando complete el post ;).

¿Querés más?

No pierdas el tiempo leyendo blogs con posts súper cortos. Leé este resumen/. Es el mejor que vi.

Vender productos en Consignación con PrestaShop

2008-08-28 Black Friday shoppers at Wal-Mart

Prestashop nos ofrece la posibilidad de extenderlo con módulos, o creando nuestro código para el framework MVC que tiene (Prestashop de origen francés y tiene su propio código ¡Jajaja! Francia me caen muy bien ;) ).

¿Pero qué hacemos si al emprender un e-shop con este código pensamos financiar la compra de stock gracias a ropa comprada en consignación?

Me enfrenté a este reto hace 5 meses, en este proyecto y conseguí una muy buena solución que ningún módulo me pudo dar. Pronto voy a publicar todo lo que pueda sobre el análisis y la implementación en Prestashop.

Recomendaciones para obtener financiación en stock para un e-shop

Por favor, si vas a montar un e-shop en donde necesitás financiación para comprar el stock, no olvides leer mucho sobre:

4 formas de modificar el comportamiento de Prestashop

Tengo 4 formas para modificar el funcionamiento de Prestashop (un CMS para crear un e-shop, que como los desarrolladores son franceses, crearon su propio framework con poca documentación) .
Es común que  quiera llenarlo de cambios, a pesar de que existen miles de módulos (dentro de 300 caracteres explico qué son) que ayudan a modificar su comportamiento.

Una tienda china

Una tienda china

  1. Editando directamente el código: No recomendable porque cuando Prestashop se actualiza puede borrar el cambio. Además es muy complicado de distribuir…
  2. Extendiendo clases y controladores: Prestashop tiene un directorio en el cual podemos hacer uso del extend para las clases y controladores para los cuales queremos modificar su comportamiento.
  3. Creando nuestras propias clases y controladores: si por ejemplo tenemos una tienda online de ropa podemos querer tener un pequeño CMS que guarde información sobre las modelos que posaron en las fotos. Es normal que se guarde y muestre las medidas de la persona que se ve en las imágenes, para que los clientes tengan más datos sobre la prenda para poder especular cómo le quedaría a él/ella.
  4. Creando mi propio módulo: esta forma está muy utilizada porque es muy fácil distribuir los cambios. Simplemente con un archivo empaquetado y/o comprimido guarda mi código y puedo distribuirlo a quien sea, lo único que tengo que enviarle es ese bello archivo .tar, .gz, .zip o un privativo .rar

Detección de errores ortográficos

Desde hace un buen tiempo que vengo preguntándome cómo Firefox, LibreOffice y Thunderbird detectan los errores ortográficos mientras voy escribiendo (el clásico subrayado en rojo), ya que ¿Si LibreOffice lo hace por qué no puedo? Además lo más obvio es que ya existe algún proyecot dedicado a solucionar este problema, para evitar reinventar la rueda.

Pez raro. Raro como la búsqueda que tuve que hacer

Ufff… Este pez es tan raro como la búsqueda que tuve que hacer

Después de hacer búsquedas raras (¡No puedo creer por qué está tan “oculta” esa información en los buscadores!) pude encontrar por fin LanguageTool que se trata de una herramienta que funciona con diccionarios de mútiples idiomas y me dice qué palabras tienen errores (Además de otro tipo de problemas en los textos).

El problema a resolver

Tengo decenas de cientos de textos mal escritos. Solo necesito saber cuáles tienen más o menos errores para poder hacer una rápida selección de los “menos incorrectos” y descartar los demás.

Más tarde quiero utilizar LanguageTool para tener una interfaz fordista de corrección de errores a lo Turco Mecánico.

¿Cómo uso LanguajeTool en mi código?

1. Bajas la versión stand-alone.

2. Descomprime el .zip…

3. Ejecuta el comando (en el directorio descomprimido):

java -cp languagetool-server.jar org.languagetool.server.HTTPServer –port 8081

4. Haces una petición GET hacia:

http://localhost:8081/?language=es&text=hola+dia

Parámetros de la URL:

  • language: lenguaje en el cual está el texto.
  • text: el texto a “corregir”.

Nos va a devolver un XML como este:

<?xml version=”1.0″ encoding=”UTF-8″?>
<matches software=”LanguageTool” version=”2.2″ buildDate=”2013-06-30 18:39″>
<language shortname=”es” name=”Spanish”/>
<error fromy=”0″ fromx=”0″ toy=”0″ tox=”4″ ruleId=”UPPERCASE_SENTENCE_START” msg=”Esa frase no se inicia con mayúscula” replacements=”Hola” context=”hola dia” contextoffset=”0″ offset=”0″ errorlength=”4″ category=”Mayúsculas y minúsculas” locqualityissuetype=”typographical”/>
<error fromy=”0″ fromx=”5″ toy=”0″ tox=”8″ ruleId=”HUNSPELL_RULE” msg=”Hallado un posible error de ortografía” replacements=”día#ida#di#da#odia#dina#dita#dial#dila#dima#diga#diva#diña#ria#dio” context=”hola dia” contextoffset=”5″ offset=”5″ errorlength=”3″ category=”Posible error tipográfico” locqualityissuetype=”misspelling”/>
</matches>

Para utilizar esta información voy a leerlo con la clase SimpleXMLElement

¿Cómo resultó la solución de mi problema?

Tenía ganas de obtener un promedio de errores. Pero obtuve una desviación stándar de 20000…