29 marzo 2008

Lost in translations?

Me voy a poner puntilloso en este post con el tema de la traducción de algunos términos.

Open source (code)
Se traduce habitualmente por código (fuente) abierto que parece la traducción más obvia y directa. Abierto, en el sentido en que el código no es de propiedad privada, sino que se puede revisar, copiar e incluso modificar. Pero también se podría traducir por código (fuente) público, así incidimos en que ese código fuente está disponible al público, a la gente en general, que no es propiedad de ninguna organización, ni de ninguna persona. No creo que traducir open por abierto sea incorrecto, pero creo que el mensaje más importante se manda al traducirlo como público.

Free software
Se traduce habitualmente como software libre, pero ¿qué quiere decir que el software es libre?. Tomemos una frase parecida: "free beer" no lo traducimos como cerveza libre, sino como cerveza gratis, "free lunch" se traduce como comida gratis. Igualmente, podríamos traducir "free software" como software gratuito, incidiendo en el modo de licenciamiento, que es gratuito y no tanto a la libertad y dinamismo del software.

Abierto a debate ... ¿algún bilingüe que nos pueda sacar de dudas?


26 marzo 2008

¿Tienen los simios una Teoría de la Mente?

De una conferencia de Laurie Santos el 26 de Marzo en el CosmoCaixa de Alcobendas.

¿Qué es la teoría de la mente para los humanos?
Es la capacidad que tenemos de predecir o imaginar lo que otros (humanos o no) saben, ven, oyen, sienten, ... Si sé que no has estado mirando, no te preguntaré que qué has visto. Si te pedí prestado dinero 30 veces y no me dejaste un duro, pensaré que hay poca probabilidad de que me lo dejes a la 31. En definitiva, es nuestra capacidad de hacer previsiones sobre el comportamiento de los demás, asumiendo que sabemos lo que están pensando o sus intenciones.

¿En qué momento de nuestra evolución surgió esta capacidad?

Pues no se sabe con exactitud y por eso es por lo que se investiga a los primates actuales y deducir ese momento por su grado de parentesco con nosotros. Si los lemures - esos que saltan de lado y que viven en Madagascar y que son los primates menos evolucionados de la cadena evolutiva - tuvieran la capacidad descrita arriba, entonces querría decir que es muy muy antigua, pero no es el caso, es posterior, pero no se sabe con exactitud.

¿Tienen los simios una Teoría de la Mente?

En los años 80 se hicieron experimentos con simios y se dedujo erróneamente que NO la tenían. Los experimentos se realizaron en un entorno colaborativo, es decir, se les aconsejaba a los simios dónde podían encontrar la fruta y ellos no la encontraban, porque se les alimentaba igualmente, la encontrasen o no. Más recientemente se realizaron los mismos experimentos pero en entorno competitivo, el mono estaba hambriento y si no encontraba la comida, seguiría hambriento.

Aquí viene lo impactante de esto, en entorno competitivo el simio se convertía en más capaz de predecir la actitud de los demás, de calcular quien podría quitarle la comida o no. En entorno competitivo el primate sí que tiene una Teoría de la Mente y sabe que si su competidor ha tenido los ojos cerrados, no sabrá donde se escondió la fruta y será un rival más fácil.

Los humanos tenemos una teoría de la mente tanto en entorno colaborativo, como en entorno competitivo, pero esto da que pensar ...

Podéis encontrar más info en
http://www.boingboing.net/2007/12/31/do-monkeys-have-a-th.html
http://www.smithsonianmag.com/science-nature/monkey-200801.html?c=y&page=1

25 marzo 2008

¿Qué es el twitter?

La gente me pregunta
¿para qué sirve twitter?
Y yo me suelo quedar pensando, sin una respuesta evidente, porque la pregunta debería ser
¿para qué usastwitter?

Cada uno lo puede usar para una cosa, ya que los principios son tan básicos que dan mucha flexibilidad:
- uno puede enviar cuando le dé la gana un mensaje de hasta 140 caracteres y se pueden añadir enlaces
- uno puede seguir a otros usuarios y así ve en su pantalla los mensajes que ellos vayan escribiendo
- si te cansas de seguir a alguien o no quieres que alguien te siga a ti, puedes terminar la relación inmediatamente

¿Para qué se puede usar?
Para ir contando lo que estás haciendo, tipo: "tomando un champagne cocktail"
Para compartir pensamientos, por ejemplo: " no había caido que el messenger es un p2p"
Para decir qué música escuchas: "sonando die another day de james bond"
Una variación de la primera es, pasar enlaces de las web que estás leyendo: "currently browsing: http://www.libroblanco.com"
Para pedir ayuda: "como añado a favoritos al twitter?"

¿Para qué me sirve a mí?

Para ver que la gente es muy activa, hace muchas cosas, lee mucho y sabe mucho de muchos temas. Para moverme más y no quedarme parado, aprovechar el día, menos sofá y tv y más internet y portátil. Más escribir y menos siesta. Más mirar lo que hay ahí afuera y menos pensar que ya has llegado a donde ibas.
Un par de posts de compañeros tuiteros:
uno de marilink y otro de sebas

Algo tendrá, ya que otros sitios de networking como facebook, plaxo y linkedin también han añadido esta posibilidad.

22 marzo 2008

The Cathedral and the bazaar

Me recomendaron hace unos siete años que me leyese este artículo y no encontré el tiempo de hacerlo, ahora me arrepiento, es brillante, genial y a la vez, humilde.

