It seems like it happened yesterday. I arrived at the flat in a crumbling tenement located in the Old Town of Wrocław and my journey into the Ruby world began. The community was already large and very active, so I wouldn’t call myself Columb, but—at least—I can tell you about my first year experience and share both bright and dark sides of the story.
I didn’t join the awesome Monterail guys as a complete novice. I was working in the industry since 2007, mostly as a PHP programmer. As the world was moving forward, I felt like PHP kept standing in the same place, and to stand still is to move back.
While I was looking to switch, I glanced off at Python which I was already familiar with. My colleague convinced me that I should check the programming language called Ruby, which was similar at first sight. So I put all one’s eggs in one basket, bought Programming in Ruby 1.9 and… actually fell in love with it.
Jumping on the bandwagon
I learned a little about Ruby itself, Rails and a few other popular gems.
After two or three months of working at Monterail, I felt like a fish in the water. I spent a lot of time on reading before, so I already knew about the two paths for everything (even developed some preferences) and was able to omit the biggest headache during the real work.
To make things more complicated, Rails 3 was still quite fresh subject at the time. It was quite controversial because of its asset pipeline or including CoffeeScript by default. Blogs were flooded with laments that Rails wasn’t for beginners anymore.
From my point of view, diving right into the version 3 was an advantage. Improved structure and modularity, Bundler, and all that hot additions weren’t really invasive, even though they were problematic for many. I could feel the difference when I was fixing something in an old project based on Rails 2—it even felt like hitting the wall in couple of places.
I don’t need to tell you about differences between Ruby and PHP language, but I’ll compare their communities.
The most impressive thing to me was thinking about an architecture and patterns: DCI, Service Layer, Active Record madness, modularity, the rules of writing clean code… I’ve read about dozens of articles on the topics—all of them came from the Ruby community. It really impress me that whole community loves to learn new things and evolve constantly. On the other hand, things that the PHP world offered were just tips and tricks or practical advices for specific cases and tools.
Open Source is another big subject. PHP gave birth to many well-known free products: phpBB, WordPress, Joomla… Comparing them and the rest of open source PHP projects to Ruby’s, they might look like a midget. Thanks to GitHub, sharing source code became really easy; the Ruby community spread over it and the boom started. In result, we have better tools, better code, better skills, and—of course—the boost over our competitors that write in PHP.
When talking about sharing skills, I can’t just not mention RUGs and conferences. I’ve known about just one PHP conference and I’ve never heard about any local user groups. Wrocław has the awesome DRUG and we know many other RUGs in Poland. Yet, I’ve visited three Ruby conferences so far: RuPy, wroc_love.rb, and EuRuKo), but you can find them everywhere, every month!
Did I mentioned testing? Well… let’s not hit somebody when he’s down.
I’m looking forward to the following months: Rails 4, wroc_love.rb 2013, DataMapper 2, discussions about concurrency, single page apps or making model layer thin. Even if I quit this community one day, I would always think fondly about Ruby, Rails, and whole community just for fun, some fresh air and to push me forward.
Thank you, Monterail’s founding fathers, for making me the part of the team and making me work in this awesome community.