PyAr - Python Argentina va tomando forma

PyAr logo

Muchas cosas han pasado desde mi primer post sobre PyAr. Tuvimos dos reuniones mas, creamos el portal oficial del grupo, una lista de correo, y fuimos concretando nuestros principales objetivos. El lugar de la reunión fue mejorando... hasta ahora (y no veo por que no debería seguir así), todo marcha viento en popa.

Ya tenemos ideas para nuestro primer sprint: Vamos a desarrollar una librería (100% Python) para mensajería, que soporte múltiples protocolos (SMS, MMS, e-mail) con una API común, que pueda reutilizarse / invocarse desde distintas aplicaciones. Un ejemplo (de entre muchas, muchas aplicaciones posibles), sería que el módulo de pedidos de un ERP envíe un SMS al celular del vendedor asociado a un cliente cuando éste pone un pedido vía web. Interesante.

Lo que nos está faltando es lograr mayor convocatoria. Vamos a intentar publicitar mejor la próxima reunión, y tratar de ponerle algún condimento. Todo parece indicar que daremos una charla introductoria a las nuevas características de Python 2.4, haciendo énfasis en el módulo "decimal", aprovechando que Facundo es el core developer del módulo ;)

Magia Negra con el Regedit

Algunos amigos que solo tienen experiencia en ambientes Windows, se sorprenden cuando yo estoy trabajando con Linux, abro una ventana de comandos (¡sacrilegio! ¡no uso GUI!), y tiro algún comando como:

$ find . -name "struts*" | grep bin

... el cual podría llegar a parecerle mágico a alguien, pero es perfectamente explicable:

  • find : encontrar
  • . : desde el directorio en el que me encuentro
  • -name "struts*" : aquellos archivos cuyo nombre comienza con 'struts'
  • | : "conectar" la salida del comando anterior (su resultado) como entrada del siguiente
  • grep bin : filtrar el resultado y quedarse solo con las líneas que contienen la cadena 'bin'

Lo anterior puede parcer complejo, pero en cuanto uno utiliza unos cuantos comandos de Unix/Linux, enseguida se encuentra un patrón, la idea siempre es la misma, y se puede comenzar a apreciar el poder que tiene a veces la CLI (command line interpreter) frente a una GUI (graphical user interface)

Anoche un amigo llamó desesperado por teléfono porque había instalado el Service Pack 2 de Windows XP, y al reiniciar la PC, descubrió que no tenía mas unidad de CD-ROM (Windows le decía que el driver se había cargado correctamente, pero que no podría encontrar el hardware). Después de probar las soluciones "típicas" (ejemplo, borrar la unidad con el Panel de Control y reiniciar para que el sistema Plug&Play redetecte el hardware) sin poder solucionar el problema, recurrimos a Google. Enseguida encontramos un link, que proponía lo siguiente:

  • Abrir el Editor del Registro (regedit)
  • Navegar hasta HKEY_LOCAL_MACHINE / System / CurrentControlSet / Control / Class / {4D36E965-E325-11CE-BFC1-08002BE10318}
  • Eliminar las claves "Upperfilters" y "Lowerfilters"
  • Reiniciar la PC

El artículo del foro terminaba diciendo que el truco podría funcionar... o no. Por suerte, para el caso de mi amigo, el truco funcionó, y la unidad de CD-ROM reapareció.

Ahora bien, que alguien por favor me explique, que tiene de "intuitivo" o "amigable" la solución propuesta. ¿Acaso hay que considerarlo amigable porque tengo una GUI (regedit) para navegar hasta esa cadena indescifrable de letras y números, que milagrosamente vaya uno a saber por qué hechizo vodoo controlan la visibilidad del CD-ROM luego de instalar un Servce Pack oficial, en un Windows legítimo, instalado por Compaq en una PC de escritorio legítima? ¿Y eso dónde está documentado?

Lo lamento. Para lidiar con la configuración de hardware, o de algún servicio del SO, prefiero mi Linux: abro una línea de comandos (¡otra vez! ¡sacrilegio!), voy al directorio /etc (o /proc), donde tengo archivos planos, de texto, comentados, con nombres intuitivos, que se vienen usando desde hace años, que puedo editar con cualquier editor de texto.

