Unlike some of colleagues and friends, I have worked mostly with open source products and I like the open source world. Most of the technology is well built and there is a community of developers, testers and business sponsors who spend alot of time and money to get the product right. There seems to be a common understanding that open source technology is flexible enough where it can be customized to a certain requirement and they cost is minimal when working with Microsoft.
On the other hand, Microsoft tends to dictate when its new products and technologies are going to released. They also dictate how their products should be licensed and flexibility is minimal. As a technologist, they seem to black box all of their technology.
Here are some of typical complaints regarding Microsoft:
Not Best of Breed
I have heard people complain left and right that their product is not the best of breed. For example their SQL Server product line is not the best relational database and it is ideal for small to medium implementations.
Tie Their products to the Windows Operating System
A few years ago, the technology community was complaining that Microsoft tied their internet browser, the Internet Explorer, to the operating system and that is how they beat their competition in the internet browser space
They eye-gouge their customers with licenses and other products
More and more end users are complaining that Microsoft is clamping down on how licenses are tracked in their software. It's now ever harder to steal their software.
I admit that these are valid complaints and lately I have realized their products aren't that bad.
Things I like about Microsoft products:
Their products integrate well together. I used to take this fact for granted until I worked with Oracle suite of products. Oracle's products don't talk to other products but they don't even talk to each other.
Their products are easy to use.
Beginning with their Windows product line, Microsoft products are easy to use and they are visually appealing to their end users. Until three or four years ago, Java didn't have robust debugging in their various IDEs. I remember working with Visual Studio many years ago and I still remember that their debugging was the best. SQL Server has had a great Graphical User Interface (GUI) for many years. During this Oracle only provided SQL*Net.
Even though we complain Microsoft is being selfish and opportunistic as business. I have to say that they have never sacrificed their core capabilities which is:
their products are easy to use and their products integrate well with each other. It is true that their products aren't the best in the breed but at least theywork.
In the last year or two, I have been extremely disappointed in how Oracle products are built and how they work. All of Oracle's products are tied to the database product line. You look at their JMS implementation, their PL/SQL based web services, their ESB which is tied to their database, etc., and etc. Oracle is doing the same thing as Microsoft did. As Microsoft tied their products to their operating system, we see that Oracle is currently tying their products to the database. If I were a CIO or the CTO, I wouldn't buy anything from Oracle other than their relational database products.
Unlike Microsoft, IBM sells their products for an extremely high price. Their products work well, unfortunately I wouldn't trust IBM since their business practices are questionable.
The biggest competition for Microsoft is Google. I am still wondering what is Google. Google sells online advertising, they have a search appliance and bunch of software products which are good but they don't address any core requirement. They seem to create a buzz on how they market their products. For instance, remember how they created a buzz for their email capability. They gave email accounts via email invites which created a buzz. They are geniuses in viral marketing but they really don't have a product. What I mean by a product, if I were to liquidate Google then what would I sell. Their search technology, their online software and their advertising business and now their mobile software. According my sources in US Department of Justice, Google's Android software is currently used by alot hackers to hack into mobile phone. Things like this make wonder...Is Google really out there to improve our lives or just market themselves a higher profit margin.
Yahoo! - I like Yahoo!. I have been a loyal customer of Yahoo! from 1996. They categorize and sell information, information products and more. I really like their stuff and their product might suffer a little when Microsoft buys them but I would rather see Microsoft buy them than Google beat them.
In conclusion, I still prefer open source technologies but I now also appreciate the value of Microsoft. They are not that bad after all.