Redmond Review

Your Platform Needs You

How .NET developers can help Microsoft face growing threats to its .NET franchise.

Windows 7 will hit retail channels in October. In the eight months afterward, a slew of blockbuster releases will follow it. Will this restore much-needed momentum to the bruised Windows platform, and thus to the full stack, including .NET? Honestly, I'm concerned that the answer is no, and I'm worried about the .NET franchise.

If I look beyond Windows, I see mixed results. I'm excited by what's coming in Office 2010, SharePoint 2010, SQL Server 2008 R2 and Windows Azure, but I also know that some important features have slipped out of those releases, and pieces of them are delayed. I'm looking forward to Exchange 2010, but worry that Outlook is becoming a bloated mess. Visual Studio 2010 is impressive, but I'm concerned with the performance of beta 1. I think that Windows Presentation Foundation (WPF) and Silverlight are great technologies, but I'm frustrated that it has taken three releases for the WPF designer to approach the productivity of its earliest WinForms counterpart.


Competitive Threat
The vultures are circling. Significant developer enthusiasm has shifted from the Microsoft platform to the LAMP stack. I've observed surprisingly strong support among developers for Eclipse-even Visual Studio users who I'd expect to downplay the open source IDE seem impressed by it. Consumer excitement continues in an exodus from Windows to the Mac. Internet Explorer is still losing share to Firefox, as well as to Chrome and Safari. Some of the early wins by Silverlight and WPF, such as Major League Baseball and the New York Times, have been lost to Adobe Flash and AIR. Windows Mobile, meanwhile, is being slaughtered by Apple and even hurt by Palm.

Taken individually, each of these challenges is manageable. But considered in combination, they constitute serious market erosion for Microsoft. Add to this the cumulative impact of Windows Vista's misadventures, a first-ever round of layoffs and the draconian rulings of the European Union, and I think that Microsoft is undeniably, and understandably, off its game.

The trend directly threatens .NET developers. We're able to build many different kinds of applications, for different platforms and devices-Web, Windows, RIA, mobile, middleware, database, BI, portal, you name it-with great efficiency, using a common, core skill set. If we lose that, it would be devastating.

The fact is, no one offers the low-cost, end-to-end, developer-oriented and well-integrated stack that Microsoft does. Apple doesn't. LAMP certainly doesn't. Neither does IBM (remember, I said low cost and well integrated). I maintain that Google isn't even interested in doing so. Oracle has a long way to go, despite its pending acquisition of Sun and its efforts with newly upgraded Fusion Middleware, with price remaining an issue.

A Call to Action
What can we do? Ultimately, customer and partner feedback to Microsoft will bring the change the company and its ecosystem need. Like that of any leader, Microsoft's constituency must help it succeed. People outside of Microsoft must explain what the company is doing right and wrong, and what criticism it faces from both its customers and its competitors. This is valuable intelligence that's surprisingly difficult for Microsoft to get on its own.

It might sound glib for me to argue that you should get the world's largest software company to change its products and strategy. But customers and partners have enormous influence. By way of example, a friend of mine, with no strong links to Microsoft at the time, reported a major bug in Exchange-one so glaring he couldn't believe it got through. The Exchange team did more than fix that bug; they sent my friend a T-shirt stating that he had found Exchange's biggest bug ever.

Of course, I'm talking about bigger issues than a single bug in a single product. But the principle applies: Microsoft is your company, too. You have to be an activist and engage with it. Be forthright. Be honest. Be constructive and respectful. Despite a reputation to the contrary, Microsoft listens attentively when this protocol is followed. It's a customer- and partner-driven company like none I've ever seen. And right now, we have to drive it to change.


About the Author

Andrew Brust is Founder and CEO of Blue Badge Insights, an analysis, strategy and advisory firm serving Microsoft customers and partners. Brust is also a Microsoft Regional Director and MVP; an advisor to the New York Technology Council; and co-author of "Programming Microsoft SQL Server 2008" (Microsoft Press, 2008). A frequent speaker at industry events, Brust is co-chair of the Visual Studio Live! family of conferences and a contributing editor to Visual Studio Magazine. Brust has been a participant in the Microsoft ecosystem for over 15 years, and has worked closely with both Microsoft's Redmond-based corporate team and its field organization for much of the last 10. He is a member of several "insiders" groups that supply him with insight around important technologies out of Redmond. Follow Brust on Twitter @andrewbrust.

Reader Comments:

Fri, Oct 30, 2009 KEP

Martin Niemöller said it best. Perhaps you should've seen the warning signs when marketeering killed Classic VB, and said something then?

Mon, Oct 12, 2009 Phil

