Cerramos otra etapa

Hace un año y medio, cuando decidí dejar Movistar, para ir a Cyclelogic como Jefe de Desarrollo, realmente no pensé que iba a ser por un tiempo tan corto.

Es verdad, dije en su momento que un año seguro, y que luego vería, pero realmente no pensé que serían menos de dos, o tres años.

Pero el agua corre, las supernovas estallan y las hormigas construyen hormigueros (?!), y surgió otra oportunidad en otra empresa.

Esta oportunidad venía a caballo de dos factores que a priori son díficiles de ignorar. Uno es la empresa en sí: Ericsson. Siempre me intrigó saber como sería trabajar en una empresa grande proveniente de una cultura ordenada como la sueca. Es más, tengo como firme propuesta a mi mismo el intentar seguir todas las reglas internas (al menos unos meses, ;), me jodan o no, sin prejuicios, y aprender de su forma de organización, para luego poder aplicar este conocimiento en otros órdenes de la vida.

El otro factor es el trabajo a realizar. En la última etapa en Movistar, el trabajo que hacía se puede resumir en tres grandes aspectos: armar una solución para poder ofrecer un determinado servicio, integrando lo que ofrece el proveedor con lo que ya teníamos en Movistar (red celular, sistema de billing, etc.); ser project manager de toda la instalación de todos los sistemas, coordinando otros sectores de la empresa, servicios de terceros y del proveedor; y por último el seguimiento, ajuste y control del servicio ya instalado, algo de capacitación interna, todo lo necesario para que toda la estructura interna de Movistar soporte el nuevo servicio. Mi trabajo en Ericsson sería hacer la más divertida de esas tres tareas, la más desafiante intelectualmente, y de la que más se aprende, que es la de armar la solución para poder ofrecer el servicio, pero ahora desde el lado del proveedor. Realmente interesante.

Con respecto a Cyclelogic, fue una muy buena etapa. Me alegro mucho de haber recorrido ese camino, tanto por lo que aprendí, como por la gente que conocí. Fueron solamente 17 meses, menos de un año y medio, pero muy intensivos. Trabajamos mucho, pero los resultados se vieron y nosotros mismos los disfrutamos este último cuatrimestre.

Dirigir de manera directa gente que está en otros países y con otras culturas fue toda una experiencia. Conscientemente apliqué siempre una política de transferencia de responsabilidades, a través de la cual permitía que cada uno de los chicos pudiera crecer todo lo que él quisiera, y debo decir que tuvo muy buenos resultados. En algunos casos no estuvieron a la altura de las circunstancias (cualquier mecanismo que te permite crecer todo lo que quieras es complicado cuando no querés crecer), pero en otros presencié toda una transformación (favorable) en estos meses.

Este año y medio fue divertido, y volvería a hacerlo. Eso creo que lo resume todo, :)

Comentarios Imprimir

Actualización del séptimo arte

Películas nuevas y vistas desde la última vez que comenté...

Para ver:

Vistas:

  • Eros: -1. Lenta, aburrida, cero erotismo.

  • Ghost Dog: The way of the Samurai: +1. Super interesante, a veces lenta pero con mucho significado, y una buena historia.

  • Madagascar: +1. Muy divertida, muy bien caracterizados los personajes (vale aclarar que la vi subtitulada).

  • The lake house: +1. Una linda historia pseudoromántica; aunque parece que la temática es supertrillada, finalmente sorprende y mantiene en vilo.

  • Pirates of the caribbean 3: At world's end: +1. Los personajes variados pero no superficiales, la historia divertida pero intrigante, los escenarios fantásticos; pasatista, pero más que recomendable.

  • Playing by heart: +1. La cantidad de actores reconocidos (y buenos) de esta peli llama la atención. Son historias sueltas, que terminan convergiendo de manera inesperada; todas las historias son interesantes.

  • The ring two: -0. Tiene sus momentos interesantes, y en algunos casos asusta, pero es más de lo mismo.

  • Ying xiong: +1. Lenta, rara, pero muy cargada de significado; si les gusta el ballet y las coreografías NO se la pierdan; si les gusta la cultura oriental, tampoco.

