Rails Rumble

Posted by chris
on Monday, October 15

Last month I competed in the first annual Rails Rumble, a Ruby on Rails coding competition. The idea behind the competition was to design, develop, and deploy a fully-functional Rails application over the course of a weekend - 48 hours. Teams could consist of up to 4 people, but I chose to go solo. Why? Probably because I'm a little bit nuts.

My entry was Your Pet Records - an online repository for pet health information. This isn't a site that is too useful to the general public, but I could see it taking off in a niche market if presented correctly. The site allows users to create an entry for each of their pets and then add health information for their pets - vet visits, allergies, medications, and the like. The user can then create printable PDF sheets for pet sitters/walkers or if they move to a new vet. If developed futher, vets would be given logins and the ability to update information for any pets they saw in their practice.

The competition was a lot of fun. I got to play around with some new tools - like deprec for setting up the Rails stack. I also got to jump around from role to role - sysadmin installing a required library one minute, to designer tweaking some css the next minute, to developer coding up some new functionality the next. Of course that meant I probably didn't do too stellar a job on any one piece!

Some of the things I noticed as the competition went on, and my lack of sleep accumulated:

  • Browser Testing - I never really did test the site in anything other than Firefox on Mac until 11:30pm on Sunday. It was one of those tasks I kept putting off, figuring I'd get to it eventually. As a result, my site is broken in IE7. It looks completely fine - except for the minor glitch of not having a login box! Oh well - less learned - it pays to browser test early!
  • Subversion - at the start of the competition, my svn commit messages were quite detailed - "Added validations to pet model and enhanced error messages on pet creations page" - as the competition wore on, my messages eventally turned into messages like "changed some stuff" This would probably be more detrimental on a larger team.
  • CSS code - as I hacked away at the design of the app, I found myself more and more writing inline CSS code instead of extracting it into an external CSS file. I think this was because I didn't have a whole lot of time to plan out the CSS.
  • IRC / other competitors - it was amazing how helpful people were on the #railsrumble IRC channel. Even though we were all competing with each other, people were very quick to offer suggestions and links to resources whenever someone else had a problem.

Results were announced at Ruby East - I didn't place in any of the categories, but was happy with how my weekend project turned out - and I'd definitely do it again next year. Hats off to the winners and honorable mentions - there were some really great apps out there!

Comments

Leave a response