Recently I got introduced to LooslelyCoupled blog via a post on Brij@147. LooselyCoupled is all about how IT landscapes should be loosely coupled, with best of breed applications from different vendors and all systems talking to each other via standard and open services. I would call it a heterogenous environment. Having being trained as an engineer my mind makes me beleive this is the ideal concept. I agree it is beautiful concept. There is so much freedom to replace and put a new system. Vendor lock in is totally avoided. But then we live in a real world and as human beings we are rather lazy. Last few years I have spent in the consulting world, working with different clients all across the US, one thing I have found is that companies want to standardize their systems. For example for notebooks we are going to purchase Thinkpads, we will only use Oracle databases, or even all our consultants would come from this company. I can understand the reason for all this having fewer parties to talk reduces the process load on company employees. Similarly large enterprises tend to choose one or two vendors for their business applications. Besides dealing with the same company added benefit is easier integration across the products from same vendor. This is what I call a homogenous enterprise. While what I said above might not be true for all the companies but IMHO this happens at a lot of companies. It is the best way or not is debatable.