May 19, 2008
On Friday, I downloaded and installed NetBeans 6.1. It had received glowing praise, especially from bloggers who use it for Rails development as I do. Most frequently noted was that it has dramatically improved its start-up time, and that was in fact my number-one beef with it. It was epochally-slow. Whenever I wanted to work on My Kids Library, I would double-click on the icon and go do something else for ten minutes while it woke up and crawled out of the vat of frozen molasses that it apparently sleeps in.
The installation went very smoothly, and as usual, I chose all of the installer's defaults. Double-click, click, click, click, click, you're done. Nice experience. I wanted to try out one of the new features about which I was most excited: the ability to start-and-stop MySQL from within the IDE. Previously, I'd been forced to open a command window and issue the commands to start-and-stop MySQL. It's a minor annoyance at worst, but nevertheless, not having to do it seemed very exciting.
It didn't work, of course, and I probably slumped in my chair a bit as I watched plenty of error messages scroll through to console window in which the command being executed was running. When the torrent had ceased, I found the first command that failed, and I saw immediately that the problem was that the space in between Program and Files had broken whatever was parsing the command, be it the windows shell or Ruby or whatever. Bitten again by whitespacey file paths. As I continued to explore this new version of NetBeans, I found many other features that were broken by the same problem. I was kinda pissed and very disappointed.
Now, there's plenty of blame to go around here. Microsoft, certainly, deserves a ton of crap for giving Windows a plethora of commonly-used paths that have white space in them: "Program Files", "My Documents", and the wretchedness-to-end-all-wretchedness, "Documents and Settings". Holy Dijkstra, what were they thinking?
Just as equally to blame is everyone who creates software for Windows. We are under no obligation to install our software into that foolish directory. Why do it, when it is a recipe for defective software? And moreover, NetBeans, you not only installed in My Programs (OK, fair enough, all the other kids are doing it...) but also fully voluntarily put a space in your own name. Yes, "NetBeans61" would have been absolutely, perfectly readable, but you chose "NetBeans 6.1" instead. Is this some kind of a stealth attempt to get me to try out OpenSolaris or something?
It's not going to happen. I am a happy little trilobite in the Microsoft ecosystem, and Windows XP is my OS. Rails is infinitely better than ASP.NET for web development, but C# pays the damned bills around here.
So, I uninstalled NetBeans 6.1 and immediately reinstalled it to "C:\NetBeans61". Everything works great. I love it. Thanks for some great, free software that really helps me be a more productive software engineer. But do me and everyone else a favor: for Netbeans 6.2, dare to be different. Provide a default installation path that does not have any white space in it. Be the kid that doesn't jump off the bridge just because all the other kids are doing it.