Does Microsoft Suck?

The title is a bit titillating, but there is a sincere reason for using this particular title. First, I have received different emails and IMs (and tweets) about deficiencies in Microsoft software lately. Second, I have railed on a few products myself. But, I also work with other products and want to give a more balanced assessment of where things stand, in my opinion.

Internet Explorer: Visually, I like what Microsoft has done. Unfortunately, they have some serious underlying problems. I have never seen a browser fail so much out of beta. As my first browser was Lynx, followed by Mosaic when it first became a viable option, this should say something. Recently, it seems to be worse, so I probably need to look at the underlying stack by determine what patches were pushed into my computer. I would imagine at least one had to do with http.sys, as there are some additional symptoms. Overall, IE sucks moderately and is driving me to Firefox.

Windows Live: Lots of great services guys. Lack of stability in many. The Windows IM is my main client. I have friends who are big fans of Trillian, but I find it hard to dump something that works well. I know some may have arguments about something that works better, and I will gladly listen. But don’t try to sell me on "better webcam" or similar features, as I use IM as a communication tool, not a social networking tool. Microsoft can do better on many of the features, but IM works great for me. The search sucks, however, and I still use Google to search Microsoft when I do not find what I am looking for. That is not a good thing guys.

Visual Studio: VS2005 had some glitches that hurt. It was still a very good tool that helped me tremendously with productivity. VS2008 solves most of the problems with VS 2005. I know there are some that have problems, but most of the issues I have run into are well documented. I still see the need for a few patches, but this is a great release.

Expression Web: I should probably expand this to Expression All, but I do not spend much time with the other tools. The currently released version is pretty much a waste of time, at least to someone like me that uses ASP.NET as a programming paradigm. Prior to the release of VS2008, the design surface was worth the price of admission. Now, CSS is the only interesting thing about EW 1. EW 2 should surface in CTP or beta sometime soon (?), so this may change, although the public sites do not mention much that focuses on ASP.NET. Does it suck? No. The feature set is a bit weak and dated, but the CSS bits, as well as design surface (now in VS), are worth something. Why should I say Expression All? Pretty much every tool in the suite is behind the ball, which leads me to …

Development at Microsoft: There is a lot of cool stuff that has come out of Microsoft in the past year or so. The problem is the kewl is way outpacing the tool support. Frankly, I am spending too much time developing to adopt many of the technologies, as the lack of tool support makes it a bit too time consuming to bite. There are some notable exceptions I have bitten on:

  • LINQ: Not as thrilled as I first was, as LINQ does not fit my application well (I will add a caveat in a moment, as I am talking about LINQ as a data access mechanism, which so many of the samples tout). Once they can get it working better across libraries (tiers), and keeping a decent performance profile, I will be more thrilled. Now that I have stated that, let me explain I am talking about LINQ as a data access solution (drag tables on a LINQ surface, etc.). As a means of filtering objects from a variety of sources, however? Damn, LINQ rocks.
  • MVC Framework: I need to try to pull some influence and get on the closed bits for this. While this is partially selfish, I think there are a few things that need to happen to make this a really viable paradigm for the average developer and would love to give feedback.
  • WCF: My only gotcha here is a vendor app that blew up on .NET 3.x a while back. I think I have cured the problem (only testing will tell), so this should resolve.

The rest of it is still too infant for me to pour a huge amount of time in, until I see a reason. I am fairly fond of the WF bits, but I cannot invest in them until I have enough workflow bits. Most of what I am focus on now is process automation which requires little workflow, if any. I also like the WPF stuff, but it offers less to me than some, as I have focused on business logic in libraries for quite some time. Once we truly get WPF/E (meaning, I can easily port all of my XAML from desktop to web), it will make more sense for me to do more than playing. For those not currently separating UI from logic, WPF rocks.

Samples and documentation: I have heard some bitching about this lately. One of the biggest beefs is the fact MS does not properly tier its samples. To this, I completely agree, but there is more to this story.

Over the past week, I have been hacking through the MapQuest Advantage API. In most of the work I am doing, the samples are non-existent. When they are there, I find that they are often wrong or incomplete. The documentation explains quite a bit, but also drops the reader off before they get the problem solved. MapQuest, fortunately, has a great support group, who has helped immensely.

Compare this to Microsoft. Sure, some samples are a bit inane. But the samples, while lacking on best practices, both work and illustrate the concept. In addition, the library documentation explains how things works and even … gasp … has sample code.

To be fair, there are other companies that produce fairly decent documentation and sample code. Oracle and Google come to mind (okay, Sun too). Each of those companies also are not great at tiered samples.


I still think Microsoft downloads (Silverlight edition) sucks. I also think Microsoft needs to slow down a bit and stabilize products and get better tool support. Don’t stop innovating, of course, but show us you are attempting to make more competent developers rather than focusing on kewl. I believe you can do it. Stop driving me to search your site with a competitor or use a competing browser to actually have a site work.

Peace and Grace,


One Response to Does Microsoft Suck?

  1. Doubt says:

    Http.sys in unrelated to Internet Explorer. Http.sys is a server HTTP stack used by IIS and things like local device discovery publication. WinInet is the HTTP client stack used by Internet Explorer.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: