Después de 5 o 6 semanas de intenso trabajo (léase: tenía otras cosas que hacer en paralelo) completé con éxito la primera parte del curso Software as a Service de BerkeleyX, el campus virtual de la Universidad de Berkeley. Todavía pienso completar la segunda parte, pero en lo que va de esta experiencia con un …
Feb 13
Autenticación de GitHub para validar usuarios de una organización
Haciendo un levantamiento de seguridad rutinario, me preocupó que el formulario para acceder a un dashboard fuese visible para cualquier visitante, de modo que un robot o un usuario malicioso pudiese intentar adivinar la combinación de usuario y contraseña. Usualmente no se le da mucha prioridad a la protección del formulario de login. Al revés, …
Jan 22
Cómo migrar un repo SVN a GIT, con historia
Hace algunos meses emprendí la titánica tarea de aprender a migrar los repositorios de mi trabajo de SVN (localmente alojados) a Git (alojados en Github) conservando la historia de todos los commits históricos para saber a quién culpar de cada bug que se descubra en el futuro. Tuve que dar muchas vueltas, hacer muchos ensayos, …
Jan 21
Cómo migrar la historia de un repo SVN a GIT (avanzado)
Estos fueron los pasos que se siguieron para hacer un mirror de SVN a GIT. Para este ejemplo, suponemos un proyecto en SVN, llamado svn_project, que queremos copiar a git hacia una versión que bautizaremos como awesome_project, porque aunque en principio será el mismo proyecto, se vuelve más awesome por estar en GIT. Nuestro repositorio …
Aug 05
Chained jQuery UI Comboboxes
I started working on a Chrome extension on my spare time and I was hoping to get a key functionality from jQuery UI’s combobox, an extension of the autocomplete widget. Much to my dismay, the extension isn’t all that intuitive and the documentation might not be 100% accurate. I found workarounds for some flaws and others I had to recode. In …
Aug 03
Por qué la mala hierba no muere
Dicen que la mala hierba nunca muere. No estoy seguro de que no muera, pero definitivamente tiene mejores mecanismos de sobrevivencia y adaptación. Circula por el camino que garantiza perpetuar su seguridad: no la seguridad de su familia, no la continuidad de su obra (porque no tienen), no lo que es justo, no la protección …
Jun 02
WordPress Plugin: Cron Manager (update 0.7)
This plugin will add an option to list, delete and restore cronjobs in WP Cron. It’s loosely based on Simon Wheatley’s http://wordpress.org/extend/plugins/cron-view/ and it’s compatible up to version 3.4.1. It will create a backup of your crons when you install it, in order to be able to restore anything that may get broken. Future releases …
Jan 27
Hoy le di plata a un niño
No era un niño particularmente pobre. Era màs bien del perfil “se viste mal y anda sucio pero no el falta nada básico salvo quizà un propòsito. Uno que no sea mendigar” El problema son esos mensajes con que llegan pretendiendo que son razón sufucuente para conmoverse: – Es que mi papi ta sin trabajo… …
Jan 04
El perdón de mi corazón
Ya no quiero vivir para la venganza, vivir para el odio. El rencor es como un saco de papas podridas que acarreas por el mundo. Yo no quiero llevaras, no quiero llevar ese odio conmigo. Quiero estar bien, Quiero que el daño que me han hecho, la traición que me han hecho, no me haga …
Dec 31
El paradigma del buscón
Una persona sin honor y sin escrùpulos tiene habilidad natural para ser un timador. Algunos terminan en el fondo de un lago, otros como ladrones de guante blanco terminan tras las rejas. Y otros, con respaldo de buenas familias, terminan participando en empresas de IT sin saber programar un “Hola mundo” o en empresas de …