La actitud del desarrollo


Mafalda

Me encontré con este gran artículo: http://www.wired.com/epicenter/2011/08/new-york-times-paywall/ en el que tratan el tema de como han actuado diferentes empresas de noticias tratando de implementar nuevos modelos de negocio.

Sin que el análisis tenga que ver con el enfoque de pago por suscripción, el autor del artículo termina diciendo que una de las empresas tomó la decisión de tratar a sus usuarios como personas con sentido común y como personas maduras en un mundo civilizado y eso geeneró frutos, mientras que las otras empresas que trataron a sus usuarios con falta de confianza, como si fueran a abusar de sus servicios no lo lograron.

Creo que poco a poco hemos llegado a un mundo en el que el diálogo y el respeto por el prójimo pueden más que la negligencia y la apatía – y como muchas otras veces, agradezco a un Internet libre y anárquico de tal logro – con lo cual se pueden crear (y recrear) proyectos pensando en las personas que los van a usar/requerir de otro modo.

Se ha recreado la manera de interactuar con los clientes

La forma no es nueva (tratar a las personas como personas no como ladrones) pero la libertad de actuar como personas “civilizadas” en Internet ha opacado los abusos típicos que se pueden dar (ojo no estoy diciendo que ya llegamos al paraiso – pero si quiero decir que el hecho es que ya hay destellos de verdadera fraternidad).

Saludos,
Gorka


Del deber al hacer...


The major problem – one of the major problems, for there are several – one of the many major problems with governing people is that of whom you get to do it; or rather of who manages to get people to let them do it to them. To summarize: it is a well known fact, that those people who most want to rule people are, ipso facto, those least suited to do it. To summarize the summary: anyone who is capable of getting themselves made President should on no account be allowed to do the job. To summarize the summary of the summary: people are a problem.”

The Restaurant at the End of the Universe

Saludos,
Gorka


iPad router


iPad

Lo primero que tengo que decir es que aún no pruebo esto personalmente pero que en cuanto consiga mi plan de datos (vía 3G) lo llevaré a cabo y ahí les diré si era tan fácil como aqui lo voy a poner.

La idea general es así: con el iPad 3G (o con un iPhone y eventualmente si sacan un iPod Touch con 3G) se puede usar la señal de internet de la red de celular y compartirla con computadoras y otros gadgets (iPod Touch, etc.) así ya no se puede tener una red wifi que va contigo a todos lados (donde vaya el iPad o iPhone por supuesto).

Aunque los pasos suenan difíciles la verdad es que no lo son, primero los listaré y luego los explicaré:

  1. Se necesita instalar una aplicación del tipo iProxy (no la iProxy que está en la appStore porque esa no es..) en el iPad. Este paso es el más difícil.
  2. Crear una red con Ad Hoc con una computadora y conectar el iPad a la misma. Luego, desconectar todos los aparatos excepto el iPad.
  3. Configurar el iPad para que sirva como router
  4. Iniciar la app iProxy y configurarla
  5. Conectar cualquier otro gadget a la red wifi y configurar su IP
  6. Configurar un proxy para el gadget que se conecta (es solo una dirección en una forma no hay que aprender de esto)
  7. Navegar

Ahora para la parte más detallada:

  1. Instalar iProxy, lo que pasa es que se necesita una versión personalizada de iProxy para hacer esto ya que Apple no permite esta app así libre en la appStore, entonces hay que conseguir el codigo fuente, compilarlo e instalarlo. Esto se puede hacer directamente si se tiene cuenta de desarrollador de apps o con algún amigo que lo sea.
  2. Esta parte es casi trivial y preferiría que busquen como hacerlo en Google (si no lo encuentran díganlo y lo pongo aqui)
  3. Esto se logra configurando una IP fija de 10.0.0.1 y una mascara de red de 255.255.255.0 en el iPad
  4. Debe de tener la IP fija que pusimos en el punto anterior y el puerto 8888 (tráfico de Internet)
  5. Se puede seleccionar cualquier IP pero para rápido ejemplo ponerle 10.0.0.8 y submáscara de red de 255.255.255.0
  6. Ya sea en el navegador o en el mismo firewall de windows o vía un http proxy se configura la dirección del mismo a: http://10.0.0.1:8080/socks.pac
  7. Abrir alguna dirección web y comprobar que todo funcione.

