Mi Día en el Ruby Fun Day (1) La history de Stephen Anderson

Siguiente Post


El domingo pasado estuve en:


Ruby Fun Day


Y hoy espero estar en el primer día de la RubyConf Argentina (escribí sobre la conferencia en el post RubyConf Argentina 2011.)


Fue muy bueno el encuentro del domingo. Esta es la primera reunión RubyConf de Argentina, y este primer día pasó muy bien organizado. Se realizó en Urban Station lugar que colabora con la gente de Ruby en Buenos Aires, siendo el anfitrión de las Ruby Meetups mensuales, que se realizan en general de 19 a 21hs. La conferencia de este martes y mañana miércoles se hará en la Ciudad Cultural Konex.


El evento comenzaba 9:45, y llegué más temprano. Por suerte, ubiqué que varios asistentes y organizadores ya estaban instalados en un Starbucks a media cuadra. Así que ahí me encontré con gente conocida y con gente nueva. Uno de los que llegó a la misma hora que yo fue el bueno de Stephen Anderson, al que había comenzado a seguir en Twitter como @bendycode (notablemente, Stephen estudió español, habla con fluidez, su esposa es chilena). El fue mi instructor en la sesión a la que asistí: introducción a Rails. Es su primera vez en Argentina, aunque ya viajó varias veces a Chile. El es co-fundador de la empresa BendyWorks, dedicada a la consultoría de Ruby on Rails. Siguiendo el “eating the dog food” el propio sitio de la empresa está hecho en Ruby. Pueden ver la plantilla en


http://bendyworks.com/workers


Brad es su socio, y Nick fue su primer empleado. Si hacen click en cada imagen, tienen más detalle: me gustó que muestren el email y los “level points” de distintas cualidades, una empresa abierta:



Vean también su metodología:


http://bendyworks.com/methodology


Noten que trabajan de a pares. Es más, Stephen es fanático de trabajar de a pares. Leo en el sitio:


Steve has been pursuing software quality and value since 1992. This has lead him to Ruby, Rails, Behavior Driven Development, Extreme Programming, Software Craftsmanship, mentoring and teaching. His current focus in this pursuit is on growing the best damned development team at Bendyworks through selection, care and feeding, as well as providing an environment for success.


Y qué bueno! Vean su github de empresa:


https://github.com/bendyworks/


En el almuerzo, Stephen contó algo de su historia y de la historia de su empresa. Sus padres desde hace años se dedican al intercambio de estudiantes de todo el mundo. Entendí que por eso él viajó y estudió en Chile en los ochenta. Luego, volviendo a EE.UU., se dedicó a estudiar distintas cosas, pero la que finalmente le atrajo fue computación, en ese entonces había cursos de Computer Science (ahora hay más Software Engineering). Esto habrá sido por 1987, más o menos. Le enseñaban, por ejemplo, Pascal. Trabajó con C++, luego con Java. En 2006 estaba trabajando en un proyecto de Java, grande, más de cien personas, pero donde no podía hacer lo que quería. Así que decidió cambiar de rumbo, aún ganando menos. Encontró un trabajo, pero sólo le ofrecían el 80% de lo que él consideraba necesario. Así que negoció trabajar de lunes a jueves, y tener el día viernes para trabajar por su cuenta y completar el ingreso. No sabía cómo iba a conseguir que alguien contratara un programador un solo día. Mientras tanto, desde hacía unos años había comenzado a estudiar Ruby, y se encontró con un framework web, Iowa, pero no lo convenció. Finalmente, encontró Rails, y se enamoró de su simplicidad (lo entiendo, viniendo del mundo Java ;-). En el 2007 tuvo una gran inmersión en la comunidad Rails, liderando grupos de usuarios, listas, contribuyendo. Su esposa comenzó a sentirse celosa de esa tal Ruby ;-). Ante esa exposición, comenzó a recibir pedidos de empresas (incluso de empresas desarrolladoras en Rails), y se vió sobrepasado. Estrategia para “zafar”: les pasó presupuestos elevados. Así, una empresa se retiró, y otras tres también… pero la quinta aceptó ;-). Trabajaba en esos proyectos con su amigo Brad: descubrieron que ese nivel de dinero era más que suficiente para los dos, pero era más que razonable para la empresa contrantante. Pero ambos tenían sus trabajos estables. Así que trabajan en las horas extras, fines de semana o en el día viernes de Stephen. Un día (creo que en 2007 mismo), Stephen le dice a Brad: hagamos una empresa! Reacción de Brad: reirse, reirse y reirse, por la broma. Volvió a su casa, habló con su padre, y le contó la “broma”: su padre lo tomó en serio, le recomendó que lo pensara, “fíjate, puedes ser dueño en vez de empleado”, etc… Brad lo tomó como broma, porque él ya estaba en “el trabajo de sus sueños”. Leo en la página de la empresa:


Brad’s prior professional life was spent as an aerospace engineer designing space station life support and moon mining equipment. At one point he led the design of a prototype rocket engine. So although it only comes up when comparing extremely complex tasks to other extremely complex tasks, Brad actually knows rocket science.


Hasta estaba aplicando para ser astronauta. Pero ante la actitud de su padre, Brad lo pensó, se fue a dormir, y a la mañana siguiente llamó a Stephen y aceptó la idea/broma.


Así comenzó BendyWorks: el nombre alude a “bend”, a no ser rígidos en el desarrollo, se adaptables al cambio, abrazando lo ágil. Siguieron trabajando un tiempo como antes, pero con el advenimiento de la empresa, debieron tener oficina para poder crecer con… un empleado: Nick. Ellos contratan no por la necesidad de un proyecto, sino para tener a alguien con quien crecer juntos. Nick era un estudiante brillante. En algunas clases que daba Stephen, le preguntaban cosas que él no sabía, y Nick siempre respondía. Stephen también notó que Nick retenía todo lo que le llegaba. Así que Brad y él lo tomaron como primer empleado. El comienzo de la relación fue algo duro: Nick estaba acostumbrado (de sus anteriores trabajos) a ser el “programador héroe”, que se pasaba toda la noche completando un tema, y al otro día, somnoliento, presentaba el trabajo terminado y más. Stephen y Brad tuvieron que hablar con él: “Nick, no sigas haciendo eso, queremos que tengas una vida, que llegues a las 9 y te vayas a las 18, y que no programes así, que trabajes CON NOSOTROS”. Nick cambió a una actitud más ágile, pero aún hoy Brad se impacienta cuando Nick, en vez de llegar a las 9hs, llega… a las 9:10hs ;-)


Stephen también nos contó que Ruby es para él un hermoso lenguaje. Contó cómo desde C++ a Java a Ruby y con Rails, él fue REDUCIENDO el código necesario para tener una aplicación. Muchas de las cosas que contó (como el DRY, y el scaffolding de Rails) me hicieron recordar algunos puntos de por qué hacer el AjGenesis ;-) Vean que hay programadores generando código para Ruby on Rails en AjGenesis.


Me encontré por primera vez con @etagwerker, que tuvo la amabilidad de invitarme a estos eventos (y hasta lee mis posts! Una Tía Carlota! Hasta lee mis posts filosóficos ;-). También me encontré con asistentes a mis antiguos cursos, con @dseminara, con Alexei Agapov, con Mario Aceto, con Michel Marteens (espero haber escrito bien el apellido, que había conocido en un torneo de Go en Rosario), vi a @pablitux  de @kleer_la y a @egutter de 10pines dando otro taller más avanzado, un Coding Dojo. Y a varios más. A la tarde, llegaron (creo que de la conferencia similar a ésta en Chile) “the japanese crew” @nari_en, @eto and @yhara_en.


En próximo post comentaré brevemente qué hicimos en la sesión de Rails con el bueno de Stephen (@bendycode).


Nos leemos!


Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

This entry was posted in 10747, 16397, 3463. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>