¡Qué bárbaro! Releyendo las calificaciones, encuentro que muchas fueron positivas, ¡tuve suerte! :)

Se me ocurrió fijarme no sólo cuantas películas tenía pendientes, sino la distribución en función de cuándo las anoté para verlas. Me quedó un ejemplo tan útil de lo sencillo que es Python para tirar esas 10 lineas que le permiten a uno encontrar lo que está buscando sin tener que complicarse la vida. ¡Ni siquiera tuve que hacer un programa! Directamente use el intérprete interactivo, abrí el archivo mío de películas, con una expresión regular saqué ese cuando de cada linea que correspondía, y los conté usando un diccionario:

>>> import re
>>> coinc = re.compile(".*<i>((.*))</i>.*")
>>> resum = {}
>>> for linea in open("peliculas.html"):
...     m = coinc.match(linea)
...     if m:
...         cuando = m.groups()[0]
...         resum[cuando] = resum.get(cuando, 0) + 1
...
>>> sum(resum.values())
70
>>> print "n".join("%-13s %2d" % x for x in resum.items())
anterior      38
15-Jun-2007    5
26-Mar-2007    9
02-Dic-2006   13
26-Jan-2007    5
>>>

Al final sumé los valores del diccionario: me quedan 70 pelis pendientes, y luego mostré el contenido del diccionario: 38 son de "anterior" (antes de que empiece a ponerles justamente cuando, :p).

Comentarios Imprimir

Día Python, Santa Fe 2007

Viaje de ida

El viernes me rajé temprano de la oficina, me econtré con Leito en el estacionamiento, y fuimos a buscar a Moni al jardín. Tuve que pasar por casa porque me había olvidado los regalos, pero terminamos agarrando la Panamericana antes del quilombo (estuvo lenta en una parte por un choque, pero luego muy bien).

En la ruta nos encontramos con Dave, Alecu y Matías, en una estación de servicio, y fuimos casi juntos hasta Sta Fe. Llegamos relativamente temprano, lo pasamos a buscar a Nico, y fuimos para el hotel donde estaba el resto de la gente. Y todos en masa a comer: mucha charla, mucha cerveza, y una milanesas buenísimas. Luego al sobre, que el sábado era largo.

El sábado

Nos levantamos temprano, no tanto como hubiéramos debido, y luego de desayunar en el hotel nos fuimos a la UTN. Allí nos encontramos con los organizadores: César (EDITADO: la url no existe más), Juanjo y Diego (EDITADO: la url no existe más).

Llegamos un rato antes del comienzo de la charla, pero se me complicó al configurar la laptop con el proyector: no lo podía sacar de 640x480 de resolución. Finalmente reinicié la laptop, como que reconoció una mayor resolución, en lo proyectado se vió todo bien, pero yo no tenía imagen en mi pantalla.

Con esa pequeña molestia y todo, la charla salió muy bien, pude terminar con casi todo el contenido, y recibí feedback interesante para seguir puliéndola.

Introducción a Python

Una vez terminada mi charla, ya quedé como "espectador solamente", y me deleité con las charlas de "Turbogears" (Matías Gieco), y de "PyWeek: un juego en 7 días" (Alecu y Daniel Moisset).

Luego almorzamos, todos los disertantes en una mesa grandota, donde nos atendieron muy bien. El almuerzo estuvo bueno, pero no es estratégico: ¡¡¡nos agarró una modorra espantosa!!!

Gran almuerzo gran

A la tarde habían dos tracks de charlas, con lo que había que elegir cuales ver. Yo me decidí por "Desarrollando aplicaciones web con Zope 3" (Pablo Ambrosio), en la que aprendí bastante; "Creando juegos 3D de la mano de Python" (Silvestre Huens), muy bien llevada, especialmente por las demostraciones; "Usando Python para testeos de seguridad mediante simulación automática de ataques" (Dave y Matías Eissler), donde vi que hay mucho para investigar en programación automática de tareas; y finalmente "Programando para la OLPC" (Dave y Alecu), que fue super interesante.