Estuve leyendo que hay programas que se conectan a Internet sin usar tal configuración de proxy (Skype, etc.) entonces para eso se puede usar un programa de http proxy como Polipo para que todo el tráfico de Internet se canalice por ahí.

Así que bueno, se ve fácil, ya les diré como me va.

Saludos,
Gorka

Aqui les dejo links de referencia:


Creo en un mundo responsable


Una idea corta:

Cada vez que veo cosas que pasan que harían que me quejara me doy cuenta que a veces por falta de noción o “simple vista corta” podemos caer en acciones cuyo efecto puede ser tan culposo/causal como acciones tomadas a conciencia por aquellos que implican que “su manera de pensar es la única que se debe llevar a cabo”.

A veces he sido llamado ciertas cosas por ciertos comentarios, pero es porque mi manera de entender al mundo me ha hecho darme cuenta que aquellas personas que prefieren no “darse cuenta” son tan culpables como aquellos que toman acciones deliberadas de abuso de poder.

Es a mi parecer que podemos crear un mundo conectado, abierto y con sistemas abiertos y sencillos de comunicación en el cual se critique a aquellos que abusan de ideales humanos para “no mover un dedo” y conseguir lo que quieren de la misma manera que aquellos que consideran al ser humano como un “número más en una estadística” y por lo tanto, lo digo y lo repetiré:

“Mientras sea capaz de usar este regalo que recibí (que llamaré razón) trataré de llevar a cabo acciones que promuevan el aprendizaje y uso del mismo para mejora de la condición de vida de todo aquello que se concibe con él.”

Saludos,
Gorka


Desarrollo apps iOS con flash


Cloud Computing

Así que siguiendo con la línea de análisis y pruebas para desarrollo de apps para iPhone, iPod Touch y iPad me puse a hacer unas pruebas de código de un proceso que me tenía “preocupado” (preocupado porque si no lo podía hacer con el paquete de flash implicaría que hasta para aplicaciones “sencillas” sería completamente necesaria una Mac – pero no).

Una parte que me parece muy interesante/importante de los nuevos desarrollos (incluyendo pero no sólo limitado a apps) es que tengan la posibilidad de descargar contenido actualizable vía otros medios (es decir descargan noticias, novedades, resumenes, marcadores, etc. de servicios web) y para esto es necesario poder hacer una llamada estilo REST desde la aplicación.

Mi duda era si el paquete de iPhone developer de flash cs5 tendría acceso a este tipo de peticiones (REST – que implican desde GET, POST, XML, SOAP, JSON, etc. a un web service o simplemente un script de respuesta) y la verdad es que sí se puede y es MUY sencillo, tan sencillo que aquí pongo el código de una llamada estilo “hello world”:

var variables:URLVariables = new URLVariables("var_envio=valor_envio");
var request:URLRequest = new URLRequest();
request.url = "http://www.[mi_dominio].com/";
request.method = URLRequestMethod.POST;
request.data = variables;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, completeHandler);
try{
  loader.load(request);
} catch(error:Error){
  trace("Unable to load URL");
}
function completeHandler(event:Event):void {
  trace(event.target.data.var1);
}

Así de sencillo y lo bueno es que se pueden envíar variables para toma de decisiones de operación/negocio. Cabe decir que la manera de recibir variables es en formato de variables HTML (par variable=valor). Listo, con este tipo de llamadas posibles se puede crear una app que se actualiza vía un servicio y que muestra nuevos contenidos cada que la persona la abre y también se puede guardar información del usuario en un servidor (datos de registro, de estado, de uso, etc.) y así hasta conectar con otros servicios que tengan que ver con la app (imaginen un juego que necesita que uses al mismo tiempo app y computadora por ejemplo, en fin…).

Saludos, Gorka

