Archivo: Programación | Picando Código - Part 8
JSON más rico

Hice una gema: ricojson - herramienta de línea de comando que muestra archivos JSON de forma linda: fernando@endor ~ $ echo '{"name": "Captain America", "alterego": "Steven Rogers", "weapon": "Vibranium Shield"}' | ricojson { "name": "Captain America", "alterego": "Steven Rogers", "weapon": "Vibranium Shield" }fernando@endor ~ $ echo '{"name": "Captain America", "alterego": "Steven Rogers", "weapon": "Vibranium Shield"}' | ricojson { "name": "Captain America", "alterego": "Steven Rogers", "weapon": "Vibranium Shield" } El contenido JSON puede provenir de un archivo, o directamente desde la entrada estándard. Así que puede ser el resultado de un pipe de cat o curl. Como salida vamos a obtener […]
JavaScript para validar Cédula de Identidad Uruguaya

Otro mini proyecto de fin de semana, la validación de la Cédula de Identidad Uruguaya en JavaScript. Un problema mayor que tienen varios sitios uruguayos es la validación de la cédula. Fue lo que me llevó a escribir la gema ci_uy en Ruby, y ahora la implementación en JS como ejercicio. El número de la cédula uruguaya tiene el formato: 0.000.000-0. Entonces cuando un programador implementa el input de texto como para la cédula, empieza a exigirle al usuario cosas como "Use solo puntos, guiones o barras, primero ingrese los tres dígitos, después de una vuelta a la silla y […]
Proyecto de fin de semana: Gibil

El fin de semana pasado había creado un proyecto simple para un notificador de temperatura. Este fin de semana me tomé un tiempito para convertirlo en gema y ponerle un nombre: Gibil. No fui muy original con el nombre, buscaba algo sencillo y corto, y Gibil es el nombre de un Dios del Fuego en la mitología Sumeria. El uso básico es: $ gem install gibil $ gibil # Genera la notificación del sistema con la temperatura $ gibil schedule # Agrega un crontab para que nos avise cuando la temperatura es muy alta (mayor a 60) El código que […]
Proyectos de fin de semana - Notificador de temperatura y "Control remoto" web

A veces programar cosas, por muy simples e inútiles que sean, resulta tan catártico como entretenido, y una buena forma de invertir el tiempo en un fin de semana. Este fin de semana armé dos proyectos bastante simples que surgieron a partir de una idea y la pregunta de "¿Se podrá hacer esto?". Supongo que no son demasiado útiles pero funcionan en las condiciones en que los necesitaba. Igual siempre se les puede agregar cosas y mejorarlos. Notificador de temperatura Proyecto 100% Ruby que usa las bibliotecas libnotify y whenever así como Rake para notificarte cuando la temperatura de tu […]
La tabla periódica de plugins de WordPress

Hace unos días descubrí The Periodic Table of WordPress Plugins: Se ha contribuido con más de 30.000 plugins de WordPress al Directorio de Plugins de WordPress.org. Millones de sitios son impulsados por estos plugins, desarrollados y mantenidos por una comunidad open-source asombrosa en todo el mundo. Esta tabla muestra los 108 plugins más populares de WordPress, rankeados por cantidad de descargas. Pueden visitarla en plugintable.com: Me sorprendió gratamente encontrar a List Category Posts en la lista de plugins 🙂
Proyecto de Fin de Semana: Super Simple Time Tracker

En mi trabajo actual solíamos cobrar por hora. Usábamos una aplicación de time tracking para llevar la gestión a lo largo del mes de las horas que trabajábamos. Después pasamos a modalidad "sueldo fijo" y ya no tuvimos que volver a usar MinuteDock... La semana pasada empecé un proyecto en paralelo donde sí tengo que reportar las horas que le dedique. Así que me puse a buscar alguna alternativa a MinuteDock pero más sencilla. Buscaba algo que simplemente "trackee" las horas, sin asignarlas a un proyecto, sin necesitar una cuenta de usuario, sin tener que pagar nada. Después de una […]
Firefox Developer Tools, parte 2: Scratchpad y Editor de Estilos

Siguiendo con el repaso de las herramientas para desarrollo de Firefox, esta vez en Mozilla Hacks cubrieron de qué se trata el Scratchpad y el Editor de Estilos. Si quieren ver la primera parte: Firefox Developer Tools, parte 1: la Consola Web y el Debugger JavaScript En esta parte de la serie, se explican el Editor de Estilos (Style Editor) y el Scratchpad. El Editor de Estilos es una de esas cosas fantásticas sin las cuales la vida de un desarrollador web sería mucho más difícil. Ni que hablar de buscarle la vuelta a distintos problemas en un CSS. Podemos […]
Vagrant: entornos de desarrollo portables, reproducibles y livianos

