13 June
2009

Cosas de niños

A veces, cuando trato con niños, pienso que ellos son como yo pero en un estadio menos desarrollado

Pero humanos completos

Algunas veces, reflexiono y me doy cuenta de que una parte de mi se resiste a dejar de ser un crio

En parte por miedo, en parte por rebeldia contra los mayores (esos que matan otros humanos por dinero), en parte por no querer asumir la responsabilidad de estar acercandome al humano desarrollado

Cuando los observo, me doy cuenta que no ven el mundo distinto a nosotros, es que no tiene las multitud de palabras que desarrollamos para explicar lo que nos pasa tanto si nos frustra como si nos emociona

Veo a este niño y pienso en la primera vez que tuve la consciencia alterada



Pero cuando veo a esta niña, enseguida me doy cuenta de que hay que hacer con un humano aun por desarrollar

Hay que enseñarles de que son capaces (de todo, como no) o, mejor, de lo que es capaz el humano dedicandole las horas necesarias



Querria creer que al niño del dentista le van a enseñar la parte buena de alterar su consciencia conscientemente (el cambio de punto de vista que se produce al alterar la consciencia es medicina para el alma) y que no caera en el abuso de las drogas

Estoy seguro de que la niña esta recibiendo puntos de apoyo para descubrir que sus limites se los pondra ella y nadie mas y que, si quiere, podra ser lo que le de la gana (incluida la proxima Bjork, por que no?)

Que importante es lo que hacen estos dos adultos: les enseñan a los niños, les acompañan para que puedan comprender sin asustarse


Posted by Garito at 19:46
12 June
2009

Como el ajo

Estoy viendo la presentacion que hizo el otro dia Apple con motivo de la conferencia de desarrolladores

La verdad es que me estoy quedando dormido, que aburrimiento!!!

Como el ajo, esta vez los de Cupertino se estan repitiendo y, a 1 hora y 40 minutos de video no he visto aun nada que me llame la atencion

Mas de lo mismo

Yo no se si es por que no esta Jobs o que pero esta presentacion se la podrian haber ahorrado y haber hecho como tantas otras veces: una actualizacion discreta en la store y listos

** 20 minutos mas tarde, cuando ya ha acabado la presentacion **

Lo dicho: no me he dormido de casualidad


Posted by Garito at 17:17
11 June
2009

Wave protocol

Pedo mental (o no) previo: Soy yo o esto de las notificacions para el iPhone huele a que sea un servidor Wave

Cuando vi la demo de wave no me senti demasiado impresionado con la funcionalidad en si

Desde que estoy trabajando con el IDE de Yanged, tengo como una caracteristica imprescindible a medio plazo el poder trabajar colaborativamente con el

Ya no solo online de forma global, me refiero, incluso, a estar en una reunion para Yangear un producto con un proyector conectado al ordenador del coordinador (aqui no hay jefes, amigos...) pero con el resto del equipo tambien con sus maquinas

Dado que es imposible acometer un proyecto sin separar sus partes, estamos formando equipos

Dado que nos estamos especializando cada vez mas (con sus pros y sus contras), esos equipos son multidisciplinares

De este modo, con Yanged tendriamos dos formas de trabajar:

  1. En modo contextual, en el que el equipo discutira el proyecto en modo global para poder planear caracteristicas, proponer ideas que afecten a mas miembros o no del equipo, etc. Todo aquello que necesite ser discutido de forma multidisciplinar se hara en este modo
  2. En modo detalle, mucho mas especializado en el que cada uno pasa a desarrollar una de las partes para completar las tareas que se tiene asignadas
Vendria a ser como modo analisis y modo desarrollo pero como estamos hablando de un sistema kaizen todo es uno y todo se diluye

Si me miro a mi ahora, cuando trabajo en equipo, estamos todos juntos sin separaciones fisicas, asi que muchas veces tiramos de pizarra para contar cosas al equipo o que son de interes general (dentro del contexto o no). Lo que hecho de menos es poder ir al proyector que esta en otro espacio

