Últimamente he estado dedicando horas a Ruby on Rails cosa que anteriormente había hecho
los típicos ejemplos que corren por internet y el ejemplo del libro “Agile Web development 2n Ed”. La verdad es que los ejemplos son muy espectaculares ya que con los generadores te aparece la aplicación prácticamente hecha, pero en realidad creo que pocos programadadores de Ruby on Rails los utilizan. Lo que toca es aprender de verdad Rails y enfrentrarse a algún proyectito propio.
Por tanto me encontré con varíos obstáculos en el camino y creo que he avanzado mucho gracias a varíos aspectos que quiero compartir:
- El gran libro introductorio es “Agile Web development 2n Ed” de diversos autores encabezados por Dave Thomas y David Heinemeier Hansson publicado por Pragmatic Programmer. Este libro te ayudará mucho a empezar.
- www.rubyonrails.org . Explora todos los recursos que te ofrecen. Hay muchos.
- Busca recursos en la web. En el buscador Google encontrarás muchísima información y webs interesantes. Yo he creado un buscador (Google Search Engine) que me ha ayudado mucho ya que utiliza las fuentes que yo voy recogiendo.
- Utiliza unas buenas herramientas para agilizar el desarrollo. Estas son RadRails como IDE, InstantRails para facilitar la instalación, mySQL Tools y mTail para ver mejor los logs de desarrollo. Si os atrevéis con SVN ( control de versiones) podéis usar Tortoise SVN (ya lo comentaré con más detalle en otro momento).
- Busca ejemplos más completos. En mi caso he aprendido mucho al diseccionar Simplelog pudiendo entender mejor muchas cosas. Esta aplicación es un ejemplo sencillo de software de Blogs que puedes descargar y utilizar. También puedes mirar Typo que se instala con InstantRails.
- Aprende Ruby. Si no entiendes Ruby no entederas Ruby on Rails. Es imprescindible entender como funciona, las clases, los objetos, el lenguaje y su interacción. Haz ejemplos y practica con las clases. Me ha sorprendido la genialidad de este lenguaje y las posibilidades que tiene. En el punto (4) me recomendaron un libro que se llama Ruby for Rails (Black Book de David A.Black). En este libro te muestra que es Ruby, como entenderlo y como Rails está hecho de Ruby. Genial para aprender buenos conceptos y entender como se interconexionan todos los elementos.
- Dejate aconsejar por los que saben y preparate para recibir collejas. No es broma este punto. Estuve en el canal de IRC de Ruby on Rails de irc.eu.freenode.net. Allí me machacaron con mucha educación y me dijeron que debía empezar por aprender Ruby antes de hacer preguntas tontas ( punto 3). Me recomendaron un buen libro para ello y encontrarás gente que sabe muchísimo y está dispuesta a responder preguntas inteligentes. Eso si, todo en inglés.
- Aprende los lenguajes de la Web. A no ser que tengas un diseñador web como colaborador no te queda más remedio que entender y dominar Html, CSS, XML, etc…. Aquí no puedo aún recomendar una sola cosa ya que yo principalmente ha sido gracias a muchos recursos que he encontrado a través de Google en internet. ( Estoy abierto a sugerencias)
- Como todo en esta vida ponle horas y ganas. Verás como tu esfuerzo tiene pronto su recompensa, aunque hay momentos de desconocimiento. Además la filosofía de desarrollo de esta framework hace que vayas avanzando y viendo los resultados de forma Ágil.
Aún me queda mucho para aprender y horas que dedicar. Pero me siento satisfecho de los resultados que estoy teniendo por las horas que he dedicado.
Espero comentarios y aportaciones a este artículo. Seguro que hay otras experiencias y otras facetas que se podrían tratar. Como por ejemplo:
- ¿Ahora ya domino Rails y ahora como hago un buen diseño de una web? ¿Alguien tiene la respuesta?
Espero aportaciones…..
Popularity: 3% [?]


