Why Microsoft was successful... the last 5%

It's easy to find people who criticize Microsoft.  But it helps to step back and ask... what about the competition?  Shouldn't there be better products out there?  There have always been big players in the game.  What about HP, IBM, SUN... Is Microsoft just that good at marketing?

My answer is simply that Microsoft gave the users what they wanted.  By users, I mean bother consumers as well as developers.  They did it better than all the other companies.  To an extent, they keep doing it.  I sit around wondering why other companies don't get it.

Let's go through a few examples here:

Sun created Java well before Microsoft came to market with .NET.  I'm not going to dwell on technical and performance issues.  I've worked with them both and they both work *well* enough.  Yet we look at deployment.  .NET application appear as regular executables and dlls.  Java... well you need to have your classpath set, worry about including jar files separately...  You can use manifest files and web-start.  I've ran into too many situations where Java's xmx/xms memory setting just too often for my comfort.  Java's support for programmers was always weak.  On the desktop,l it took them years upon years to even support system tray icons.  AWT/Swing were average at best for GUI development.  Integration with legacy code is weak as well.  Contrast that with .NET that can load dll's by default.

What would it have taken SUN to resolve these minor issues?  Almost no effort.  Yet I suspect what was at play here was some engineers notion of purity.  Let's not infect our Java with integration with the OS.  Let's not infect our Java with legacy.  Let's not infect our Java with fancy GUI or easy to use IDEs.



Or there's Exchange versus Lotus Notes.  I've worked with Lotus and you can definitely see the history and the vision.  I like to say Notes was probably envisioned by brilliant computer scientists.  Everything is a field in a database.  You can customize it to do anything.  Supposedly great security and replication.  A great collaboration platform.  Yet, what does it actually do?

It doesn't do very much... and it doesn't to it very well.

I care about email, calendaring, document storage...  In all the actual uses of notes, there are much better products.  I open Microsoft Outlook and its core of Mail and Calendaring works well.   Heck, it's clear that is what Outlook is supposed to do.  There are parts of Microsoft Outlook that suffer from the same problems as Lotus.  For example, Exchange can also store arbitrary documents in public folders.  Lord help any company that bases their document storage on that though. 

This is another classic problem.  You let the big picture be designed by computer scientists, but forget to assign good people and resources to the final product.  IBM spends a lot of effort on customers.  I don't think it's their lack of focus or caring about the customers.  I simply think its IBM not understanding that all software is design.  It's not enough to 'design' the big picture... and then the implementation is 'trivial'.  All of software is design.
http://yaminb.blogspot.com/2009/09/problem-with-design-and-implementation.html


Microsoft is far from perfect and has strayed many times.  Yet it has often found its way back.  Post Windows XP, Microsoft engaged in a little of what plagues Lotus.  There were promises of Win FS... the new database file system.  I'd put the Windows Registry in this area as well.  A universal settings storage system with permissions and everything!  Sounds brilliant... now try working with it and you'll come praying for old fashioned ini files.  Microsoft has found its way back I think by popularizing the APP_Data folders and the like.

Microsoft just knows how to make life easier for developers as well.  I've been working interop with Exchange.  Everyone else is going web services.  Which is great.  Microsoft goes one better.  They do web services... and they also provide a DLL to mask/cache the webservices.

Comments

  1. Could it be since they never pioneered? .net is Java minus the historic baggage + missing pieces.

    ReplyDelete

Post a Comment

Popular posts from this blog

What does it mean to live in a free society?

Post Scarcity Economy

The Niqab is cultural?