I have been involved with web software development for a few years now. Early on I learned the value of the web as a resource and spent plenty of time searching through documentation, articles, and blog posts, studying the methods others have used to deliver successful web applications. Certain practices and tools have stood out as I’ve taken in information on topics ranging from testing and web frameworks to proper HTML and CSS. One particular voice has been difficult to ignore: Ruby and its web development framework, Rails.
Always curious, I have worked through several of the more popular video and written tutorials that are prevalent online. I find them interesting, full of promise, and yet I feel they don’t give me the real picture of either Ruby or Rails. Sure, it’s cool that you can write your own trivial blog application in about 10 minutes, but I don’t write trivial software. Nobody cares about trivial software.
On the other hand I see respectable software developers using Ruby and Rails, so there must be more to it than what the typical tutorial shows. So, over the past few months I have been slowly digging into Ruby, working to really learn the language and not just the Rails framework. I want to see the whole picture of how to solve real, complicated problems using Ruby, and eventually Rails, and answer a few questions I have. Is it maintainable? Testable? Scalable? How does it compare to Perl? Would I enjoy programming in Ruby as much as I have enjoyed Perl? Layed out before you is part one: the beginning of my journey.