iie labs

Lessons learned about Rails from BugMash 09

Posted over 9 years ago by Philip Ingram

BugMash Background

Occuring in early august of 2009, BugMash09 was a Rails bug squashing event hosted by Railsbridge. The event had many sponsors offering various gifts to those who contributed. Many thanks to the sponsors for providing a great event.

The BugMash was put on to help clean up some of the issues that were outstanding in the Rails lighthouse issue tracker. Participants were able to verify patches, verify issues, submit patches for those issues without patches and comment on various tickets using the +1 (I like it) or -1 (I no likey) notation.

Lessons Learned

Where to begin. Well I’ll begin at the beginning…

Git Branching

In my own projects, i’ve never had the need to stretch my git_fu. Verifying Rails contributions and such, definitely gets your git chops up. I’ll be using branching from now on in my own projects, so that i can try out things, without fear of losing the last place that i had solid code.

ActiveRecord’s test suite is HUGE

Boy, one thing can never be said about activerecord… it is not well tested. I’m sure rcov would give it the thumbs up.

There are so many different models, and so many different fixtures, and then the tests… makes a guy’s head spin. Actually it may have.

Test::Unit is king

There are a few different testing frameworks, but if you want to understand and increase your test::unit mastery, take a peek at the rails source code. I could be wrong, but it appears Mocha is the only external gem needed for testing.

ActiveResource’s tests use Http::Mock which was pretty cool. I’d love to use that in a few of my projects, and i’ll be checking that out shortly. I’d never even have known about either of those ARes or the mocking library, had it not been for a few Active Resource tickets i worked on.

More indepth knowledge of Rails Methods

While slashing away at the rails core, you are peering behind the curtain. These methods are no more complex then if you were to write them yourself, for the most part (alias_chaining aside… i’m still freaked out thinking about it).

Showing a more human side to the rails methods we all take for granted, actually will help your own knowledge of your craft.

One shouldn’t wait for the next BugMash to contribute again

Some of these tickets were sitting there for awhile. As rails becomes even more popular. issues will creep up that need to be squashed. It behooves everyone who can, to contribute every month, for a couple hours, to simply do what the BugMash asked. Verify and patch where you can.

Summary

If you are at all interested in contributing to rails core, and are unsure if you can, the BugMash is a great lead in to doing just that. Also, the camaraderie of liaising with core contributors helps put a human face to the rails framework.

Happy Hacking.

Comments

blog comments powered by Disqus