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 .