Comparativa entre Drupal y Rails. Charla por @carlossanchezp y servidor en la Codemotion 2014, en Madrid.
Compara diversos aspectos de estos framework intentando poner ciertos parámetros para decidir si para un proyecto nos interesaría más una tecnología u otra.
1. Drupal & Rails
Samuel Solís & Carlos Sánchez
MADRID · NOV 21-22 · 2014
2. MADRID · NOV 21-22 · 2014
Carlos Sánchez Pérez
Person.new(
name: "Carlos Sánchez Pérez",
job: "ASPgems",
twitter: "carlossanchezp",
github: "carlossanchezp",
Blog: carlossanchezperez.wordpress.com")
3. MADRID · NOV 21-22 · 2014
Samuel Solís
user_save(array(
name => "Samuel solís",
job => "ASPgems",
twitter => "estoyausente",
drupal.org => "estoyausente"
));
4. MADRID · NOV 21-22 · 2014
Hoja de ruta
Diseño Jefe Jefe de Proyecto Cliente Devs
Monigotes cortesía de http://sinergiasincontrol.blogspot.com.es/ ¡Gracias Fred!
5. MADRID · NOV 21-22 · 2014
Breve introducción
¿Qué es Ruby On Rails?
Rails: es un framework de desarrollo web con
una licencia MIT y escrito en Ruby.
Ruby: es el lenguaje de programación
orientado a objetos e interpretado.
9. MADRID · NOV 21-22 · 2014
Diseño
¿Podrías generar este
código HTML? ¡Te
mando el HTML y el
CSS!
10. MADRID · NOV 21-22 · 2014
Código HTML
El departamento de diseño nos termina una nueva funcionalidad que
debemos añadir a nuestro proyecto:
● Disponemos de una rama git design en la nos entendemos con
Diseño.
● Cambios rápidos, directo sobre la rama design y actualizar
● Pedir cambios a diseño y hacer merge de design
● Resolución de conflictos
● Integración con Rails
● SkeletonDance podemos ver cómo ha quedando
11. MADRID · NOV 21-22 · 2014
Código HTML
● Es más barato cambiar el CSS
● Muy buenos temas Responsive para
comenzar (ver OMEGA, ZEN o
Adaptivetheme)
● Fácil de personalizar
● DIVitis
12. MADRID · NOV 21-22 · 2014
Código HTML
Grado de dificultad
Nota grado de dificultad: 1 fácil 5 complicado
13. MADRID · NOV 21-22 · 2014
Jefe
Hay que poner un
motor de búsquedas,
¡imprescindible!
14. MADRID · NOV 21-22 · 2014
Buscador
Nuestro Jefe nos pide una nueva funcionalidad que debemos añadir
a nuestro proyecto:
● Sphinx / Thinking Sphinx.
● Modelos y los índices por separado en versión 3
● Facilita muchas veces la forma de hacer las cosas
● Relación entre modelos
● Deltas y sidekiq asincrono index
15. MADRID · NOV 21-22 · 2014
Búsqueda
● Si es sencillos rápidos de construir
● Buscadores complejos con Search API
● Fácil integración con Solr
● Posible integración con Sphinx
16. MADRID · NOV 21-22 · 2014
Buscador
Grado de dificultad
Nota grado de dificultad: 1 fácil 5 complicado
17. MADRID · NOV 21-22 · 2014
Cliente
¡Hay que cambiar esto!
¡Es super urgente!
18. Cambiar un modelo existente
Nuestro Jefe de proyecto nos dice que tenemos que hacer algunos
cambios:
● Cambiar un modelo sobre la marcha del proyecto es lo normal
● Migraciones
● Probar los cambios
● Deuda técnica
● Piensa en quién vendrá después a retomar el proyecto
MADRID · NOV 21-22 · 2014
19. Cambiar un modelo existente
● Fácil gestión del cambio
● Manejo de estructura de datos con Features
● Actualizaciones en BD con Hook_update_n
MADRID · NOV 21-22 · 2014
20. Cambiar un modelo existente
Grado de dificultad
MADRID · NOV 21-22 · 2014
Nota grado de dificultad: 1 fácil 5 complicado
21. MADRID · NOV 21-22 · 2014
Cliente
Empecemos con la
Fase II
22. MADRID · NOV 21-22 · 2014
Modelo de datos
El cliente nos pide nuevas funcionalidades que debemos incorporar
en el proyecto:
● Definir el alcance de las nuevas funcionalidades
● Comunicarse a través de Pivotal
● Comunicarse con Diseño
● Realizar las nuevas migraciones
● Integración con diseño
● Probar que todo está bien
● Codeclimate nos puntúa la calidad del código
23. MADRID · NOV 21-22 · 2014
Modelo de datos
● Modelado de datos rápido
● Rapidez de un CMS
● Potencia de un framework
● Perfil site-builder
24. MADRID · NOV 21-22 · 2014
Modelo de datos
Grado de dificultad
Nota grado de dificultad: 1 fácil 5 complicado
25. MADRID · NOV 21-22 · 2014
Desarrolladores
Pero… ¿Esto es fácil?
26. MADRID · NOV 21-22 · 2014
Desarrolladores
Cuando aprendemos un nuevo lenguaje como RubyOnRails
● El comienzo si ya dispones de experiencia no es muy
complicado
● Te facilita la creación de proyectos.
● Existen foros de la comunidad
● Actividad en twitter
● Gente muy abierta
● Comparte y aprende
27. MADRID · NOV 21-22 · 2014
Madrid.rb
Group.new(
name: "Madrid.rb",
google_group: "madrid-rb",
twitter: "madridrb",
vimeo: "madridrb")
¡El último jueves de cada mes en el Irish Rover!
28. MADRID · NOV 21-22 · 2014
Desarrolladores
SPAM!!
● Poco intuitivo
● Sencillo y rápido
● Una GRAN comunidad que apoya
● Drupalcamp Jerez 2014
29. MADRID · NOV 21-22 · 2014
Desarrolladores
Grado de dificultad
Nota grado de dificultad: 1 fácil 5 complicado
30. MADRID · NOV 21-22 · 2014
Conclusiones
● No hay una herramienta mejor
● Sé pragmático
● El expertise es importante