Alecu y Dave

En la última charla se me complicó cual elegir, porque se pisaba con "Concurrencia en Python" (Lucio). Pero ya había dicho que iba a filmar la charla de OLPC, así que no tuve opción. Espero poder ver la charla de Lucio en otro lugar...

Luego de todas las charlas, se sortearon algunos de los regalos que Lucio y Alecu habían traido de la última PyCon, haciendo el sorteo con cuatro lineas de código hechas por Alecu en el momento, mostrándolas en el proyector y explicándole al público qué iba haciendo... ¡muy bien! Hasta tuvo una secretaria de lujo:

La secretaria :)

Los nombres se sacaron de una lista suministrada por los organizadores, pero había gente que ya no estaba. Los elegidos pasaban al frente y elegían algunos de los regalos (remeras, bolsitos, etc.).

Regalando cositas

Se produjeron los cierres de rigor, algunas palabras de los organizadores, etc, y nos fuimos para el bar de la terminal de colectivos de Santa Fe, donde tuvimos muchas mesas a nuestra disposición, WiFi, y hasta la onda de desenchufar un toque la tele para poder enchufar nuestras zapatillas.

La idea era hacer un sprint, y nos pusimos a trabajar en Typus Pocus, arreglando detalles, limpiando código, y tocando cosas para que pueda correr en la OLPC.

Laburanding

Nos quedamos hastas altas horas de la madrugada (bueno, las dos de la mañana, pero había sido un sábado super intenso). Se avanzó bastante, y quedamos muy contentos con la experiencia.

Cerrando el finde

El domingo nos levantamos con Moni algo tarde, y ya estaban los chicos desayunando (no todos, tuvimos que esperar a otros, pero lo aprovechamos para jugar al Crystal Towers, :).

Despues de desayunar, preparamos los autos para partir y nos fuimos a comprar alfajores y dulce de leche. Recién despues de eso arrancamos. Lo pasé a buscar a Nico y fuimos todos a lo de Chiquito, un restaurant especialista en pescados, a la vera del río, que estuvo muy muy bien.

Empanada de pescado (no sé de qué), milanesas de surubí, milanesas de otro pescado más, albóndigas de surubí, boga la parrilla (para caranchear), mimoso (servido de la misma manera), una cazuelita de tampoco me acuerdo qué, etc. Comimos como cerdos, porque estaba todo riquísimo.

Como corresponde despues de tanta comida, más a la tarde fuimos caminando a tomar un helado, y a la vuelta, con Moni, Alecu, César y otro chico que no me acuerdo el nombre, nos tiramos por un tobogán de esos gigantes y ondulados.

En la heladería

Esa fue como la última actividad, y luego de los saludos de rigor y de dejar a Nico en la casa, partimos para Buenos Aires.

Conclusiones

Un fin de semana muy bueno, para repetir y recomendar.

A nivel de software, estas jornadas ayudan muchísimo a la difusión del mismo, capacitación de la gente, e integración de conceptos. Pero también es muy importante en su aspecto social. Reunir movimientos separados geográficamente es una tarea que hay que realizar. Como siempre, fuimos muy bien atendidos por toda la gente de Santa Fe. Pueden ver acá todas las fotos del finde.

Muchas gracias a los organizadores, fue un honor participar de las jornadas.

Comentarios Imprimir

Un Python por chico

Hace casi dos años atrás, yo escribía sobre un proyecto del MIT, One Laptop Per Child. Hoy por hoy, ese proyecto es mucho más conocido, así que no voy a repetir características.

Ha pasado mucha agua bajo el puente, y aunque todavía no está en producción masiva, ya existen muchas de estas máquinas distribuidas alrededor del mundo, para que los desarrolladores experimenten, creen contenidos, programas, etc.

Esto es principalmente porque aunque el sistema operativo es más o menos estándar (un Fedora adaptado), tiene una nueva interfaz gráfica: Sugar. La misma tiene algunos conceptos totalmente revolucionarios, y otros que aunque probados, no son "normales". Un ejemplo del segundo, es que es un sistema de ventanas, pero las ventanas no son solapables.