Pasar de un modo a otro es estar trabajando en tu maquina o estar discutiendo algo en grupo y en voz alta. Asi de simple pero añadiendo el proyector al espacio del equipo o a una pizarra online cuando se trabaja desperdigado

En cualquier caso, todo el equipo trabajara en el mismo arbol pero dispersos en sus ramas asignadas

Para mi es automatico el imaginar como, mientras trabajo, se me actualiza en tiempo real lo que mi equipo hace

Me ayuda a no repetir, a no equivocarme y lleva al equipo la tecnica de programacion extrema

Los detractores de este tipo de trabajo diran que el bombardeo constante de informacion sera contraproducente para la concentracion pero a mi me viene a la cabeza un parquet bursario para darme cuenta de que, con la costumbre, la desventaja desaparecera y sacaremos muchisimo partido a trabajar asi

Por tanto, con esta concepcion del trabajo en equipo, despues de tener resuelto el trabajo individual me toca tener que ir, como es logico, a por la parte de trabajo colaborativo

Tabajar en local y utilizar un servidor de versiones como GIT no me convence, es muy anti extrem y me gusta mucho estos conceptos de programacion porque cuando he trabajado asi he disfrutado mas y he sido mas productivo

El arbol ya ayuda a localizar el trabajo de un programador. Con no darle acceso de escritura a otra parte del arbol se acabaron las cagadas de este tipo

Si todos trabajamos en un mismo servidor, lo unico que queda por resolver es mantener todos los IDEs de los programadores sincronizados

Es como cuando veo jugar a Baque al World of Warcraft. El juego es el servidor donde todos actualizan a la vez mientras ellos se comunican con un skype en modo multiconferencia

Desde entonces, uno de los riesgos que veo en este tipo de funcionamiento tiene que ver con la notificacion de esos cambios en el navegador

Tener un monton de clientes AJAX pidiendo informacion no es algo que sea barato

Mi primer impulso seria publicar los cambios en un RSS (o mejor aun un canal JSON) y que el cliente actualice cada tanto pero eso no es muy tiempo real que digamos

Es el mismo problema que ha motivado a Apple a montar el sistema de notificaciones para el iPhone en vez de permitir operaciones en background a discreccion

Otra forma es mediante un servidor COMET pero si no lo traen los servidores por algo sera aunque no descarto del todo la posibilidad. Publicador/Subscriptor y listos

Por tanto, lo que me parecio excepcional el otro dia de Wave fue ver que habian desarrollado un protocolo para el intercambio de la informacion

Si Google se lo monta tan bien como nos tiene acostumbrados (y tecnicamente es tan asi que hoy tenemos ese AJAX) veo sentido integrar Yanged a Waves

Actualizacion: Cuando planeabamos lo que hoy es Yanged, Jordi y yo hablabamos de usar un servidor XMPP, el que se utiliza para el jabber (la alternativa open source al messenger) o para Google Talks y el protocolo de Wave es una extension de este protocolo asi que podria ser la solucion mas adecuada (o podria ser excesiva para el caso, habra que ver como evoluciona)


Posted by Garito at 20:32

El futuro pasa por los mapas mentales

Cuando empece la busqueda de Yanged no sabia lo que me iva a encontrar

Venia de programar Usul, un MVC escrito en ASP 3 años antes de que apareciera Ruby on Rails

La idea era convertir Usul a .NET y hacerlo mas "vendible" pero cuando tenia el 50% del proyecto me tope con Zope (gracies, Jordi!)

Con Zope, toda la dimension de mi vision se iva al garete con la entrada de un sistema arborescente

Apartir de hay, junto con Jordi, pasamos a imaginar como seria el framework perfecto

Pase por varios estadios hasta que descubri los mapas mentales

Llevo entre 4 y 5 años estudiando los arboles o, mas concretamente, los mapas mentales

A dia de hoy, todos los habituales de Mis cosas lo sabeis, no veo una mejor metafora para organizar informacion, es perfecto (o casi)

