De cero a login en 30 minutos

Posted by amuino on abril 4th, 2011

Nuestro primer día trabajando en PymePrivee fue tranquilo. ¿Qué significa eso? Pues que teníamos un cuello de botella en la configuración inicial del proyecto, así que no podíamos paralelizar el trabajo.

Lo bueno, es que teníamos dos subproyectos (la web y el widget) muy bien aislados… lo que resultó muy valioso en esta etapa (hubiese sido un desperdicio tener a 4 personas paradas durante las primeras horas).

La otra cosa buena es que German tuvo tiempo de ir transcribiendo lo que hacíamos. Lo más impresionante es cómo la selección de herramientas puede lanzarte o lastrarte. Gracias a Devise, teníamos el alta de usuarios con todos los extras (remember me, password reset, …) en sólo 30 minutos desde que nos sentamos a trabajar.

Aquí queda el log…

Vie ~18.00: Nos reunimos y comentamos el objetivo del proyecto

Vie ~18.30: Armamos unas simples 10 historias sobre lo que queremos

Vie  18:56: Abel ha creado unos repos GIT y lo compartió con Bananajour

Vie  18:57: Abel crea el proyecto Rails para PymePrivee

Vie  19:01: Abel configura el proyecto

Agregar la gema de “rspec-rails” en los entornos de Dev y Test (en Gemfile) [cambia el TestUnit por RSpec]

Agregar la gema “jquery-rails” para agregar JQuery a Rails

> bundle install

> rails generate rspec:install

> rails generate jquery:install

Vie 19:06: Abel hace commit y push del proyecto con todo configurado

Vie 19:07: Abel agrega Devise para gestión de usuarios

Agregar la gema “devise”

> bundle install

> rails generate devise:install

Configurar en config/enviroments development.rb y test.rb la config el mailer para que pueda realizar los envíos de correo

[*] Queda pendiente configurar esto en producción

Agregar la ruta default (routes.rb):

route :to => “home#index”

Vie 19:12: Abel crea las base de datos

> rake db:create:all

Vie 19:13: Abel lanza el servidor Rails para probar que esté funcionando

> rails server

Vemos en http://localhost:3000 que todo funciona

[CHARLAS y CHISTES]

Vie 19:17: Abel crea/actualiza el modelo User (de devise)

> rails generate model user

> rake db:migrate test:prepare

Vie 19:19: Abel lanza `autotest` para ver que todo funciona

> autotest

Vie 19:20: Todos vemos que ya tenemos la posibilidad de identificarnos/registrarnos en el sitio

Vie 19:22: Abel genera vistas personalizables para Devise

> rails g devise views

Vie 19:24: Abel elimina la página default de Rails (public/index.html)

Vie 19:27: Abel agrega test de rutas rails a `rspec/routing`

Para ver como ejecuta, hay que darle al ctrl-c porque el autotest no siempre se entera

Vie 19:32: Ya estamos escribiendo nuestros RSpec…

Vie 20:15: Ya comimos bizcochos de chocolate con chocolate, nueces y otras cosas dentroSab 00:20: Ahora sí pasan lo test, a dormir.

Sab 10:00: Ya continuamos; luego de un buen desayuno

Una cosa que no refleja el log fueron los cambios de conductor al teclado… pero podéis intuir que a partir de las 20:15 era German el que tecleaba (y por eso no hay log hasta que terminamos :-) ). Fue toda una experiencia verle hacer TDD de libro con Rails.

El tercero en discordia, Javier Acero, no quiso pilotar con la excusa de que no había usado nunca Rails en un proyecto de verdad. El sábado ya le hicimos programar, ¡que a eso habíamos venido!

Del sábado y del domingo ya no tenemos más logs… las oportunidades de trabajar en paralelo aparecieron y a ellos nos lanzamos de cabeza :-) .

 

Comments are closed.