The Eclipse Effect

The hidden cost of cheap tools

I work for a company that’s been undergoing a good deal of change—change for the better, actually. Many of you may be familiar with the famous “Joel Test”, as good a way to judge a development environment as any. Well, when I started working there we scored a 3 out of 12. Not good, but now we’re at seven, and solidly on track for nine. So let me just say three cheers for my work environment. From what I can tell, it’s rather rare for a company to actually sustain any effort at improving how it makes software.

But there is one thing that’s bugging me. Point nine on Joel’s test is “Do you use the best tools money can buy?” In our case, the answer is a flat no.

Okay, so it’s a common complaint. But I think I may have identified (or maybe I’m just getting ahead of myself) a new phenomenon in managerial thinking. I call it the “Eclipse Effect”. It’s like this:

1. Eclipse is a kick-ass tool. (I’m not about to argue this point; it is simply not debatable)

2. Eclipse is free. FREE!

3. Eclipse is open-source, and endlessly extensible.

4. Eclipse is free. FREE!

So, management thinks, this open-source thing is pretty damn nice. Why, open-source tools are great! Why pay for development tools at all?

Uh-oh.

Why? Because there’s no equivalent to Eclipse in the world of, say, bug-tracking software. (And this is no slam on Bugzilla—it’s a fine tool. But Eclipse is in a class of its own.) As it is, Bugzilla would be a huge improvement over the bug tracker we have now… but we can’t switch. We’ve been trying for well over a year now to get management to loosen their grip on this one, and so far, no dice.

I’m not going to bore you with details. Let’s put it this way: our current system blows, hard. It’s a source of daily frustration and the entire development team hates it.

To be fair, management has reasons for not wanting to switch:
1. It’s the system we’ve had in place for years and years now. It contains a lot of history (in some cases, the only history) of the development of our flagship product.
2. Everyone’s used to it.
3. (The kicker) It works well enough, and besides, it’s free.

It’s the third argument I take exception with. No, it doesn’t work well enough, and that fact makes it “not free”. Because it costs time. When the ‘reporting engine’ doesn’t report, when the ‘perl-powered regular expression search’ fails to find, oh, say, my name anywhere in the issues I’ve created, when search-by-category capriciously drops issues, it costs the company. It costs my time, and the time of whoever I have to bother with questions that would be easy for me to look up if the damn tool was reliable.

So what am I saying, that Eclipse is somehow responsible for this? Kinda, only kinda. I’m thinking that the Eclipse effect has something to do with it. Hey, at least it makes for a catchy title. And though the name may be imperfect, and the diagnosis may be wildly inaccurate, it’s a start. If we as developers start fulminating about the Eclipse Effect like we do with our diatribes for/against SOA, XML, or XP, maybe we can get somewhere. Or at least some decent tools.

I had a similar experience

except with Mambo and a client. The client asked for an equivalent to a *highly* specific module that exists in another Open Source Application (ZenCart). I told him that I wasn't sure there was a comparable component or of its maturity/quality, but I would look.

His response: "Well, if there's not, can't you just write it? It is Open Source and you are an Open Source developer, right?"

Arg.

hacking a framework

Keith,
Apropos of hacking a framework: I see you're using Drupal for this site. I've been thinking of using it for a side project (a literary community site). I've also looked at CivicSpace, which is built off of Drupal if I recall correctly. Any particular recommendations? More or less I'm looking for something along the lines of Codesnipers--(I love what you've done with the place, btw)--but focused on geographically local writers & poets and people who love books. Thing is, I'd like members to have their own blog/sandbox, but also a wiki area for collaborative work.
I've got to do this in my (very) spare time, so good documentation on the base framework is a must. Given that I have essentially forever to do this, but only a little time each week (~ 4 hrs) should I even bother with the 'wiki' part?