Cómo configurar llave primaria como UUID en Rails

No hay nada de malo en la forma estándar de tener un entero como valor para las llaves primarias en las tablas de nuestras aplicaciones. Sin embargo, por seguridad cuando los registros suelen ser públicos, lo mejor es poner dichas llave como un campo UUID. A continuación muestro como.

Continuar leyendo «Cómo configurar llave primaria como UUID en Rails»

Cómo escribir rake tasks con argumentos

En proyectos Ruby o Rails, cuando queremos ejecutar tareas en el entorno (no en el software como tal) nos valemos de las rake task. Comandos que permiten recrear archivos, insertar o limpiar archivos y datos.

Ahora, cuando creamos nuestras rake tasks personalizadas es muy usual que sean bastante sencillas y triviales pero qué pasa cuándo necesitan un poco más de personalización, cuándo necesitamos pasar argumentos a estas, ¿es posible hacerlo? Claro que sí.

Continuar leyendo «Cómo escribir rake tasks con argumentos»

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.

Continuar leyendo «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.

Continuar leyendo «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.

Continuar leyendo «Notas de una Migración a Rails 6»

Cómo Hospedar Aplicaciones Estáticas en Heroku

Creo que Heroku debería patrocinarme ya que he escrito en varias ocasiones sobre este servicio y ¿cómo no hacerlo? Es un buen servicio con una buena oferta.

En esta ocasión voy a compartir cómo montar una aplicación estática en un dyno de Heroku. Si bien en ocasiones podemos valernos de servicios como GitHub Pages, Netlify o Vercel, Heroku no deja de ser una buena alternativa.

Vale destacar que mandar aplicaciones estáticas a Heroku puede ser más complicado que en los otros servicios mencionados aunque no está de más tener opciones.

Continuar leyendo «Cómo Hospedar Aplicaciones Estáticas en Heroku»

Mandar a Producción un Viernes, ¿Sí o No?

Tema complejo. A muchos asusta. A muchos otros no. Yo opino que sí se debe mandar a producción un viernes pero siempre que haya garantías de que los despliegues estén soportados por una buena suite de pruebas, un proceso de despliegue seguro y una posible reversión confiable.

continuar leyendo

Migré de Svelte a EmberJS y Fue Para Bien

El año pasado empecé un proyecto en el que aprendí sobre la API de Vídeo de Twilio y a usar una nueva librería JavaScript llamada Svelte. Sin embargo, por diferentes situaciones y problemas necesitaba cambiar Svelte por otro framework o librería.

Creí que me iba a estancar y el proyecto no lo podría seguir pero al final sí fue posible, en poco tiempo y sin quedarme calvo. En este artículo contaré al respecto de este proceso migratorio de Svelte a EmberJS.

continua leyendo

Cómo Reiniciar Base de Datos PostgreSQL en Heroku

Cuando se trabaja en aplicaciones Ruby on Rails es muy frecuente ir agregando campos a las tablas o nuevas tablas cada tanto tiempo en las etapas iniciales de los proyectos.

A medida que se llega a un punto estable o con muchas características implementadas, se reduce la cantidad de migraciones a generar.

También ocurre que al estar en etapas tempranas nos sentimos con mayor libertad de destruir la base de datos para facilitar el añadir nuevos campos o porque hay mucha información inservible que complica correr migraciones nuevas.

SEGUIR LEYENDO