Wednesday, September 28, 2011

Microsoft, Microsoft, Microsoft

At work I do an unfortunately significant amount of development for Microsoft products. This usually results in building solutions in Visual Studio, which is their preferred manner of building solutions, since it is of course their own product.

Today, I had to work out how to build a solution for SharePoint, and I was presented with the most glaringly obvious example of how Microsoft are lost in their own mess of products.

To break it down, here is what I was trying to do:

Develop using Microsoft Visual Studio
Develop in Microsoft Windows 7
Develop for Microsoft SharePoint

Now, bearing in mind that VS 2010 comes PRE-LOADED with a SharePoint development environment, how hard can it be? After all, everything here is MS; no 3rd parties, where I could see integration being a problem.

However, I cannot actually start a project without SharePoint installed. OK, I'll install SharePoint. But I'm not allowed to install SharePoint without running Windows Server as my OS. Some might think "fair enough, it's a server-based application", but others, like me, thought "how many developers log into a LIVE server to develop on a different machine??". Or "insanity!" for short.

What made the whole situation amusing, was this: a step-by-step guide, written by Microsoft themselves on how to essentially fool Microsoft SharePoint into thinking you have Microsoft Windows Server instead of Microsoft Windows 7 so you can use Microsoft Visual Studio. It involved installing lots of Windows "hotfixes". The whole thing sounded like one guy at MS, tutting to himself going "nice work guys, none of these work together... and who has to save the public? Muggins here...".

Of course, even though I have everything I need locally, I can't actually connect to our external server to read data, nor can I deploy any solutions directly to the server.

The indication to me is that Microsoft, so large following their success in the 90s, have too many teams, too many products, and too little help. Huge ranges of products may provide businesses with out-of-the box solutions; but they definitely lack a "uniformed interfacing" approach when it comes to development. After all, how can any developer be expected to integrate Microsoft systems with their business, when Microsoft can't even integrate their own systems without their own special brand of "hotfix glue"...?

No comments:

Post a Comment