The Ruby Community and Education Today

I was listening to a recent Changelog podcast on Ruby Off Rails. Jesse Wolgamott spoke in detail on teaching Ruby. He found that when he  tutored individuals on Ruby on Rails many students were more interested in the Rails framework, which makes sense considering the market and jobs available. He went on to explain that when you are focused on a framework more than the language you ultimately end up doing yourself a great disservice. Rails is a great framework and it allows you to rapidly build massive projects but it is very opinionated and it does tie your understanding of problems to ‘the Rails way’. Trying to go outside this paradigm is difficult until you have a strong knowledge of the underlying language. Additionally things like creation of gems becomes less arcane when you understand Ruby as a language. It is rare that someone comes along who is an expert at coding and teaching. Jesse seems like one of those guys who knows his code and is easy to learn from.

Additionally, I was pleased to see that someone like Jesse is using a mentoring model similar in some ways to my experience on Ruby Learning. I am a perpetual learner and my learning journey with Ruby started about 3.5 years ago. The first project I was thrown onto was a monolithic Rails 2.x application with a team of about 30 or so developers. At that time I had never heard of Test Driven Development or Paired Programming and I had only started using Git a month prior to that. Fortunately I was surrounded by talented and experienced developers that guided me through the processes. It was such a productive and creative time in my career.

Prior to Ruby, my world was solely Design and Front End Coding. I understood static CSS,  JQuery, MooTools, JavaScript, and HTML. In this respect I complimented the Rails team fairly well and helped define the shape of the user experience on the project.  After learning CSS preprocessors like SASS, NodeJS, and JavaScript Testing it became apparent to me that my role on the team was an evolving one and I needed to know more of the full product development stack.

I ended up using Ruby Learning and I have to say that I loved it for many reasons.

  • It was structured and detailed
  • It was affordable
  • It involved Github and reviewing code transparently for the whole class
  • My instructor had passion and went above and beyond what I expected

You get a certificate too but I really could care less about that. The one thing that stood out to me from Ruby Learning was that my instructor, Victor Goff, was willing to get on Google Hangouts and pair program with me on the examples and projects we had. He would challenge me to look at the code differently and encouraged good coding practices. I wanted to learn more and be better. I found I was more focused when pairing and was more apt to take the ‘test first’ approach to the code. The total cost for this class was exponentially much less than I would imagine such a mentor would charge me for a single hour of training.

Ryan McGeary, founder of BusyConf, is another inspiration. His company has several interns now who are in high school. These guys are learning from him how to approach the business of development, how to program, market, solve problems, and contribute to the open source community. I recently reconnected with Ryan at a meetup  he helps run in Leesburg, VA. I asked him if he had been contributing to open source projects lately. His response was that he has been making at least one commit himself per day! My jaw dropped. Keep in mind that Ryan is a family man, he runs his own business, and he is a triathlete. How does one find the time? As Vader would say…..”impressive…most impressive”. What’s more is that his interns see that passion and dedication and learn from his leadership and initiative in this regard.

Rubyists like Ryan, Jesse, and Victor speaks so much about the Ruby community and what they have done for the education industry. The Education space has changed so much but there are so many opportunities out there to share and learn these days. Having taught graphics and development at tech schools I feel that the landscape has changed so much since then. Students used to be crammed into 8 hour classroom courses with expectations of learning products and skill sets in that short time frame. Over the past few years the teaching approaches and models to training technology has improved so much. I am excited to be a student again and these Ruby heroes have inspired me to get back to teaching in this bright future. Thank you to Ryan, Victor, Jesse and all the others who have helped shape this new frontier.