I just happened to stumble across this article and it certainly did not fail to prove the norm. You all really do live in a world all your own. Its only the MS/.Net corner that you find one trick pony developers that fear the collapse of their platform. In the rest of the world we develop on whichever tool set is available or best suits our needs. I've had experience with many stacks and find nothing amazing about .Net or VS. My preference from that experience is LAMP and Eclipse. I have often found the so called ease of development and integration coming out of MS to actually be solutions to problems that only exist in the MS world. The problems never existed in other stacks so there aren't new "solutions" for them and the MS crowd blindly takes this to mean their platform is moving ahead. I'll tell you why the platform is sinking as the article suggests. It happens as MS developers put down the koolaid and open their minds. They realize that all of this "nothing compares to MS" talk is just that....talk. The idea that an open source application can never compare to an application developed by MS starts to fade. Before you know it their like regular people that use whatever they have and the MS brainwashing loses some of its power.

Mon, Sep 21, 2009

Does anyone know how many versions of Visual Studio 2010 will there be ? Thanks

Thu, Sep 10, 2009 James

Microsoft will have and uphill battle so long as it views its developer base as a profit center to be directly and relentlessly mined for profit. The ill-will this breeds is simply bad business.

Wed, Aug 26, 2009 Kevin Johannesburg, South Africa

We have been ISV "partners" of Microsoft for almost 20 years but last year we decided to move over to the Java world. It is turning out to be an incredibly painful exercise but our main reason is that we simply can not build a business with a sustainable profit model as a Microsoft partner. The constant pressure to sell the whole technology stack to get our products to work reliably, the endless "upgrade" cycles that keep grabbing the lions share of our customers' IT wallets, the continuous re-certification programs to keep our staff accredited and a host of other non-value adding (for our customers) strategies that seem to constitute Microsoft's business model means all the risks stay with us while the profits are quietly siphoned off to Redmond. Or perhaps we're just not savvy enough entrepreneurs? No T-shirts for us I guess.

Wed, Aug 26, 2009 Bruno Belgium

Microsoft listening to customers? What a silly joke. A couple of months ago I was invited at Microsoft after a rather harsh online questionnaire I entered. I was sitting with 5 Microsoft managers and it quickly became clear. They'll never get it as long as they are in their ivory tower ignoring the incredible amount of bugs, inconsistencies and lack of robustness that is in most of their products. They were still sitting in front of me as if everything was going well and I was the exception not able to use their software properly. Sad attitude and with Steve Ballmer at the helm, I only see more sad things coming.

Thu, Aug 13, 2009 Steve US

Wow, a T-shirt! What was the thread count? Really, I can get behind this cause for the good of us .NET developers; but please, don't insult us with a T-shirt.

Thu, Aug 13, 2009

I'll say this: I use MS technologies all the time, at work and at home. And .NET was the first platform that was actually easy AND powerful AND enjoyable to develop on. But more and more I'm seeing free software close the gap to what MS is making. OpenOffice may not have *quite* the feature set as Office, but it's close, and it's FREE. Eclipse isn't VS but it's good and it's FREE. Basically, people like free, and they like the idea of something being open source and a non-coporate standard. I love C#, and I love VS, but I don't know if it really needs more features, I'd just like to see it crash less, and maybe be easier to make add-ins for. Otherwise I see myself eventually moving over to Mono and MonoDevelop. It blows my mind that an open source project(even one funded by Novell) can compete with MS, but if it gets there, I'm jumping ship.

Wed, Aug 12, 2009 Patrick Virginia

I think your article is spot on. Silverlight has continued to be a disappointment to me for the reasons you mentioned above. LINQ support is another stumble in my book. LINQ had the potential to bridge a few gaps and is an opportunity lost. My opinions are coming from someone who has made a career supporting Microsoft technologies. I am concerned about other development technologies giving Microsoft a run for their money.

Tue, Aug 11, 2009 Andy K NC

So, what do you do when you've got the corner on the market in nearly everything AND you've made it pretty darn good? Sure tweaks can be made, but really, it's done. Now what? How do you justify continued existence of the business? This is how Microsoft has seemed to me for several years now. Staff and shareholders still need to be paid, so create more features! With Microsoft Word, for example, at the end of the day, it's a word processor. For the typical user, there have been very few relevant improvements since Word 6, yet it's been continually "improved" for years. Help files in Office 6 were static but now, since the inclusion of on-line content, they are much more dynamic. (A definite improvement!) But when I search for syntax help on, say, the Pivot keyword in SQL Server, the help results include VB, J#, FoxPro, etc. Waaaay more than I was looking for. Most of the time it's easier to do a web search for "TSQL pivot" and get the help from whatever pops up. The joke at my office is we've been programming for so long now that we remember when Help used to be helpful. As a developer (and a user), I've felt abandoned by Microsoft. (How's LINQ doing?) Yes, I work in .Net, but after all these years I still don't like it. It's clunky and slow and, well, not very fun. It took YEARS for the editors to be developer friendly. And I still have to leave VS to work in SQL. (Yes, I do -- don't call that VS thing a SQL editor.) Don't get me wrong. Overall I love Microsoft software! Have you ever used Sybase? How about Groupwise? I guess my point is that for a long time I've been frustrated by being told what I need without my buy-in; I'm treated like an 8 year old. It goes back to making those improvements that only a few are very interested in. Microsoft, give me Help that is relevant to my task; standard functionality that I don't need to retrain for the same tasks I've always done (ribbons); and technologies that don't come and go (LINQ).

