@ncloud: I like it! I think that is a pretty good analogy. Too bad the customers don't realize it, and the ones that do, just don't have enough support or clout to get management backing. Which is why this company will most likely fail due to this project.
ncloud
Our country kind of reminds me of a really nasty software project.
In the beginning, everyone is psyched. The client, developers, and managers all sit down at a meeting, draw up a solid spec, do some story-boarding, develop a data model and an architecture plan. They know that the system will work, and are confident that they can deliver on time and under budget. They have their "constitution", and if adhered to, they will be successful.
As time goes on, the client begins to get antsy. They want to see something now. They come up with a bunch of "nice-to-haves" that weren't in the original spec and begin to pressure management to give in to scope creep, oh, and to still deliver on time and under budget. If management had any balls, they would insist on a meeting with the developers to generate a revised spec and time and cost estimates. But management ignores best practice and gives in, a little at first (because, hey, it can't hurt to bend the rules a little bit), a little more later, and so on. Eventually management begins writing change orders as fast as the customer demands them, throwing them to frightened developers who wonder who will bear the cost of catering to special interests. And of course, the developers end up paying the cost. They begin working longer hours, forfeiting their spouses and children, perhaps even loosing their marriages to the pressure. The bonuses that were promised never come, the vacations all get cancelled, and benefits decrease... except, of course, for management, who have insulated themselves from the consequences of their own choices.
Eventually the software is delivered, most likely late and over-budget, but the developers suck it up and breathe a sigh of releif because at least it's over now. Until the customer wants more enhancements and features, and now the developers have to plow back through the garbage heap of sloppy code, hacks, work-arounds, "cheats", and other heinous aberrations that they dumped into the source because management decided that revising a spec and thinking about the legitimacy of each change request was too much work. In their infinite wisdom, management bends over and takes it from the client, yet again, and holds the whip over the developers who now go home and drink themselves to sleep at night because they have come to hate what they do, hate their managers, hate the client, and pretty much hate life in general. And they are reminded, when they complain to management about throwing process to the wind that, hey, "you chose this career...".
Now, the moral of the story is pretty simple. If you compare the size and scope of our government operations today to the size and scope of the original government drafted in 1776, the growth magnitude is frightening. Instead of sticking to the plan, and modifying the Constitution legally if needed, our "leaders" decided to pander to special interests and increase the reach of the federal government in the name of meeting the "needs of the people". And who ends up paying the price in the end? The hard-working citizens who produce the real wealth and value in our country. But the bigger tragedy is this -- some of those hard-working people (developers) will begin to believe the lie that the "customer is always right", and will themselves want to get their "share" -- after all, if they are busting their nuts for every other parasite who wants something from Congress, then surely they should be entitled to the same treatment. And so the beast continues to grow, the "source code" becomes fragile and unstable until no one is happy. The clients are never satisfied, the developers begin leaving en masse, and management makes sure their resumes are up to date and they've cashed in whatever options they had before the company collapses under its own weight.
I don't know if the comparison is a stretch -- maybe so -- but I do know that the problem can't be corrected by hiring management with more charisma, talent, or charm. Instead, you need management who understands how processes work, and why they are important, and who will stand against the tide of angry customers who throw fits about their wants and needs and demand special treatment. You need management who will go back to the original spec and say, "no, this is what we agreed to. If you want to change it, we need compelling reasons. And just so you know, it will take longer than you'd like and cost more than you think, so be prepared to jettison the idea that you can have your cake and eat it too."
Carl M
So .. the question is ..
Does electing a woman or minority president constitute a revolution?