Pero una de las mas grandes frustraciones que me encuentro por aqui (si me sale una oportunidad clara para largarme, viva dios que me largo) es que cuando explico Yanged a los demas todos ponen pegas

Que pongan pegas a Yanged me parece normal: es mas facil criticar algo que intentar entenderlo

Pero cuando me ponen pegas a los mapas mentales sin aportar una alternativa clara me enervo todo lo que a estas alturas soy capaz de enervarme (que comparado con mi capacidad pasada es practicamente despreciable)

Quiza ahora que Forbes dice que los mapas mentales son imprescindibles para la organizacion de la informacion tenga mas apoyos y menos criticos

Lo que daria yo por estar en un entorno de investigacion adecuado para maximizar mi capacidad de imaginar las cosas con este tipo de tecnologias y, porque no, encontrar otras mejores (y es que yo defiendo el mapa mental porque es lo mejor que conozco, no porque crea que es perfecto)

Lo mejor para mi de este articulo? La cantidad de referencias que estoy encontrado de gente que defiende el mapa mental como una genial herramienta y tambien he podido leer sobre el primer humano que hablo del concepto mapa mental: Tony Buzman (gracias, maestro)


Posted by Garito at 17:30
08 June
2009

Mi vision del futuro en interaccion

Los chicos del instituto Fraunhofer estan que hechan humo

Si hace nada os comentaba las pantallas OLED capaces (en el futuro) de hacer eye tracking, hoy leo en Neoteo que estan trabajando en unas gafas que incorporan una pantalla OLED (que casualidad, verdad?)

Y esto supone un paso mas para el life assistant

Para mi el dispositivo perfecto serian unas gafas con pantalla OLED incorporada, con eye tracking y con giroscopios

La idea seria que las gafas funcionan normalmente (corrigiendo o no cualquier posible defecto de vision del que las porta) cuando el ojo esta enfocado a media o larga distancia

Si se pudiese controlar el enfoque del ojo esto seria factible

En cuanto cambiasemos ese enfoque a corta distancia se activaria la pantalla OLED que nos proyectaria al informacion del ordenador

Con unos giroscopios, se podria hacer que al girar la cabeza, la pantalla actuase como una pantalla semiesferica de 360 grados

Si se pudiese controlar el enfoque con gran precision, el cambio en esta variable permitiria implementar un Eagle Mode de forma sencilla

Con lo que ya no habria que preocuparse mas de ningun sistema para hacer click o similar, la navegacion 3D supone que ya no necesitamos mas esta accion

El resto, como hacer drag&drop o doble click se harian con el arbol de control del mismo Eagle Mode


Posted by Garito at 15:08

Ningun partido politico ha ganado

Una de las cosas que siempre han causado en mi una tremenda desconfianza en la politica es que cada vez que hay una votacion, pase lo que pase, todos ganan

Los que sacan mas votos ganan, estos esta mas o menos claro
La segunda fuerza gana, aqui ya me da la risa
El resto de fuerzas ganan, aqui veo tanto patetismo que la risa ya no es risa, es carcajada

La verdad es muy diferente, sobretodo en estos comicios

Quien de verdad a ganado es la abstencion, prueba clara de que mas de la mitad de Europa (un 57% aprox) esta en desacuerdo con la politica en general o la que se esta haciendo en particular

La pregunta que me surge a mi seria: que legitimidad tiene el parlamento europeo que no es aceptado por mas de la mitad de la poblacion a quien legislan?

Habria alguna forma legal de no cumplir las leyes que este grupo imponga en base a esta falta de legitimidad?

Yo creo que deberiamos ELIMINAR (hacer desaparecer, meter en la carcel o simplemente dejarlos en Irak, Afganistan o en cualquier territorio en guerra por estos genocidas) a los politicos

Como puede ser que hagan falta casi 750 ladrones para un parlamento en el que no confian ni la mitad de la gente?

Como puede ser que aun haya un 43% de los ciudadanos (mas de 300 millones) que no se den cuenta de que los politicos no legislan para el pueblo sino para ellos y sus empresas?