P.D. – lo siguiente que voy a averiguar es si se puede abrir un socket a un servidor y así tener una línea abierta para apps estilo juegos de cartas / chats – todo esto obviamente desde flash cs5 y su sdk para iphone.


Linux en JavaScript


Zsh

Esto es muy divertido (y se une a algo que he estado pensando los últimos meses – pero aún no voy a mencionar, pero para que sepan que hay un pastelote en el horno..): un desarrollador encontró que hoy en día javascript (el no tan “poderoso” lenguaje que corre sobre el browser) es capaz de compilar y ejecutar Linux (un sistema operativo!).

http://www.readwriteweb.com/hack/2011/05/run-linux-on-javascript.php

La idea que javascript es un lenguaje limitado tiene que quedar atrás – y esto lleva implicaciones gigantescas en el área de seguridad informática – ya que claramente es capaz de muchas cosas, y aunque el ejemplo sea simplemente ejecutar un kernel de control sin GUI (no se puede ver, sino sólo tiene intérprete de comandos) debe ser suficiente para que los más “téchies” que critican el lenguaje se den cuenta de su “potencial”.

Cada vez más y más el navegador tiene más poder y control sobre nuestro uso de Internet y por lo mismo el lenguaje que se ejecuta en la computadora personal para “ayudar” o “mejorar” tal experiencia cada vez tiene más acceso al sistema en sí. El problema viene cuando una página web (la que sea) tiene control TOTAL sobre el javascript que se va a ejecutar:

Basicamente el que programa la web tiene control total sobre el javascript del usuario (y lo mismo va para todas aquellas vulnerabilidades que rimen con XSS).

Es decir, que cada vez es más y más peligroso simplemente hacer click (bueno, si consideran el ataque estilo “clickjacking” – como el que se ha visto en facebook últimamente – entonces ya ni siquiera eso..) y cada vez será peor.

¿Qué se puede hacer al respecto? No mucho realmente porque si sólo se considera la seguridad entonces hay que obviar la experiencia que puede brindar javascript (para los que no lo saben pueden usar NoScript de Firefox para eliminar javascript) pero eso está super chafa porque gracias a javascript tenemos grandes oportunidades como WebGL (páginas que pronto van a usar modelos y ambientes 3D sin límite), entonces? Pues yo la veo difícil, tal vez se implemente un header de javascript seguro o un “signed javascript” pero eso sigue dando permiso al desarrollador legítimo de usar nuestro browser como shell remoto de javascript… en fin, ya les iré avisando que pasa.

Saludos,
Gorka


La punta del iceberg


Iceberg

Retomando las ideas que usé en http://trotamexico.com/turismo/innovacion-y-creatividad-en-las-redes-sociales-y-turismo.php de una manera más general:

Hemos llegado al punto en el que hay que tomar un segundo para reflexionar y darnos cuenta que ningún proceso de negocio había tenido el poder de comunicación que ofrece Internet (a través de todas sus herramientas y versiones – Web y Mobile) y que gracias a ese nuevo poder se pueden reinventar hasta los procesos más estrictos (hasta los que ya se habían documentado en piedra).

Se ha caído en el vicio de usar Internet sólo como una herramienta de difusión y publicidad sin realmente visualizar el verdadero alcance que puede tener. Parece irónico que muchos se autonombren “innovadores” o “creativos” cuando lo único que proponen es imitar el modelo de la revolución industrial de “masificación impersonal”. Internet puede sin duda lograr masificar el alcance de nuestra comunicación y con métodos virales llegar a todas aquellas personas interesadas en cualquier producto/servicio, pero ¿qué pasa con las personas que ya saben lo que quieren, qué no buscan un medio masivo de oportunidades de consumo sino simplemente buscan satisfacer una necesidad específica?

Gracias a Internet hemos cambiado el paradigma de quién tiene el poder. En un principio los productores (o los que ofrecían servicios) controlaban las agendas de consumo ya que eran tan limitadas las opciones que no había mucho espacio para la decisión personal. En un primer cambio interesante de paradigma los distribuidores (con esquemas potencialmente viciosos) nos hicieron creer que el “main stream” o “moda” debía ser el fin aspiracional de cualquier persona en posición de consumo. No fue hasta que se empezó a entender que lo que uno quiere es lo que se puede tener (obviamente de la mano de una globalización de servicios y productos que abarató y facilitó el alcance a toda la oferta) que el individuo recuperó el poder de decisión de consumo.

