Nice post. My advice for any college grad is to stay away form this stinky industry. I wasted two years out of college on billing systems with 1,500 Oracle tables with endless dumbest PL/SQL data-pumping procedures and dumbest data entry client software written in VB.
And nobody really cared about quality or efficiency. No algorithms, nothing even remotely interesting from a technical standpoint. Only schedule, "feature list" and annoying salespeople who kept selling features we did not even built. I hear that VB got replaced by Java now. And that is true: to keep those piles of shitty code running clients had to buy "service contracts".
We had a guy whose full time job was to write report generators. Ugghh...
I think VB is replaced by C# and ruby (if the rails enthusiasts succeed in getting it into the enterprise).
Don't underestimate the amount of cobol still running though.
I'm going to provide a voice of discontent here ...
Although I agree with the author, for the most part, there's a flip side as well. There exists GOOD enterprise software. Difference between good enterprise software and open source software is enterprise software HAS to work. For open source software, it's "cool if it works."
Of course, I'm horribly overgeneralizing open source software (kind of the like the author does with enterprise software), but hear me out. A valid analogy would be enterprise software is an adult, as it does things out of necessity, and doesn't care about looks, code elegancy, fancy algorithms, etc... And open source software is the cool kid on the block, who doesn't really need to do anything, but does it for the coolness factor.
Sometimes with pretty bad results. For example - back in 2004, we here at large Dilbertian financial company that I'm working nights to escape have tried using Groovy. It worked pretty well, and we were happy.. until we went to production. It was then we discovered that Groovy had a memory leak, and our mission-critical application hung every day during crunch time.
Moral of the story? This kind of thing is NOT tolerated among enterprise software (at least where I work)... and that memory leak in Groovy hasn't been fixed in a couple of years, and I don't know if it has been fixed at all, actually... I haven't checked Groovy in a while.
That's where the author (and myself) disagree, I guess. Enterprise software SHOULD work, but there's no reason to believe that it does any better than other software.
The moral of the story for me is to test everything before it gets put in production (wasn't Groovy brand-new in 2004?) There's no reason to assume open-source software works, and there's no reason to assume enterprise software works. Even if it's used by hundreds of thousands of businesses with no problems, there might still be a problem with your specific setup, whether it's open-source or enterprise.
I know it matters when I see a 10-year-old kid sleeping on the floor of an office because his mom has to work until 1am because some awful enterprise software doesn't work right.
I know it matters when I see two friends and partners a small business split up and start suing each other because poor accounting software led them to think they were cheating each other.
It's too important to ignore.
It's too important to leave to the second-rate programmers who don't care enough to do something important like real science.
Brilliant. Someone should have spoken out on this after all.
The flip side is development of this kind of software. Is "enterprise software" so useless that it attracts only second-rate developers? What first-rate hackers would have done given such a task to automate bureaucracy?
Actually, you have it backwards. I am aware of several enterprise ERP packages that were originally written by one or two hackers in a garage. Brilliant people. The original AMAPS, now Fourth Shift was written by one guy. MMC, Compufact, Dataworks by 2 guys. The now defunct ASK MANMAN package was written by a married couple. So was QAD. (These kinda remind me of the couple who started Cisco.) They all sold thousands of installations, for tens or hundreds of thousands of dollars each. They were so successful that, inevitably, the hats came along. The brilliant people have moved on, and what was left is what you see now.
And nobody really cared about quality or efficiency. No algorithms, nothing even remotely interesting from a technical standpoint. Only schedule, "feature list" and annoying salespeople who kept selling features we did not even built. I hear that VB got replaced by Java now. And that is true: to keep those piles of shitty code running clients had to buy "service contracts".
We had a guy whose full time job was to write report generators. Ugghh...
It's not "software". It's "software porn".