Ah! Y por supuesto... nada me impide ir hasta ese directorio con Nautilus, o Konqueror, o el navegador de archivos gráfico de mi preferencia, y hacer doble click sobre el archivo que quiera para editarlo con mi editor preferido (¡ups! ¡ni siquiera tuve que abrir la línea de comandos!)

Nota: El título del artículo y la referencia al hechizo vodoo fue inspirado por Facundo

Firefox: 1.000.000 de descargas el día del debut

Uh! Firefox fue descargado al menos 1.000.000 de veces el día del lanzamiento de la versión 1.0. Al momento de escribir esto, ya superan las 2.000.000. A este ritmo, el record de mas de 9.000.000 de downloads de la "Preview Release" va a ser superado ampliamente. Creo que hay mucho, mucho, mucho que aprender de este proyecto, en términos de QA, diseño de interfaces, grado de participación de la comunidad, estrategias de branding, marketing, etc., etc. Probablemente más adelante ordene algunas de mis ideas al respecto, y las comparta con Uds.

Ida y vuelta a Marte en 90 días

Como cambia nuestra percepción de las distancias a medida que la ciencia avanza. Para nuestros abuelos, era "normal" que un viaje en "vapor" entre América y Europa demorara 30, 45 o más días. Hoy el mismo viaje no requiere mas que unas horas de avión. Y si un proyecto de la Universidad de Washington financiado por NASA prospera, parece que se podrá ir y volver de Marte en... ¡90 días!

El fin de semana encontré una pequeña reseña en la sección "Frontera" de la revista Viva, donde se hablaba de un nuevo sistema de propulsión denominado "mag-bean" que podría impulsar una nave espacial a una velocidad de 42.000 km/h, reduciendo el tiempo que demora un viaje ida y vuelta a Marte (que actualmente sería de unos 2 años y medio...) a 90 días. Me sonó muy loco, pero una corta investigación con Google me llevó a este link, que a su vez contiene un enlace a un artículo (en inglés) en el sitio de la Universidad de Washington.

Resulta que mag-bean es uno de los 12 proyectos de nuevos sistemas de navegación que NASA ha decidido financiar. El principio de funcionamiento de mag-bean es que una estación espacial genera un haz de iones magnetizados, que "sopla" sobre una vela magnética en la nave a desplazar. Acá hay una ilustración que representa la idea.

Fuentes:

¡Firefox 1.0 está aquí!

¡Bajá Firefox 1.0!

La espera terminó. Bajá Firefox 1.0, el mejor navegador, y el más rápido. Disponible en 14 lenguajes, incluyendo una localización específica para Argentina. Para Windows, MacOS X y Linux.

Al instalar Firefox, se importan automáticamente los Favoritos, Bookmarks, Cookies, Passwords, Certificados de Seguridad e Historial del otro navegador, con lo cual... ¡no tenés nada que perder probando!

Principales características:

  • Bloqueo de ventantas "pop-up";
  • Abrís múltiples páginas en una misma ventana (ideal para búsquedas...);
  • Seguridad y Privacidad. Nada de código ActiveX peligroso;
  • Búsqueda con Google (y otros motores) integrada;
  • Bookmarks especiales para RSS Feeds y Blogs;
  • La descarga pesa sólo 4.5 Mb (Windows);
  • Podés agregarle características extras vía Extensiones;
  • Podés darle el "look" que mas te guste usando Temas;

... y por supuesto, es completamente gratuito. Firefox es software de código abierto, desarrollado por la Fundación Mozilla y miles de desarrolladores voluntarios en todo el mundo.

El Juego de la Vida

Emblema Hacker

