RailsRumble 2008 9
We just finished the Lyricist application for RailsRumble 2008 with 3 other Intridea folks. Here are some observations:
- Keep the idea small and achievable – There are only 48 hours, so you can’t build the next Google. And there’s pressure. Try to keep your idea small and make sure you can accomplish it. You have to deploy a finished product in order to have any chance of winning. So stop day dreaming about cool extra features because you won’t get that implemented.
- Prior planning is the key – We barely had any because we had decided on the idea the day before the rumble began. When the competition started, people don’t know who’s doing what and it was kinda a mess. Fortunately we had a campfire room where all conversation happen, so we can kind of iron out the issues. However, better preparation and team cohesiveness would have helped a great deal in communication.
- Deploy early – I’ve seen too many deployment problems came up before, so I took the initiative to make sure we could deploy as soon as the competition began. It helped tremendously because we never had to worry about if we could deploy before time expired. While you are fixing last minute bugs and the pressure, it would have been tough to set up a server and deploy flawlessly.
- A lot of scaffolding – I took full advantage of Rails scaffolding. There’s just no time to reinvent the wheels when all the restful model and controller methods are already available with just one command. You use plugins and gems for the same reason, right? So, don’t be stupid.
- Conflicts – The bigger your team, the more conflicts there would be when people check in and out. We were writing a new application, so people were editing the same files. Now, if you organize and assign work to people as in a regular project, conflicts don’t usually happen and even if they do occur, it is trivial to resolve. However, when you are rumbling, you will step on one another’s toes. I can guarantee you that.
- Forget about writing tests – Look, I am in support of agile and test-driven development, with one exception. That is, you are not participating in RailsRumble. There’s just no time for it. If you are a good enough programmer, you can build a small application with no tests. If you can’t, I don’t want to work with you. Writing tests for a new application starting from scratch in just 48 hours is simple not feasible. No bargain!
- No ticketing system like Unfuddle and Lighthouse – One team member had tried to use Unfuddle to create tickets to get ourselves more organized. While it was a sincere attempt, it simply didn’t work. There’s no time to accept a ticket, create a new ticket, ... We pretty much abandoned it soon after we started.
- Nice to have a designer: – It is very nice if you have a designer on you team because it’s hard to wear two hats in 48 hours. Design work can draw your focus away from development.
Now that I’ve given you my insights for next year’s RailsRumble. As a token of appreciation, please vote for us!
UPDATE 2008/10/20
One more thought on RailsRumble the day after:
Numerous projects that I worked with before never deploy quickly, let alone in 48 hours. I think it’s refreshing and rewarding to have something built and deployed so quickly. It is true that we have to cut many features in order to deploy a first version, but lesser is better than never. I think many other projects can try to deploy early and often and just go through more iterations and get feedbacks from users and customers. The whole application doesn’t need to be finished. Even if you only have login and logout, you can still deploy. Add the next feature, deploy again. That way, you aren’t keeping the features to yourself. You can get feedback from users to see what improvements they are looking for and may even lead you to implement the real features that they truly want.
Trackbacks
Use the following link to trackback from your own site:
http://blog.rayvinly.com/articles/trackback/71
-
Paris hilton sex tape. Free paris hilton video. Paris hilton sex clips. Paris hilton. Paris hilton nude.



Testing? It saved our bacon several times this week-end. No doubt there are bugs left, but I’d be a nervous wreck if it weren’t for our tests.
Lyricist is a great idea; I’m pretty annoyed at all those crappy sites too.
I’m with ya on everything but tests. The right tests make sure one little change doesn’t snowball into hours of time wasted tracking down an elusive was-working-before-and-nothing-changed bug.
Dan and Ted,
I definitely see your points on testing. I guess rumble tests can go either way for every team. I hope you both had a great time!
Now thinking more about it. Maybe tests are more feasible if we had better preparation, but well… :)
Well, some of the apps are no just original as they pretend to be. Just compare Quotagious to the previously launched www.Quotag.com … that’s something not very innovative, isn’t it?
I agree with everything … except the tests. This is the same flawed logic that falls in to EVERY application. Not just because you only have a weekend.
Regardless of how much time you have on an application … you’ll always here, “We don’t have time for testing. Just get it done.” I personally work faster when I write tests and don’t have to worry about going back and forth from the editor to the browser.
I will agree that writing tests on the views would have been a bit of a challenge though.
Excellent writeup Ray. I also agree with everything, except the part about testing :). Like Bryan, I also believe that I work faster whilst writing tests. BDD is really a fantastic way to specify the behavior of an application before implementing. Just my two cents, though.
Thanks for your thoughts, and glad you participated and enjoyed the event. Stay tuned for voting details, coming soon!
Yikes; no testing sounds like a recipe for disaster. Maybe if you had more time than 48 hours you could get away with verifying things manually, but for something that has to be done quick, they’re essential for making sure stuff still works.
u3fop6wj1frybovf