Todo empezó con una página muy sencilla donde se podía buscar algo. Los resultados eran terribles, pero las búsquedas tenían un aspecto personal que podía reconocer hasta el menos interesado: ¡cada persona buscaba de manera diferente con todo y que buscaban lo mismo! Lo natural era que los resultados mejoraran al punto en que (y es donde estamos hoy) los buscadores web saben distinguir lo que buscamos entre todas las posibilidades lógicas gracias a que llevan un registro de qué y cómo buscamos – y es tan fácil de entender con sólo buscar lo mismo (mismos términos) en dos computadoras de dos personas diferentes, los resultados van a ser muy diferentes.

De ahí que primero se creyó que había una sola opción y era “aparecer en los primeros resultados siempre”. Ese paradigma hace creer que la persona sigue siendo un abstracto al cual hay que atacar de la misma manera que los distribuidores originales que querían acaparar al consumidor limitando sus opciones de consumo, y sin embargo, poco a poco hemos logrado entender que lo importante no es “crear un círculo de consumidores” sino “encontrar al nicho que ya quiere consumir lo que se ofrece”.

Con todo este análisis lo que queda es explicar que las herramientas de comunicación en Internet (sean web o Mobile) recrean el poder de los productores (y prestadores de servicio) ya que pueden personalizar la experiencia de sus clientes de una manera que antes no se podía imaginar. Hoy en día se puede conocer el nombre y gustos de cada uno de los clientes y sobre esos gustos se puede personalizar el producto o servicio de tal manera que el cliente se sienta tan identificado con la marca que la “disfrute como propia”.

Usando un restaurante como ejemplo: antes el proceso era rígido, se hacía una comida y las personas tenían que aceptar lo que se había cocinado (al precio que se tenía); luego eso cambió (tuvo que cambiar al aumentar la oferta) y el proceso se volvió un poco más flexible, se tenía un menú con una base de opciones y un espacio para opciones “exclusivas” que cambiaban periódicamente (muchas veces simplemente para dar la “ilusión” de exclusividad); hoy en día, gracias a que se puede llevar un registro de consumo personal, el proceso se tuvo que volver completamente flexible y (aunque suene irreal), ¡ya hay lugares que aceptan que la persona modifique las opciones del menú a capricho y hasta solicite elementos no existentes en el menú mismo! Con una distribución en redes sociales de esta información y un programa de incentivos una empresa tuvo una idea genial: cada cliente que ordenara algo que antes no se había solicitado generaría a partir de ese momento un registro que le permitiría tener acceso a beneficios exclusivos (completamente personales e individuales). Esa empresa logró conocer tanto a sus clientes que el cliente mismo ha olvidado su estatus de cliente (muchas veces representado sólo por un número, una llave, una cama o un mal trato constante) y desde ese momento el mismo cliente se convierte en un “portavoz oficial” de la marca en sí – caso Starbucks.

¿Cómo lograron esto? Se dieron cuenta que una estrategia de aumento del alcance de los servicios de la empresa (y de recrear un proceso flexible de producción) enfocada en los gustos personales de sus clientes podía funcionar mucho mejor que simplemente limitar el potencial de Internet y redes sociales a la no tan sutil (y cada vez más agresiva) tarea de publicidad y difusión.

Lo malo es que no existe una sola “bala de plata” que puedan usar todas las empresas para llegar a tal éxito, pero eso mismo es lo que invita a que cada empresa tenga que llevar a cabo un análisis creativo de cómo recrear y “flexibilizar” sus propios procesos para ofrecerlos de manera más personalizada. ¡Y lo genial es que cada vez tenemos más herramientas a la mano para lograr esto y que además ya no es importante lograr captar clientes según sus características demográficas/sociales sino encontrar el nicho de personas que quieren consumir lo que la empresa ofrece!

Saludos,
Gorka


Pagination