El Poder Legislativo de México se está volviendo un espacio de participación ciudadana: Los diputados y senadores de la República ya no son los únicos protagonistas, sino los mexicanos de a pié, cada vez más, están atentos del quehacer legislativo. Estamos comprendiendo que es allí donde nuestro futuro se juega, sesión tras sesión; que es allí el campo de juego donde las trasnacionales, los poderes fácticos y los políticos imponen sus condiciones para acumular riquezas a costa de la población. Y es allí donde nosotros debemos exigir el ideal de país que deseamos.
Hace poco un nuevo escándalo cubrió a las cámaras legislativas: la empresa Pulso Legislativo, ligada a los ex diputados del PRI, les pretendía vender, por 115 millones de pesos, un servicio de "inteligencia legislativa". Este servicio, supuestamente, consolidaba la información disponible para ayudar a los legisladores en la toma de decisiones. (ver nota de Animal Político)
Parece ser que el proyecto ha sido cancelado por parte del Congreso, después del escándalo provocado por la poca transparencia de la licitación, aunque la empresa insiste que el contrato sigue en pié (ver nota en Animal Político).
Buen día chavales, hace un tiempo después de renunciar a la empresa en la que laboraba, me pidieron que si les hacia el favor de crearles un script para enviar correos de alerta cuando un proceso se detuviera, les mande el siguiente:
En un mes (el próximo 15 de febrero del 2013) hay que renovar el hosting de este sitio. ¿Qué hacemos? ¿Renovamos? ¿Nos mudamos? Pero la pregunta más de fondo sería ¿continuamos con este proyecto?
Primero que nada, un hagamos una revisión de lo realizado el año pasado:
El sábado explotó la noticia: Aaron Swartz se suicidó el viernes
anterior. Tenía 26 años y sobre ellos, una larga cuenta de logros de
los que pocos hombres podrán jactarse a lo largo de una vida
entera.
A los 14 años fue uno de los autores de la especificación del RSS
1.0, poniendo orden en los días en que había diversas versiones de la
especificación, incompatibles entre sí. A los 20 fundó una empresa
(infogami) que pronto fue fusionada con Reddit, volviéndose Swartz en uno de
los co-fundadores de éste célebre sitio web (forja de casi todos los
memes que revuelven a Internet). Cuando Reddit fue adquirido por la
misma gente que maneja la revista Wired, Swartz fue visto como una
carga a los ojos corporativistas, así que pronto fue despedido.
Y es que para Swartz, su principal vocación fue el activismo. Co-fundó
el grupo Demand Progress, una
organización que aglutinaba a muchos grupos que defendían la liberta
de expresión en Internet. Además trabajo para otras organizaciones
cívicas como Avaaz, que
hace campañas de activismo a favor de causas como el cambio climático,
derechos humanos y derechos de los animales.
(Si no conoces Avaaz, te suguiero de que les una vuelta, que cuenta
mucho más que cualquier insulso "like" en Facebook)
Sin embargo, la principal preocupación de Swartz era en lo que se
está convirtiendo este mundo, donde un puñado de privilegiados por las
reglas analógicas del pasado, quieren controlar lo que las individuos
pueden saber, compartir y discutir a través de los medios
digitales, tal como detener las ambiciones de la RIIA y la MPAA. Swartz combatió fieramente
contra los proyectos de ley SOPA y PIPA. Swartz
creía en un mundo donde la información es libre para todos y no está
restringida a un grupo de privilegiados, como se pretende.
Sobre Swartz pendió una demanda penal y fue arrestado. Descargó un
miles de artículos científicos de JSTOR, una librería digital que
incluye a muchas revistas reconocidas en varios campos del
conocimiento y luego los distribuyó por las redes P2P. JSTOR cobra por
dar esa información, sin pagar, absolutamente nada, a los autores
originales, limitando así el acceso al conocimiento únicamente a las
personas autorizadas por ellos. Es decir, Swartz hizo un gesto
heróico, similar al del que se le acusa a Bradley Manning.
El litigio a Swartz buscaba 35 años de cárcel y 1 millón de dólares
en compensación. Por algo que es similar a castigarte por pedir muchos
libros prestados en la biblioteca municipal.
Y para cerrar esta breve y humilde remembranza, copiaré un par de
frase que vienen en el comunicado
que dio su familia ante su pérdida:
He used his prodigious skills as a programmer and technologist not to
enrich himself but to make the Internet and the world a fairer, better
place.
Aaron’s death is not simply a personal tragedy. It is the product of a
criminal justice system rife with intimidation and prosecutorial
overreach. Decisions made by officials in the Massachusetts
U.S. Attorney’s office and at MIT contributed to his death.
Una de mis tareas de este fin de semana fue el de reorganizar mi entorno de correo electrónico. Para leer el correo electrónico utilizo mutt, configurado para leer el correo electrónico de un servidor IMAP. Para enviar correo, tengo una configuración mínima de exim que utiliza a su vez a mi servidor de correo electrónico como retransmisor.
Mutt es un lector de correo electrónico excelente, pero es pésimo para el manejo de IMAP. Además, empecé a necesitar de búsquedas por todo mi correo electrónico. La solución para el primer problema es offlineimap, un programa escrito en Python, que sincroniza correos electrónicos entre dos lugares de almacenamiento. Es decir, es capaz de descargar mi correo electrónico desde el servidor IMAP y ponerlo en mi portátil, por lo que trabajo en mi correo electrónico localmente, y si elimino un correo electrónico, offlineimap lo eliminará del servidor en la siguiente sincronización.
La solución al segundo problema, la búsqueda, es notmuch, que es un indexador de correo electrónico, lo que permite realizar búsquedas rápidas entre una colección inmensa de correo. Así que, una vez que llega correo nuevo (o se elimina) con OfflineIMAP, notmuch los indexa (o los desindexa).
Sin embargo, otro problema se presentó: ¿cómo consultar a notmch de forma integrada con mi lector de correo? Una solución es mutt-ks, un fork de mutt con soporte integrado para notmuch.
Pero yo uso Debian, y me gusta su gestión de paquetes. Así que necesitaba para elaborar un paquete de Debian para mutt-kz.
Hace días escribí una entrada sobre como instalar y configurar el spamassassin, ya la gran mayoría sabemos que Spamassassin genera un log de actividad y este log es un chorizón…
Si instalamos y configuramos el Spamassassin como lo recomienda la gran mayoría y como yo mismo lo he publicado en mi blog, tendríamos un archivo llamado spamd.log. Este archivo no es mas que un log de las actividades del Spamassassin en cuanto a sus tareas de filtrar el correo electrónico en nuestro servidor o equipo. La verdad es que con el tiempo este archivo crece y crece y analizarlo manualmente se vuelve un poco complicado.
Buscando alguna solución ya elaboradas encontré muchos generadores de reportes gráficamente en php pero no es lo que yo buscaba.
Mis necesidades son básicamente saber la fecha y hora en que el Spamassassin identifico un correo spam e identificar rápidamente el dominio de donde salio, así como la dirección ip de ese dominio.
Necesidades muy especificas que no me las daba alguna herramienta ya existente.
Entonces decidí escribir un pequeño script a manera de analizador para “analizar” el log del Spamassassin (spamd.log) y extraer dicha información y poder consultarla en pantalla.
En el pasado, me quejaba de los centros de servicio autorizados de dispositivos (computadoras, tableta, mac, hp), ¿el motivo? : “cobraban” por revisión del equipo cantidades mayores a $500 pesos (45 dólares americanos) por el solo HECHO de revisar la falla del dispositivo en cuestión....
Ya lo saben: mi educación superior, la susodicha ingeniería en sistemas computacionales, fue muy precaria. Cada día de mi vida profesional descubro y redescubro una carencia nueva y más escandalosa que la anterior. En esta ocasión ha sido sobre el apasionante tema de los compiladores.
Durante los primero meses de este año estuve trabajando con v8, el motor de JavaScript desarrollado por Google y parte de su navegador Chrome. Y sólo bastaron pocas semanas para darme cuenta de que no tenía ni la más mínima idea sobre el tema.
El proyecto para mi terminó con un valioso aprendizaje: darme cuenta cabal de que no sé nada de compiladores. Es una deuda que tengo para conmigo mismo.
Con el fin de comenzar a pagar ese mal karma, dediqué este fin de semana a escribir un compilador de juguete. Bueno, ahora ni siquiera llega a compilador: en un mero analizador sintáctico del lenguaje BASIC, en su primera encarnación de 1964.
Utilizo flex para hacer en analizador léxico, y bison para el analizador sintáctico.
Sospecho que aún puedo simplificar más la gramática y alguno que otro retoque más. El siguiente paso es hacer el árbol sintáctico abstracto, para luego recorrerlo e intentar hacer optimizaciones locas.
El código está en gitorious y recuerden armarse con el clásico libro del dragón. ¡Son menos de 450 líneas de código!
Chavos que están estudiando alguna carrera relacionada con las ciencias computacionales: No dejen que el mal karma les desdibuje sus aspiraciones profesionales. Programen sus propios compiladores, sistemas operativos, manejadores de bases de datos, máquinas virtuales. Al menos inténtenlo. Verán que el esfuerzo paga muy buenos dividendos.