Cómo Configurar GitHub Actions para correr RSpec

No hay ninguna duda que la integración continua tiene enormes ventajas a la hora de simplificar la forma de enviar nuestros proyectos a los entornos en la nube. Por eso, ya antes he configurado este tipo de servidores en Bitbucket, Jenkins e incluso Circle CI.

Ahora, me tocó hacerlo en GitHub Actions y quiero compartir cómo lo logré y algunos aprendizajes.

Leer más “Cómo Configurar GitHub Actions para correr RSpec”

La Idealización del Código

O creer que el código de otros es una maravilla.

Todo desarrollador de software a medida que progresa sus habilidades va entendiendo que su código actual es mejor que el de hace algunos años atrás.

Pasa que volvemos a ver código pasado y nos da pena lo que escribíamos. Cómo resolvíamos ciertas cosas muy diferente a como lo hacemos actualmente.

Con el pasar del tiempo, comprendemos que “no somos tan buenos” como creemos. Siempre habrá alguien que hará las cosas mejor que nosotros. Alguien que escribiría el código de manera prodigiosa, elegante y formidable.

Y es la realidad. Nada de malo en ello.

Leer más “La Idealización del Código”

Notas de una Migración a Rails 6

Ruby on Rails es un maravilloso framework para el desarrollo de aplicaciones web. Tiene un montón de herramientas para facilitar la vida del desarrollador, además de una serie de valores los cuales dan peso a su existencia.

Cuando empecé a escribir código en Rails era el año 2012 y lo poquito que escribía era en Rails 3. Hice cosas en Rails 4 para saber las diferencias y tuve la oportunidad de seguir escribiendo en la cuarta versión en un software en el que trabajé por casi 2 años. Más adelante, pude empezar un proyecto con Rails 5 y esa fue la constante por un largo rato.

Leer más “Notas de una Migración a Rails 6”

Documentar Software no es tan Difícil

Muchísimos chistes se han contado sobre lo poco o nulo que suele ser la documentación en proyectos de software. Si bien la documentación de librerías populares muestra la gran dedicación que le ponen el equipo de mantenedores, cuando miramos al software dentro de las empresas en las que trabajamos es cuando padecemos de la carencia de una documentación decente.

Que falte documentación puede ocurrir por diversas causas, desde falta de tiempo, negligencia, desinterés o desmotivación (porque caduca muy rápido) hasta desconocimiento de cómo hacerlo o incluso qué documentar.

Leer más “Documentar Software no es tan Difícil”

Voto Electrónico: ¿Sí o No?

Respuesta corta: no.

A continuación, los fundamentos.

Siendo Jurado Electoral

He sido jurado electoral en Colombia en varias ocasiones. Generalmente, son tres eventos por los cuales hay votaciones: elecciones presidenciales, elecciones de congreso y elecciones de alcaldes, gobernadores y ediles.

Unas más “pesadas” que otras en términos de la afluencia de gente que asiste a votar, en ocasiones ocurren en lugares donde no hay fluido eléctrico, agua en los baños, poca ventilación, etc.

Leer más “Voto Electrónico: ¿Sí o No?”

Sobre ese error de la cláusula Group By en SQL

Una de las cosas buenas de escribir es que cuando uno se motiva a hacerlo sobre un tema que no conoce, le toca aprender y entenderlo para poder explicarlo con propiedad o desde una nueva óptica.

Este tema que vengo a compartir no lo entiendo ni un poquito. Llevo mis buenos años trabajando haciendo software pero el error:

ERROR: column “MY_TABLE.MY_COLUMN” must appear in the GROUP BY clause
or be used in an aggregate function

Nunca lo he entendido de tal forma que sepa qué está pasando (y eventualmente prevenga que ocurra) cuando escribo consultas SQL.

Puede que me equivoque en lo que explique pero haré el intento de entenderlo y explicarlo lo mejor que pueda. ¡Empecemos!

Leer más “Sobre ese error de la cláusula Group By en SQL”

Sobre las entrevistas y Preguntas de Ruby y de Rails

En este artículo quiero plasmar algunos pensamientos de entrevistas para desarrolladores web y algunos enlaces a sitios donde hay una buena colección de preguntas para prepararse enfocadas en Ruby y Ruby on Rails.

Sobre las entrevistas para desarrolladores

Entrevistas de trabajo. Temidas por unos, buscadas por otros. En cualquier profesión son un momento difícil para cualquier persona porque casi nunca se sabe los criterios por los cuales te aceptarán o rechazarán en una vacante de trabajo.

A nosotros los desarrolladores de software en ocasiones nos toca pasar por entrevistas que parecen diseñadas por robots para entrevistar robots. Procesos larguísimos, poca empatía, falta de consideración, preguntas sin sentido, tareas muy extensas y al final, en muchas ocasiones, no hay respuesta de vuelta de la empresa contratante.

Leer más “Sobre las entrevistas y Preguntas de Ruby y de Rails”

Los 10 Mandamientos del Programador Sin Ego

Las fuentes donde los leí indican que se origina en el libro “The Pyschology of Computer Programming” escrito por Jerry Weingber. Son unos principios bien interesantes y que se enfocan en lo humano más que en lo que producimos como desarrolladores de software: código.

Veamos.

Leer más “Los 10 Mandamientos del Programador Sin Ego”

Usa GitHub Más Fácil con Hub

GitHub es el servicio de hospedaje de código más popular hoy en día. Su interfaz, su listado de características y hasta su precio lo vuelven en una herramienta que poco hay que pensar para usarla a nivel personal o empresarial.

La interfaz de GitHub comparada con la de Bitbucket o Gitlab es muy amena, sencilla y en ocasiones fácil de usar. En todo caso, tener que dar clic por aquí y clic por allá para lograr algo, resulta cansino cuando hay formas más sencillas posibles.

Leer más “Usa GitHub Más Fácil con Hub”

Sugerencias para un Buen Desempeño como Desarrollador de Software Profesional

Todos empezamos sin saber muchas cosas cuando llegamos a nuestro primero empleo. De lo que sea. De niño solía trabajar en mis vacaciones del colegio. Fuera esto con mi papá como ayudante o donde un vecino que tenía una empresa de estampados.

Generalmente, siempre me explicaban cómo hacer las cosas que me encargaban y procuraba hacerlas siempre de la mejor manera. Cuando no sabía preguntaba y cuando tenía problemas los mencionaba.

Luego, cuando empecé a trabajar como programador se repetía un poco lo mismo. Se me pedía hacer algo, se daban instrucciones e indicaciones de por donde empezar y luego cuando me ponía manos a la obra procuraba informar, hacerlo bien, mencionar problemas, etc.

Leer más “Sugerencias para un Buen Desempeño como Desarrollador de Software Profesional”