Verán que en el panel de la derecha de la página, debajo de los links a los validadores del W3C, he colocado el emblema que encabeza este artículo, el cual fue elegido por Eric S. Raymond para representar a la comunidad hacker. Antes de seguir, vale aclarar dos cosas:

  • El título de hacker se gana haciendo mérito en la comunidad, no es algo que uno adopte. Con lo cual, no me considero tal, no necesariamente pretendo serlo... aunque sí comparto muchos de sus valores (y por eso decidí incluir el símbolo en mi blog). En la página del emblema EsR comenta algo al respecto; y en este how-to hay más información.
  • Ser hacker no es algo malo, ser hacker no implica cometer sabotajes informáticos, ni nada por el estilo. Sería muy largo explicar acá todo lo que significa ser hacker. Si estás interesado, leé el how-to, consultá The Jargon FIle, o leé los dos primeros capítulos del libro The Art of Unix Programming.

Volviendo al tema que nos ocupa: El emblema representa a uno de los patrones del Juego de la Vida de John Conway llamado glider. No tenía idea lo que era, así que los últimos días estuve investigando al respecto. El juego, extremadamente relacionado con conceptos de IA, premite simular mediante reglas muy sencillas el ciclo de vida e interacción de un conjunto de células. Es muy interesante. Nace por allá por el '70, junto con Unix y la comunidad hacker, y aparentemente más de un fanático se pasaba horas corriendo simulaciones, intentando descubrir patrones especiales (y hablamos de la época en la que para sentarse delante de una minicomputadora había que sacar turno). Todo este contexto es el que llevó a EsR a pensar que el glider del Juego de la Vida era un buen emblema para los hackers.

El juego (que formalmente es un autómata celular (el más famoso)), fue ideado por el matemático británico John Conway, y permite apreciar como pueden generarse patrones muy complejos a partir de reglas sumamente sencillas.

¿Y qué son los dichosos patrones? Resulta que hay agrupamientos iniciales de células, que por su cantidad, disposición y las reglas ideadas por Conway se comportan de una manera particular: Se deslizan, 'evolucionan' generando determinada figura, y muchas veces llegan a una condición de equilibrio en la que el sistema queda estático: no nacen ni mueren mas células. Glider es uno de los más sencillos, se desliza por el ecosistema (tablero) al mismo tiempo que va mutando, y tiene la particularidad de volver a su forma original cada 4 generaciones.

Como parte de la investigación, encontré un sitio donde se puede 'jugar' on-line mediante un applet Java. La verdad que encontré varios sitios parecidos, pero en particular me gustó éste porque están predefinidos varios de los patrones iniciales mas interesantes (incluyendo el glider). Además están explicadas las relgas por las que se rige el comportamiento de las células. Si les interesa probarlo, entren a John Conway's Game of Life (requiere Java).

Este post es un brevísimo resumen. En el texto desparramé links suficientes como para que aquel que se sienta interesado, pueda buscar información por su cuenta. Y nunca olviden que Google es su amigo ;)

¡Ah! Me olvidaba: EsR menciona que la idea de usar patrones de Vida como emblema fue semi-anticipada por algunos hackers Argentinos :) (y pone esta imagen de una remera como ejemplo).

PyAr - Python Argentina

El 21 de octubre de 2004 tuvo lugar lasegunda reunión de PyAr - Python Argentina. El objetivo delgrupo es nuclear a los usuarios de Python en Argentina,de manera de centralizar lacomunicación a nivel nacional. Pretendemos llegar a usuarios y empresas,promover el uso de Python, intercambiar información, compartirexperiencias y en general, ser el marco de referencia local en el usoy difusión de esta tecnología.

Los temas tratados fueron diversos: lanzamiento de Firefox 1.0, Máquinas de Turing, Perl, .Net, ... y también,por supuesto, hablamos de Python ;). De a poco fueron tomando forma losobjetivos iniciales, esbozados en la primer reunión, y sefueron plasmando en ideas concretas. Obviamente no faltaronlas cervezas, gaseosas, licuados y demás recursospara dar soporte al brain-storming.

En la última reunión, setomaron las siguientes decisiones:

  • bautizar al grupo como "PyAr - Python Argentina";
  • crear dos listas de correo, una general, abierta, para las discusiones de PyAr, y una específica, moderada, para publicar ofertas de laburo (una Bolsa de Trabajo, bah...) y anuncios específicos;
  • establecer un portal, donde se den a conocer los objetivos y actividades del grupo, las instrucciones para participar, enlaces a información útil, y generar contenido propio (como por ejemplo experiencias locales en el uso de Python);
  • iniciar una "campaña de marketing" para darnos a conocer y sumar miembros. Al respecto se acordó una mínima política de "branding" de manera de dar un mensaje único, consistente. Al menos hasta que logremos cierta masa crítica, el esfuerzo se limitará a que cada miembro divulgue la existencia del grupo entre amigos, compañeros de trabajo, estudio, etc. Al mismo tiempo trataremos de colocar anuncios en sitios de interés, tales como LUGar, Fundación Vía Libre, Python Hispano, etc.

También discutimos ideas maslocas (bueno... algunas no tanto), a más largo plazo, lascuales podremos ir concretando en la medida que demos correctamentelos primeros pasos, y siempre y cuando obtengamos el apoyo necesariode la comunidad. Algunas de estas ideas son:

  • registrar nuestro propio dominio;
  • colaborar, como grupo, en el desarrollo de Python y proyectos relacionados, contribuyendo con mejoras, bugfixes, etc.;
  • organizarse bajo algún tipo de personería jurídica;
  • establecer una relación mas formal con la Python Software Foundation;
  • participar activamente en la creación de una versión Latinoamericana de EuroPython;

La reunión fue muy amena,divertida y productiva. Contamos con que para la próximaseremos más.

The Jargon File

Hace un tiempo atrás, usé el término foobar como variable auxiliar, y me preguntaron de dónde había salido. Entonces recordé la existencia de "The Jargon File" ("El Archivo de Jerga" --> ¡que feo suena en castellano!), de Eric S. Raymond. Me había cruzado con este doc por primera vez por casualidad, hace varios años, cuando buscando diccionarios auxiliares para incorporar a Babylon, me llamó la atención la descripción de éste glosario y decidí instalarlo.

The Jargon File es una recopilación, sumamente extensiva, detallada y rigurosa de gran parte del vocabulario utilizado en informática desde sus comienzos. Es interesante, porque repasa (incluso etimológicamente) las expresiones que se usaban en los orígenes de Unix, la red Usenet, Arpanet, etc., y por lo tanto, explica muchísimos términos que hoy se usan comunmente en otros contextos, y de los cuales no tenemos idea el origen.

Para tener en cuenta:

Marie Fredriksson... reloaded ;)

Marie Fredriksson - The Change

(Actualizado) La semana pasada, leyendo como casi todos los días The Daily Roxette para ver si había algo nuevo, me encontré con la fantástica noticia de que Marie, después de dos años de lucha contra el cáncer, está preparando su regreso, con un nuevo álbum solista llamado "The Change" (El Cambio).

No es nuevo que Marie tenga una carrera solista "paralela" a Roxette, de hecho Per Gessle también la tiene (siempre la tuvieron, y desde antes de formar Roxette), pero la novedad es el idioma. Marie siempre compuso sus trabajos en sueco, y es muy poco lo que ha escrito en inglés.

Éste nuevo album seguramente significa mucho para ella, por el contexto en el que surje, y para nosotros, sus fans, también. Por otro lado, hace muchísimo tiempo que Marie fantasea con hacer un disco de jazz, reuniendo a músicos de ese género. Si alguna vez escucharon el MTV Unplugged que Roxette hizo en el '93, notarán una influencia "jazzy" en muchos de los temas... definitivamente Marie participó de los arreglos. Todo parece indicar que éste nuevo proyecto, The Change, es la cristalización de ese anhelado (y largamente postergado) proyecto personal.

El parte de prensa de EMI dice que será una release internacional. Dudo que se edite en Argentina... pero... ¿a quién le importa?. Será cuestion de pelar la MasterCard, y aprovechar internet ;)

Marie Fredriksson - 2:nd Chance

