The other day I was reading some news that NetFlix was laying off support people due to the fact that their application was more stable since they started using Silverlight.
Are Netflix layoffs Microsoft's fault?
This made me reflect on "how good is .NET and Silverlight".
In this case "Good" is a relative word and that relativity prompted me to write this blog.
As an architecture I really like .NET it is a first class runtime platform. As a developer I love working with Visual Studio .NET. I think it's the best development environment around. As a designer, Silverlight provides all the flexibility to achieve the look and feel I want. So on that regard, the tool set is good.
On the other hand as a consumer and software user I don't understand why I should be installing runtimes to view a web page. Why I'm not able to view that same web page on my hand held or on my PS3. Why do I have to user Windows when the web was built platform-agnostic. In that regard, the tool set is bad. very bad.
But there is no surprise here. Microsoft bases his commercial practices on a monopoly (or quasi monopoly if you like) and while they enjoy a huge advantage on the desktop, they know, as any other person following the evolution of personal computing, that the next grow potential is on ubiquitous computing. Handhelds, TV set tops, kiosks, on-car access, etc. where they don't enjoy that advantage.
When companies decide using a development tool, they should not only look at the developer productivity but mainly at the business opportunities out there. By using .NET/Silverlight they are playing in the hands of Microsoft which may have one of two outcomes:
If most companies do it, they will enable a Microsoft monopoly on the ubiquitous computing space with all the bad consequences that entails
If most companies realize that there are more opportunities than just the desktop, they will be left with an application that can only run on a small percentage and will be out of the market.
Both scenarios are bad, either for the consumers, for the company or both.
Companies creating internal applications where they control the platform the users are using, will get great gains from going Microsoft.
Companies that rely on external users are shooting themselves in the foot especially knowing that there are many other development platforms that rely on open standards to achieve the same effects.