Vote Up
7
Votes
Vote Down

When a FOSS project’s backlog of bugs becomes too long and the bugs that need fixing are too boring there’s only one thing that project can do; Start from scratch.

New projects get all the glory but old projects can sometimes do the same by rebooting themselves. Who cares if the new version doesn’t solve any of the problems the old version had; This time we’ll get it right for sure.

To quote Joel Spolsky from his excellent article, Things You Should Never Do, Part I

“You are throwing away your market leadership. You are giving a gift of two or three years to your competitors, and believe me, that is a long time in software years.”

Related Trademarks

#1 Posted by masterLoki on Jun 7, 2011 9:55 PM

XMMS and its succesors, any new distro, all clones/forks of suckless.org projects.

BASH... Oh boy, here we go

#2 Posted by kurkosdr on Jun 8, 2011 3:53 AM

Of course, another solution is to “move” the bug to another milestone.

For example, forced subs in VLC have being moved from 1.0 to 1.1 and now to 1.2. Good luck learning Quernya if you want to watch lord of the rings, as the DVD uses forced subs for the elvish dialogue.

In fact the devs of VLC never fix anything, they just close “irrelevant” bugs (aka bugs that don’t happen every time) and duplicates, and proudly display it as a closed bug. Everything else gets moved to the next milestone.

This is why, everytime a new milestone in VLC gets created it ALWAYS starts with 31 bugs and 28 features.

Same for almost any other FOSS project not funded by a big corp.

#3 Posted by administrator on Jun 8, 2011 11:52 AM

In the original article, the guy who opened the bug was told to re-open the bug in the new version if it still existed. They didn’t move anything.

#4 Posted by DrLoser on Jun 10, 2011 4:57 AM

There’s actually a famous JWX article on the starting from scratch thing as well … or was that the Joel follow-up. The birth of Mozilla, anyway.

Speaking as a developer, I absolutely hate starting from scratch. Part of it is the throwing away of stuff that works (not that this is an issue with most Linux desktop projects), but most of it is the utter pain. Recreating infrastructure really isn’t much fun.

The absolute best fun you can have as a developer is to take a well-designed product or system and add new features painlessly to it. The most fun I’ve had recently was adding OpenCV face recognition to a GUI: man, that stuff is seriously good.

Of course, none of _that_happens in LoonLand, either. I think the term “well-designed” sorta gives it away.

#5 Posted by DrLoser on Jun 10, 2011 4:57 AM

JWZ, sigh. Moar cawfee needed.

#6 Posted by administrator on Jun 10, 2011 10:44 AM

It’s true. While starting from scratch lets you fix all the nagging issues you know about, it introduces plenty you didn’t think about when migrating to a new design.

It’s like childbirth; you forget about all the pain and just want to have another baby.

#7 Posted by HerbertK on Jun 11, 2011 1:06 PM

Just for the sake of completeness, the article about major software development mistakes from Joel Spolsky:

http://www.joelonsoftware.com/articles/fog0000000069.html

#8 Posted by DrLoser on Jun 11, 2011 3:20 PM

Ta!

#9 Posted by administrator on Jun 12, 2011 4:42 PM

“You are throwing away your market leadership. You are giving a gift of two or three years to your competitors, and believe me, that is a long time in software years.”

That is a beautiful quote from Joel.

You must be signed in to leave comments.