Jumping on the RailsJune 21, 2009
Well on my journey to improve my programming skills & again purely because I’ve been getting tired of using PHP for all my solutions, I recently decided to delve into Rails.
I’d been pointed to it by Ekerete Akpan an old work collegue who uses it quite extensively with his own projects.
I’d resisted from learning the language initially primarily down to the fact that the language seemed to be quite basic, in that I was correct, something I’m regretting as I find it now to be one of the best features.
I initally wanted to create a frontend for Chatterl, using ActiveResource. After fighting with it for a week or so, I ended up scrapping that notion and moving on to another project idea I had kept aside for a little while (Solvius).
I won’t go into detail on the goals of Solvius as the site is already live & a brief summary of the webapp can be found here.
The first thing I did was get my self a copy of The Rails way, I have to say I’ve not used the book much over the past month but it was indepensible when it came to helping me learn the basics. I had also picked up copies of ‘Agile Web Development with Rails‘ & ‘Rails for PHP Developers‘, though these proved to be little help & ended up being frustrating reads as they both presumed the reader had basic knowledge of programming methodologies.
By this time I had built the basic functionality of Solvius, allowing users to join the site and create and solve problems, using the active as authenticated plugin. My journey was far from over, I wanted to add ReCaptcha & a little JQuery to the mix. I got a little excited thinking that I could get my hands dirty but low and behold there were plugins for both of these features also . Such things are a rarity in the PHP world and having spent a great deal of time there, the PHP side of me felt robbed, whilst the code monkey in me was pleased that I could deal with more direct problems.
All though my inital experience was a pleasant one, I wanted to improve on it further. I’ve been using TDD for a while and played around with Test::Unit for a bit but wasn’t really happy using it, I decided to go for my next book purchase ‘The RSpec Book‘. I have to say reading that was an eye opener, not only from a BDD newbie stand point but also from a coders point of view, the book helped to improve my coding style and gave me a few cool ideas to play around with when I get the chance.
I started introducing RSpec & cucumber into Solvius about a week ago & already started to reap the benefits, primarily being able to implement functionality from a users point of view rather than my techie one, along with having a point of reference and an enhanced sense of confidence in implementing new functionality.
I’ve read ‘The RSpec Book‘ a couple of times now and will hopefully get the chance to use Cucumber & RSpec in my next pet project. For the moment though I’ll focus my time on improving Solvius & improving my Rails skills in general. Although it feels as if I have picked up the framework pretty quickly, there is still a host of things to grasp & learn.
I’m hoping I’ll have enough time to create a serious of posts, outlining the whole development process using Rails & the tools I’ve picked up over the course of my Rails journey.