Actualización: Ya se conoce el nombre del primer corte, "2:nd Chance" (Segunda oportunidad), el cual está en las radios (¿internacionalmente?) a partir de hoy. Judith Seuma y Txiqui, del Daily Roxette, prepararon una presentación con Flash donde se puede escuchar el corte completo. La canción es sumamente personal, y realmente hay que poner la letra en el contexto de la situación que atravieza Marie en su vida para que no suene "simplista" o naive. Varias de las primeras críticas (de medios y de los fans) encuentran musicalmente cierto contacto con "Free As a Bird" (The Beatles), y creo que estoy de acuerdo (y al menos en este corte, no hay nada de la onda Blues/Jazz con la que se estaba especulando...)

Escuchá el primer corte, 2:nd Chance, acá

Recuperando el hábito de la lectura

Erase una vez, el cHagHi vivía en Bella Vista y se pasaba 3hs por día arriba de un tren. Y leía. Mucho. Sinceramente no extraño el tren, pero si la lectura. Y lamentablemente, debo reconocer que tiempo para leer tengo, solo que invierto en TV (gracias FOX, por series como Nip Tuck, Lyon's Den, North Shore y Wonderfalls (sobre todo por las dos primeras)). El asunto es que hace unas semanas, me fuí al otro extremo, y (además de los artículos varios que leo de internet) estuve leyendo dos novelas "en paralelo":

  • "Yo, Robot". La inspiración, obvio, fue la película. El libro ya lo había leído, pero hace mucho, mucho tiempo atrás. Y son tantas las cosas de Asimov que tengo mezcladas en la cabeza, y tan recurrentes en sus novelas los robots, que no me acordaba de nada. Y después de ver la película por primera vez, me quedó una sensación del estilo "hummm... ¿tiene ésto algo que ver con el libro?". La respuesta es... sí y no. El libro, es una colección de relatos cortos, que repasa mas o menos la historia de los robots. El hilo conductor del relato es una entrevista a la La Dra. Susan Calvin (uno de los personajes principales en la peli), y el núcleo de la novela son las tres Leyes de la Robótica, y diversos conflictos que resultan de su aplicación. ¿Y la película? Bueno, la película, sin entrar en detalles para quienes no la vieron, es un cuento que perfectamente podría haber formado parte del libro, y que toma algunos personajes del libro... y hasta ahí. El nudo también es un conflicto con las leyes de la robótica, pero la historia está escrita especialmente para la película. En cuanto al libro en si, sigo opinando que lo que mas me gusta de Isaac Asimov es la serie de "La Fundación". Y me pasa que con el correr de los años, cada vez es mas difícil volver a una novela de Asimov y no ver como algo gracioso (y que a veces distrae del núcleo principal) lo "tecnológicamente desactualizado" que ha quedado el relato, al menos en ciertos aspectos. Por último, la lectura me resultó extremadamente chata y simplista, con los personajes muy poco elaborados. La traducción no es de las mejores, y eso tampoco ayuda.
  • "The curious incident of the dog in the night-time" (El curioso incidente con el perro en la noche), de Mark Haddon. Este libro cayó en mis manos como resultado de mi "visita bi-anual" a Amazon.com, luego de leer una crítica del libro en la página de Joel. Maravilloso. Realmente disfruté mucho esta novela. Está escrita en primera persona (algo bastante inusual), y pretende ser un relato de Christopher Boone, un flaco de 15 años que sufre el mal de Asperger (una clase de autismo). El autor tiene experiencia trabajando con autistas, y se nota en el libro. Mucho. Meterse en la cabeza de este pobre flaco es muy... loco, raro. La lectura es sumamente amena. Yo quedé atrapado desde el comienzo con el personaje. Resulta que Christopher encuentra al perro de una vecina muerto, clavado con un rastrillo:

Decidí que al perro probablemente lo asesinaron con el rastrillo porque no pude ver ninguna otra herida en el perro y no creo que alguien fuera a clavar un rastrillo en el perro después de que muriera por alguna otra razón, como cáncer por ejemplo, o un accidente en la calle. Pero no podía asegurarlo.

Sobre esto, Joel escribió en su crítica: "Es gracioso, pero al mismo tiempo lógico, en la misma forma irritante en que muchos programadores son lógicos mas allá de la razón". Y entonces decidí que quería leer el libro.