Understanding Microsoft Software

Sometimes it is necessary to understand how MS as a company is moving forward to get an idea about the best way to go forward with your code at the high level.

I have already explained in another post how MS badly screwed up for a long time, because of their monopoly and they felt that they could reuse everything they had already built in future products. After the iPhone, they probably realized that they would die if they continued to hoist Windows Mobile 6.5 on consumers. Once the iPod touch was released and it was a bug hit, they started a change in the way they developed new products.

It started with the Zune, where they built the OS for that mostly from a fresh, clean slate, and that became a success (w.r.t MS products), and they have followed the same principle for Windows Phone 7 as well.

Just because there is something like MS Enterprise Library does not mean that we should batter our code with it, or integrate with it, especially now that it is a monster with several hundred DLLs.

In the same way, they have started work on Windows Server Core, which is basically a very bare bones windows without the GUI. This has already started making windows lean and mean in comparison to their older releases. If you don't agree just install Windows 2008 Server R2 on a laptop which previously ran Windows 7 and see how much difference it already makes.

It used to be that, if we had existing software we would prefer to just reuse that and use that as a building block. But turns out that this maybe a bad strategy for new products, this is the reason why the iOS was such a big success and why many of us may not like the same iOS on the tablet because maybe Apple should have built it customized for tablets rather than use the same OS. Probably it would have taken years, and they wanted to be the first to market, and it was good enough for the time being.

So write lean and mean code, do not rely on huge frameworks which will trash your project before it even starts. It is always better to write the whole thing yourself and be fully in control of the application.

Comments

Popular posts from this blog

Tutorial: Using Google Cloud Storage from C# and .NET

Late 2008 Macbook only giving 1.5 gb/s speed with 6 gb/s Intel SSD?

The ridiculous interview experience