ruby! rails! kids! oh my! … and other fun from terry heath
RSS icon Email icon Home icon
  • Rails Rumble Recap

    Posted on August 24th, 2009 terry 1 comment

    @meezy and @jcooksey came down over the weekend so we could all hang out and compete in Rails Rumble. It was a lot of fun, we had good food, got a lot of coding done, and even tried to impose some culture on Cooksey.

    We made a college football pickem game, similar to the one I ran a few years ago, but with lots of improvements and social networking hooks. Check it out at pickem.navoty.com.

    We managed the scope really well and dropped features when we realized we wouldn’t make it otherwise, and as a result got in our last minute fixes and polishing and tagged and released with 12 minutes to spare. The guys running the competition did a great job providing tools to help confirm what things needed to be done to be eligible when things closed.

    Onto a postmortem:

    Bad

    • We thought the competition started at midnight Saturday, not 7pm Friday. By the time I realized it, Cooksey and Meezy were about to leave Dallas, and there wasn’t any way we were going to be able to compensate. Further, we went to go see Inglourious Basterds Friday night, which I think was worth the lost time.
    • All of us had used git, but mostly in non-conflicting or single-user ways, such that we got to learn how to deal with conflicts over the weekend. Being more familiar with it would have saved us a little time.
    • There’s a bug on the Twitter feed widget, where our code isn’t hooking up to memcached correctly. We introduced memcached with about 45 minutes left, because just from our viewing, we’d reached Twitter’s API limit. This will be fixed when we get out of competition mode.
    • Rails has changed a lot, and Cooksey hadn’t done Rails coding in a few years, so lots of times he’d be like, “wtf is this voodoo?” I think that’s good in that Rails has been maturing rapidly, but if you put it down for a few months, the learning curve grows rapidly.
    • Facebook sucked 3 of my hours on Sunday. I tried to use a different library, Facebooker, instead of RFacebook, and the documentation was terrible. Most of the writeups I’d seen were out of date and using the old Facebook API. I should have played with Facebook ahead of time to know what I was doing.
    • Cooksey hasn’t seen Princess Bride or Big Lebowski.

    Good

    • Lots of the tools we needed, we’d had experience setting up, so it was easy. Beanstalkd, Monit, Passenger, Apache, Memcached (it’s running, even if we’re not using it right for the Twitter widget), Twitter OAuth, all went really smoothly and were done in no time.
    • Most of the plumbing and real coding was done Saturday, so we had lots of tests written then. Most of the front end work was done Sunday, which was nice, because we weren’t introducing regressions in the codebase and continually banging on that and wasting time.
    • Scope was managed really well, and we even realized there were parts that didn’t need to be completed until the season actually starts, so we could justify pretty easily pushing those features back a week or so.
    • We used campfire for pasting, but that’s about it. I requested that anyone who wanted to compete be in the same room, because I didn’t want to waste time with IM or whatever. It worked really well, because jumping over to someone’s computer screen or just asking “what are you working on?” is that much faster.
    • Pen and paper proved to be fantastic tools for tracking who was working on what and our progress. There’s a lot to be said about a tool that lets you draw where you want, without any rules. I think I’ve blogged about really good screwdrivers before, though, so I won’t repeat myself.
    • I really like the app.

    We’re going to introduce a few new features after the competition is over, move it to a permanent (EC2, we think) host, and then you’ll all have a solid pickem site for years to come. Unless you want to win, which is unpossible, since I’m playing.