Como puede ser que estos 300 millones de personas (?) le sigan el juego a unos animales que matan miles de personas CADA DIA para ganar 1% mas que el año pasado?

Para cuando superaremos al homo sapiens asesino?


Posted by Garito at 14:12
06 June
2009

Eye tracking: un paso adelante

Si ahora mismo me pidiesen que pidiese (toma redundancia) que tipo de hardware me gustaria que se dedicasen a desarrollar, seria un sistema para hacer siguimiento del ojo humano mirando una pantalla

Lo que se viene a llamar eye tracking

Porque pediria esta tecnologia y no otra?

Porque en el desarrollo de un posible life assistant, del que tanto se ha hablado por aqui, uno de los riesgos principales es el sistema para interactuar con ese LA

Los interfaces hombre-maquina actuales tienen una fortisima dependencia de las manos como sistema para decirle a la maquina que es lo que queremos

Algo muy poco natural (y si no poned a vuestra madre o abuela delante del raton, trackball o trackpad

Se le hara un mundo

Pero un sistema que solo tienes que mirar y pulsar, eso si que es natural

Pues mira tu por donde, que hoy trasteando por /. (slashdot) me encuentro con que el Fraunhofer Institute for Photonic Microsystems (IPMS) esta investigando unas pantallas OLED que haran justamente eso: eye tracking

Esta en un estadio muy poco avanzado del proyecto (aun no hacen eye tracking por la baja resolucion de la pantalla) pero es un grandisimo avance para este tipo de tecnologia

Seguro que esta todo apunto para cuando empiece a necesitarla


Posted by Garito at 15:38
01 June
2009

Como borrar los ficheros .DS_Store de un directorio y sus descendientes

Para mi Shell fu es alguien que emite via twitter pequeños comandos de consola que muchas veces son utiles

Aunque tambien tienen web

Hoy quiero resaltar un comando que nos permite borrar los ficheros .DS_Store que el Mac se empicina en colocar cuando visitamos un directorio y le hacemos cambios (como reordenar los iconos o borrar algun documento)

find -type f -name .DS_Store -exec rm {} \;
Obviamente, si cambias .DS_Store por cualquier otro fichero tambien funcionara


Posted by Garito at 14:28
25 May
2009

La singularidad Yanged

Dice Ray Kurzweil que se producira la singularidad cuando diseñemos el primer ordenador que sobrepase la capacidad de un cerebro humano

Para mi la singularidad se producira cuando el humano trascienda de si mismo y empecemos a comportarnos, realmente, como uno solo, toda la humanidad unida para formar una super entidad humana

Todo tiene una singularidad o, todo proceso tiene un punto de singularidad si se le dedica el tiempo suficiente

Esta luna nueva nos trae la singularidad de Yanged

La singularidad de una metodologia de programacion/lenguaje se produce cuando ese sistema/lenguaje esta programado basandose en las propias reglas que intenta establecer, es decir, cuando esta programado consigo mismo

Esta luna nueva me ha ayudado a descubrir como llevar a Yanged a esa singularidad prueba de que lo que estas haciendo no solo esta bien, sino que es singular, extraordinario, digno de existir pues deviene entidad por derecho propio

Los pasos a hacer estos dias tienen que ver con hackear python, como son los hackeos, hechos para romper las reglas cuando estas se quedan cortas y hay que trascenderlas

De lo que se trata es de hacer que python sea capaz de dar por miembros propios del objeto una serie de carpetas+ficheros

Lo que quiero es poder anclar un arbol al sistema de clases del python

Se que normalmente este tipo de informacion es generada por el compilador y almacenada en unos diccionarios que permiten, entre otras, la introspeccion

Con eso tendria una sola clase en el servidor que cargaria una funcionalidad u otra dependiendo de los datos a tratar usando un arbol Yanged

Programar el sistema con las mismas reglas que se intenta crear, eso es la singularidad de un lenguaje/metodologia de programacion

Cerramos el circulo, esta vez si, es lo que lo hace singular

Alguien puede comentar donde puedo encontrar un buen manual de introspeccion en python?


Posted by Garito at 03:11