While I agree with all the theoretical arguments about the value of standardizing on tools and technologies across a large enterprise, I have seen much damage and very little good come of these efforts.
First of all, it is difficult to convince developers (or their managers) that they should give up the tools they are familiar with to learn new ones for the greater good. The benefits of standardization typically accrue in the long run (lower maintenance costs, staffing flexibility, contract negotiation leverage). But if the project manager isn't successful, he won't survive the short run to get kudos for these benefits.
Further, what seems to always happen is that bureaucratic StandardsEnforcement always ends in ReligiousWarfare?. Whichever side wins tends to ram its solution down the other's collective throat, and relish the victory rather than ponder which was really the better tool.
Has someone got a good story to counter this cynical overreaction? How can we accomplish the good and avoid the evil? -- BillBarnett
The first story that comes to my mind would be to compare the Wall St firms Goldman Sachs, Morgan Stanley and JP Morgan and their policies in this area as we understood them up in the City of London around 1993. Although Goldmans seemed to have a stronger commitment to Microsoft technology across the organisation it delegated strong authority to business units to choose whatever technology met their needs, without reference to corporate standards or software reuse. The people we met there were quite explicit about this. This was quite different from the emphasis in the other two.
Result? Goldmans had some very successful years. Was there a connection anyone? Was the difference perceived real and for how long?
I see corporate standards as primarily a support issue: If each development project does their own thing with their own tools, then how can anyone help them (technically) when they're in trouble? How can you develop training programs for new developers -- to teach them "everything under the sun?!?"
However, standards also impede progress, especially in well-led projects of more knowledgeable developers: Corporate standards prevent you from using the most appropriate tools and technologies, because they're "not standard."
So, are you going to attract and use the best talent available? Or, to reduce business risk do you chose to reduce all teams to the level of the least capable members of your worst team?
It's a business decision. I'm not telling you the "right" answer. ;-> --JeffGrigg
There is a sad but true story I have about vendor standards. One department in a company needed a fairly complex tool that is used to manage some scientific processes. The company told the manager that he had to use the chosen vendor. However their tool did not satisfy his requirements. He tried to work with the vendor to extend their tool for his needs but to no avail. He finally had his team write the tool themselves to do the job. They could have bought an appropriate tool from other vendors.