For decades now "Enterprise Software" has been the holy grail for software companies. Big installations, big customers, loads of money to be made. Yet, with very exceptions, they have made a huge mess of it.
Case in point: Oracle. After you've downloaded the 3 CDs required to install it, the fun begins. The installer asks you every imaginable question, including the names of your pets and whether you'd ever pose naked for Playgirl. Well maybe not quite that, but amount of (mostly useless) options is staggering. Do I want to install an XML thingamajig? A Media support library? A Content search engine? A Webportal server? A Cluster management toolkit? etc. etc. etc.
Even if you manage to get rid of this stuff, you end up with an installation of around 2Gb (or more!) in size. There are wizards, managers, configurators, monitors, administrators etc. A ton of Windows Services are registered. All that, just to get a database running. Even if you not using all of this (and most likely you won't be) it is still there. On your disk, running in the background, screwing things up etc. It tooks me ages to work out that the reason my Java Webserver refused to run was because of Oracle's XML DB, which had installed itself semi-secretly for instance. XML DB doesn't even register as a separate process. It actually runs inside the Oracle process, making it impossible to locate unless you know what you are looking for.
Sun's stuff isn't any better. Sun ONE iPlanet Netscape Directory Server Enterprise Edition (or something) can just fail on installation, throwing an error to the tune of "couldn't start blablabla, the process did not return an error. For more information type yadayada". Typing "yadayada" results in the message "The process did not return an error". Great.
My colleagues are having loads of problems porting our J2EE application to IBM WebSphere. It runs on partically any other J2EE server with no or very little changes. Yet WebSphere isn't even remotely compatible, eventhough it should be. The IBM consultant, that was hired to help out, turned out not to know anything about WebSphere worth knowing and could just Google for answers.
Why can't this stuff just work? This isn't rocket-science! Not anymore anyway. Why is that 99% of us need to suffer, just because the other 1% has some special requirements, or is running some ancient legacy environment that still has to be supported?
One can only imagine the cost that is incurred throughout the chain because of this! Countless hours lost due to installation issues, administration problems, API bugs, process interfering with one another, etc. And this on top of the often hugely inflated license pricing and consultancy fees.
These isn't just the regular "the IT industry is still in its infancy"-type stuff. In my view most of this is a direct result of rushed releases, buzzword-driven development ("We need to support SDFRT2.3b by tomorrow or our competitors might...") and sales/marketing-induced featuritis.
It has to stop. Now.