Si no conocen y usan Vagrant, déjenme recomendárselo. Vagrant es una herramienta que nos facilita enormemente la gestión de distintos ambientes de desarrollo. Mediante "boxes", podemos configurar un sistema desde cero para un entorno de desarrollo específico y transportarlo con nuestro proyecto con un solo archivo de configuración: Vagrantfile. El lema en su sitio web: Crea y configura ambientes de desarrollo livianos, reproducibles y portables, y cumple con lo que promete. Está escrito en Ruby y es Software Libre. Las máquinas son provistas por VirtualBox (por defecto), pero puede usarse también VMware, AWS o cualquier otro proveedor. Para desarrolladores y […]
¿Por qué Ruby?

Ayer fue el Ruby Meetup Montevideo de Diciembre. Para este meetup preparé una charla con un poco de Live Coding (¿qué puede salir mal?) y algunas razones por las cuales yo elegí Ruby como mi lenguaje de programación. Estuvo muy bueno y me quedé rato largo conversando después de terminar la presentación. No tuve demasiado tiempo para preparar la charla, pero creo que salió bastante bien. La idea era que otros rubistas también participaran para dar opiniones y aportar conocimiento, y por suerte así fue. Es una charla que queda temporalmente archivada pero con miras de retomar y mejorar para […]
[Plugin WordPress] List Category Posts - paginación

Sigo actualizando mi plugin de WordPress: List Category Posts. Le estoy dando bastante atención a los temas nuevos en el foro de soporte de WordPress e intento ayudar a los usuarios a que logren lo que necesitan con el plugin. Parece que cada vez va creciendo la base de usuarios, la última versión rompió el record de descargas en un mismo día, así que puedo suponer que cada vez más gente usa el plugin. Un tema que tenía pendiente de hace un buen tiempo es la paginación. El domingo pasado me senté a programar y además de sacar la versión […]
[Plugin WordPress] List Category Posts 0.33

Recientemente retomé el desarrollo de mi proyecto software libre más popular hasta el momento: List Category Posts, un plugin para WordPress que permite listar los posts de una categoría con un simple shortcode. Nuevamente superé un récord de descargas en un mismo día, llegando a 2.789 descargas el lunes tras ser publicada la versión 0.32. Algo que me dejó muy gratamente sorprendido es que algunos usuarios se tomaron el tiempo de crear videos sobre el plugin y explicando cómo usarlo: Manage WordPress Content with List Category Posts Plugin Build A Start Here Page with List Category Posts WordPress: How to […]
Intrigado con Scala - parte 1

Intentando retomar Scala, volví a leer la revista PragPub de The Pragmatic Programmer. El número 17 de Setiembre de 2011 inauguró "Scala for the intrigued", una serie de artículos sobre Scala. Pueden leerlo acá. Empecé a leerlos en el momento que salieron y ahora me puse como objetivo repasarlos todos desde cero. Para que el compromiso tenga más peso, pienso compartir apuntes de cada uno por acá, así me presiono a seguir adelante. Pero antes de pasar a los apuntes, repaso un poco sobre Scala en sí: Scala es un lenguaje de programación con apenas 10 años de existencia. Fue […]
La mentira Agile 2

Llegué a través de DZone a To be or not to be... Agile! (Ser o no ser... ágil) Me sonó muy parecido a La Mentira Agile, así que lo comento por estos lados. Básicamente hace el mismo ejercicio que hice en su momento con mi artículo: Dados un montón de conceptos errónes sobre Agile, el autor escribió una explicación de lo que significa Agile para él. Comparto todo lo que dice, lo hace de una manera distinta a lo que fue mi post, así que me pareció bueno compartirlo como complemento al susodicho. Los puntos que señala son: "Hacemos" ágil […]
Expresiones regulares en Ruby
Gems Stats - ¿Qué gemas se usan más frecuentemente?

Gigest (GItHub GEms STats) es una gema que nos muestra estadísticas de uso de gemas para un usuario u organización en GitHub. Analiza los Gemfiles de todos los repositorios para una cuenta de GitHub, y nos muestra información con la cual podemos saber cuáles son las Gemas más o menos usadas. De esta forma podemos obtener estadísticas interesantes como tendencias de uso de gemas de empresas y usuarios. Para ver un ejemplo de cómo usarla, pueden ver Gem Stats, una app web que muestra los resultados de Gigest: http://gigest.herokuapp.com/ Me resultó interesante como una herramienta más a la hora de conocer a […]
Comentarios recientes