Sun, Aug 9, 2009 Chad Austin, TX

I really have to agree that developer support should be the main focus. MSDN is a total mess. It takes way too long to gather relevant documentation to get simple problems solved. I'm aware of the killer things that can be done with SilverLight and WPF, but given the choice between getting lost in the labyrinth of MSDN, or watching a video at Adobe that tells me exactly how to accomplish the same task in a few minutes, you can guess which product I am going to develop on.

Fri, Jul 31, 2009 junior

I'm sure there's always area for improvement but the only threat I see is this recession that will in all likelihood turn into a depression that slows down .Net adoption.

Fri, Jul 31, 2009 Mike Redmond, Washington

I believe the article is spot on. Although the threat may not be as imminent as it portrays. There's one example of a major shortfall that Microsoft knows about in their product, has known about it for some time, yet still doesn't address it. This example is Team Foundation Server. Yes, there's lots of competition for SCM and they could gain more market share if they'd address some of its shortcomings. One competitor is Serena Dimensions. No, it's not a better product by any means. It doesn't work well over a WAN (many don't). And it's got a folder tree structure instead of utilizing a database to store and control the code. But it does have security (other than admin) and a deployment mechanism. TFS doesn't. In TFS you can't setup deployment packages and have them approved before promoting them to the next level. For deployments, you need to use a 3rd party tool. Then there's the cost. Not only for TFS as a whole, but for Visual Studio Team System. The cost for most large companies is somewhat easy to swallow, but for small companies or individual developers it's cost prohibitive. Yeah you get alot more with Team System but it's hard to make a business case to purchase it especially in these economic times. Alot of companies still feel that IT is overhead instead of embracing them as an asset that can move the company to new height that could not otherwise be achieved.

Fri, Jul 31, 2009 Andy Europe

BTW... the article is a joke! First of all, there is no growing threats to .NET, the only real competitor of .NET is Java, LAMP is not even in the same ballpark. Second of all, .NET is getting better and better all the time. Additionally the profit is the only reliable source of information to Microsoft about what are the needs of the market. Asking developers and clients what they want is important, but a tricky thing is that you simply can't implement everything your clients may need. If your sales are great then your clients are satisfied, so further development must be based on market reaction (sales numbers) and not on some clients wish list. If most of your clients need a feature they simply won't buy your product without that feature. Development is a trade-off you can do something you can't do something else, your sales numbers tell you what is your priority. The only thing you must be careful here is "speed of reaction", if your sales growth are slow then your development is wrong, so change your priorities. Asking clients to design your product is stupid. Design your products to the overall market needs not to the partial client needs. Be critical not naive, critical reasoning is always a winner over naive reasoning.

Fri, Jul 31, 2009 Andy Europe

Rick, that is simply not correct. Microsoft creates countless new opportunities for partners every year. Sure today you can't build some application you could build 10 or 5 years ago because it is now integrated in the OS (for no extra cost), but you can build 100 times more that you couldn't 10 or 5 years ago. Many of those new opportunities is here exactly because Microsoft integrates some applications or features into the OS and it is available to everyone without effort and extra cost. I hope Microsoft will continue with this efficient way (killing of fat and lazy partners who want to live off the fact that consumers are forced to come to them) and make lots of new opportunities for new and existing partners willing to work, willing to change and willing to do some real development, partners who are not afraid from the road ahead.

Fri, Jul 31, 2009 Rick Orlando

Look Miscroft is a great company but thier biggest problem is they keep getting into our business. They should stick to operating systems and developer tools. Leave applications and services alone. Evertime someone starts to make some money off an app or a service MS wants to stick thier paws into it. They neeed to help developers and get thier own products right before they get into our business.

Thu, Jul 30, 2009 OK

You want to take my ideas and commoditize into more Microsoft billions? And I can get a T-Shirt? What a joke.

Thu, Jul 30, 2009 frede australia

This is a direct result of Microsoft hiring ex IBM staff for its middle mangement. The company is now fat and lazy. They must take care of developers at all levels, rathr than charging massive fees for MSDN it should be free to ISV's and partners.

Add Your Comment:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above