El artículo The Cathedral and the bazaar ilustra la manera de desarrollar software que se ha seguido, con tanto éxito, en Linux - el bazar - en contraposición con la manera más tradicional - la catedral.
El artículo fue presentado en el Congreso de Linux del 1997, pero creo que lo que describe sigue estando vigente, aunque de manera muy evidente en el mundo del software, creo que también en otros campos que requieren compartición de conocimiento e ideas.

Durante el artículo va señalando los puntos que él considera más importante a modo de lecciones aprendidas.

1. Every good work of software starts by scratching a developer's personal itch.
2. Good programmers know what to write. Great ones know what to rewrite (and reuse).
3. "Plan to throw one away; you will, anyhow.''
4. If you have the right attitude, interesting problems will find you.
5. When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
6. Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
7. Release early. Release often. And listen to your customers.
8. Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone // Given enough eyeballs, all bugs are shallow.
9. Smart data structures and dumb code works a lot better than the other way around.
10. If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource.
11. The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
12. Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong
13. "Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.''
14. Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected.
15. When writing gateway software of any kind, take pains to disturb the data stream as little as possible—and never throw away information unless the recipient forces you to!
16. When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
17. A security system is only as secure as its secret. Beware of pseudo-secrets.
18. To solve an interesting problem, start by finding a problem that is interesting to you.
19: Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.

19 marzo 2008

Propuesta para la democratización del CRM

Los principios que hacen que la gestión de los clientes de una empresa sea eficiente, pasan por tener unos procedimientos bien definidos y soportados por herramientas adecuadas. Esto lo hacen las grandes empresas a base de grandes inversiones, pero también se puede hacer sin que las inversiones sean tan grandes, aprovechando las oportunidades que el mundo de software libre nos proporciona.

Situación actual

¿De qué manera podemos mejorar la competitividad de las pequeñas y medianas empresas?

¿Hay alguna mejora tecnológica que pueda ayudar a estas empresas a gestionar a sus clientes de una manera más eficiente?

Si entendemos que una de las repuestas es la utilización de un software de gestión de clientes a un coste ajustado, entonces podemos plantear otras preguntas.

¿Por qué las empresas de software que dominan este mercado como no tienen a las PYMES como objetivo de venta?

¿Por qué las iniciativas de empresas como Salesforce.com, SugarCRM e incluso de Microsoft no prosperan?

Para una empresa de software, el coste de llegar a las PYMES no sale rentable ya que el beneficio esperado no compensa con el coste de realizar las labores de preventa. Microsoft tiene a su favor que ya tienen el canal establecido con este sector y el coste es más reducido. Empresas como SugarCRM y Salesforce.com están utilizando canal directo solo para grandes clientes, con éxito reducido, y el canal indirecto para las demás empresas. En este último caso, el distribuidor ofrece el producto como complemento a los otros servicios ofertados al cliente y en pocas ocasiones como el principal objetivo de negocio.

¿Quién sale perjudicado de esta situación?

Las empresas que obtienen beneficios de distribuir estos productos software comercialmente, no están interesadas en hacerlo al nivel de capilaridad requerido para alcanzar la pequeña y mediana empresa, con lo que la gestión de clientes que realizan es, en ocasiones, muy básica y basada en herramientas informáticas y procedimientos mejorables. Esto les resta competitividad y eficiencia en su gestión que conlleva, finalmente, una menor productividad. Las perjudicadas son, en definitiva, las PYMEs.

Cambiar las reglas

Para mejorar la situación anterior debemos cambiar las reglas.

Las compañías que dominan el mercado del software de gestión de clientes son propietarias del software que distribuyen y el beneficio que obtienen es, mayoritariamente, a través de la venta de licencias y del mantenimiento anual de las mismas. El enfoque debe ser utilizar software basado en código fuente público, sin coste inicial ni de mantenimiento de las licencias.

Si no contamos con las empresas de software comercial, tendremos que encontrar la manera de realizar sus funciones con otros "actores" y otros objetivos. El objetivo pasa de ser uno meramente económico, a ser uno con sentido social y que es el de mejorar la competitividad y eficiencia de las pequeñas y medianas empresas mediante la "democratización" del uso del software de gestión de clientes.

Tradicionalmente, cuando adquieres un software, también tienes que adquirir hardware y después instalar el primero en el segundo, pues bien, esa regla también hay que cambiarla. Las empresas deben pagar por el uso que hacen de la aplicación y no por propiedad del mismo, el hardware es un añadido que el "anfitrión" gestionará de forma transparente para el usuario o cliente. El único compromiso para el cliente es tener un navegador de internet actualizado para ejecutar java, javascript y unas pocas cosas básicas más, el resto de la complejidad, la gestiona el anfitrión.

El hecho de la instalación del software, hace que se tenga que dimensionar el hardware y configurar los componentes del software base, como el sistema operativo, la base de datos, etc. Esta configuración es compleja y sólo es operativa para un número de usuarios concurrentes concreto, si tenemos más usuarios de la aplicación, debemos cambiarla y eso hace que se tenga que contar con plantilla estable de técnicos o que se tengan que contratar para cada re-configuración. Como no puede ser de otra manera, esta regla también hay que cambiarla y optar por un modelo de distribución bajo demanda, por su nombre en inglés, Software as a Service y sus siglas SaaS. En este modelo, el cliente puede ir solicitando ampliaciones de espacio de almacenamiento, de usuarios concurrentes, conforme lo vaya necesitando, simplemente respetando unos plazos de comunicación previamente acordados con el anfitrión.