Esta nueva interfaz abandona un poco el tradicional concepto de escritorio que usan la mayoría de interfaces y se centra más en el usuario, el cual dispondrá de cuatro tipos de vista distintos: Inicio, Amigos, Vecinos y Actividades. En Amigos se podrá charlar con los amigos del usuario, en Vecinos se podrán crear comunidades y realizar actividades en grupo (imaginemos un trabajo en grupo en la escuela) y en Actividades será donde se realicen estas propiamente dichas.

Sugar misma está integralmente hecha en Python, así como también gran parte los programas, lo que permite que siempre esté accesible el código fuente del programa que estás usando, pensado esto principalmente como herramienta pedagógica.

Entonces, se pueden imaginar que esta laptop tiene una importancia estratégica para Python en general, y para PyAr en particular. Por este motivo, nos acercamos a la gente de educ.ar, y hoy tuvimos una reunión con Laura Marés Serra quien en dicho acto nos prestó (por tiempo indeterminado) dos de estas preciosuras, :D.

Alecu y Dave van a dar una charla de la OLPC este finde en Python Santa Fe (EDITADO: la url no existe más), y ya tenemos pensado meternos a participar en el desarrollo de estas máquinas. Por lo pronto, vamos a migrar Typus Pocus, :)

Con respecto al Python Day en Santa Fe, ya salimos en los diarios y todo (en La Nación, pero no pongo el link porque los turros, después de un tiempo, te imponen que seas de su club para mostrarte el artículo, y en El Litoral).

Comentarios Imprimir

Agregando valor

Leyendo un magnífico cuestionario, que se aplicó a muchos lenguajes, pero acá (EDITADO: la url no existe más) está contestado (y muy bien) con respecto a Python, me crucé con esta pregunta, y una respuesta que sintetiza tan bien el poder y la simplicidad de Python, que quise reproducirla aquí (la pongo directamente en castellano, si la quieren en el inglés original, la tienen en el cuestionario).

F77: ¿Cuál es el valor del lenguaje para los desarrolladores?

Aprendelo una vez, usalo en todos lados: aplicaciones web, aplicaciones con interfaz gráfica, scripts de línea de órdenes, integración de sistemas, usar bibliotecas de otros lenguajes, multi-plataforma, escala de tareas rápidas a sistemas grandes y complejos.

Encaja en tu cerebro: permite al desarrollador pensar en el espacio del problema en lugar del espacio de la solución, dejándolo concentrarse en la aplicación en lugar de administrar memoria y detalles. Python le permite a los desarrolladores trabajar más eficientemente que en otros lenguajes, por medio de su práctica sintáxis que enfatiza la elegancia y la claridad a través de lo minimalista, y es una gran herramienta pedagógica en si misma.

Pilas incluidas: viene con un extenso conjunto de módulos estándares maduros, y hay disponible en Internet una rica selección de módulos de terceros, ambos multi-plataforma o nativos. Jython e IronPython también permiten al desarrollador aprovechar los módulos existentes en los entornos Java y .NET.

Conciso y legible: mantenible, fácil de colaborar con otros desarrolladores; todo hace algo, no hay cosas superfluas.

Accesible: a desarrolladores dentro de un equipo con distintos niveles de habilidad, de principiantes que se vuelven rápidamente productivos a desarrolladores experimentados que necesitan conceptos avanzados. Un desarrollador no tiene que conocer todo el lenguaje para construir cosas poderosas; facilitado todo por las pruebas interactivas, exploración de ideas, y un gran uso de la introspección.

Este fin de semana es el segundo Python Day de Santa Fe (EDITADO: la url no existe más), ¡vamos todavía! (acá y acá tienen info sobre la primera). Python Argentina y la Python Software Foundation patrocinan, entre otras empresas y organizaciones, esta jornada (gracias a la Fundación Vía Libre por hacernos de "fundación paraguas" para poder recibir fondos de afuera).

Comentarios Imprimir