5 Comments
at 15:59 :34 - 21st noviembre 2006 Permalink
Me gustaría poder responderte a tu pregunta final, pero creo que todavía no he llegado al nivel de dominio necesario
Sólo quería comentarte que tus consejos me parecen más que acertados. Yo también he seguido un proceso de aprendizaje muy parecido:
- Empezé leyendo y practicando con el libro “Agile Web development 2n Ed”.
- Me di cuenta que ya no estoy acostumbrado al “modo consola”, así que busqué algún IDE para Rails y estoy usando RadRails
- Posteriormente me di cuenta que me faltaba algo de base para poder juntar en mi cabeza y comprender todos los conceptos de Rails. Ahora estoy leyendo “Ruby for Rails” y tengo que decir que es como si alguien hubiera puesta la llave en el codificador…Ahora entiendo muchas de las cosas que antes eran cajas negras o hacía porque lo había leido.
- El siguiente paso es desarrollar mi propia aplicación web. Estoy en ello, he avanzado bastante en la parte de Ruby on Rails, aprendiendo un montón de cosas a porrazos, pero ahora me he atascado un poco en la parte de diseño.
Yo sólo añadaría un consejo más a tu lista:
- Lee blogs (Como este). Los hay muy buenos especializados en Ruby on Rails, aprenderás cosas y verás ejemplos reales de como se solucionan problemas en Rails.
Saludos.
at 22:06 :23 - 22nd noviembre 2006 Permalink
Anievil,
Me alegro que compartas la opinión y te doy la razón con lo de los Blogs. Cualquier cosa no dudes contactar conmigo.
un saludo,
Genís
at 23:46 :38 - 26th noviembre 2006 Permalink
Y que te parece en general, es tan productivo? (entiendo perfectamente que no 10 veces).
Soy programador de .Net y ayer estuve en el conferencia Rails.Estuv muy bien,pero bueno, todo el mundo habla muy bien de la tecnologia que usa.
A ti que te esta pareciendo?
Gracias.
at 0:02 :05 - 27th noviembre 2006 Permalink
Oscar,
Te diria que tiene puntos a favor e incógnitas desde mi punto de vista. Para empezar cuando ya empiezas a tener la mente en el “chip” de Rails te das cuenta que la mayoría del tiempo te puedes dedicar a pensar en la aplicación y no en como desarrollarla. El desarrollo se convierte en muy sencillo y el MVC te quita muchas líneas de código y problemas por resolver.
En mi caso estoy desarrollando una aplicación que ya lleva 11 tablas y con relaciones entre ellas. Con mi experiencia en .NET el simple echo de crear la administración habría sido un gran trabajo ( yo he desarrollado bastante en asp.net) . En este caso ha sido trivial.
Además los cambios son fáciles. A medida que vas desarrollando una aplicación vas descubriendo nuevas cosas que añadir o modificar. Es fácil y en poco tiempo lo haces. En .NET si no tienes claro el desarrollo como ha de ser desde el principio se puede complicar mucho si no eres lo suficiente estructurado en tu código. Por eso estoy de acuerdo con la filosofía de “Agile Programming” ya que es fácil con este sistema. El ensayo error y prototipaje es rápido y sencillo.
En cuanto a incógnitas las principales están en como se comportará en un servidor real sometido a bastante carga y que requerimientos de software necesitaras. Ya que claramente es más pesado que .NET framework.
De todas formas yo sigo aprendiendo y jugando con mi proyectito y ya veremos hasta donde llegamos. Pero una cosa curiosa es que la parte que más me preocupa de mi proyecto es el diseño web ( gráficos, html, css, etc…) para lo demás voy consiguiendo mis objetivos. ¿curioso no?
Vale la pena probarlo.
un saludo y cualquier cosa no dudes en contactar
at 15:51 :18 - 27th noviembre 2006 Permalink
Gracias por la respuesta Genis.
Yo ya estoy haciendo cosas y probando.Tengo un proyecto personal al 50% de desarrollo y he estado tentado de migrarlo completamente a Rails y asi ponerme al dia,pero va a ser que por ahora no.Me gusta el lenguaje y todo lo que plantea pero tambien es cierto que hay ciertas ya muy desarrolladas en .Net (como el tema de los providers y la seguridad,enterprise library etc) que lo hacen tambien muy potente.Con un buen ORM creo que .Net es tb un lenguaje super productivo.Pero tambien pienso que para proyectos de complejidas media (el 90% de los proyectos web) usar Java o .Net es matar moscas a cañonazos, son potentes pero lentos de desarrollar.
Asi que mi opcion creo que sera seguir con .Net y a la vez entrar en Ror, e ir usandolo para pequeñas cosas.
Gracias otra vez, saludos.
Post a Comment