Should You Be Looking for Trends in Microsoft Stories?

  • Aug 09, 2010 at 12:04 PM
  • Shawn Wildermuth


This last week or two has seen a number of interesting stories come out of Microsoft (some official, some not official), especially as it relates to developers and writing code. While I am sure that the announcements are not meant to indicate a trend, taken in conjuction they are confusing or disheartening to developers.

First out of the gate was the announcement of WebMatrix.  WebMatrix is a new non-Visual Studio tool for building websites using ASP.NET MVC (and their new view engine) along with a standalone version of IIS and SQL Server Compact.  This tool is squarely pointed at the PHP set and wants to make things simple for people who need to just build websites quickly without all the ceremony of  ASP.NET.

Also mentioned was LightSwitch.  LightSwitch is a tool for interactively building database-driven applications that are hosted on the web or desktop. While Microsoft says:

 "With LightSwitch, developers of all skill levels will have the simplest way to build data-centric business applications for the desktop and cloud."

It is clear to me that the this new tool is aimed squarely at the small sized business or non-professional developer who just needs to get a just done; not to developers of all skill levels. Its clearly an answer to developers and professionals that built small apps using Access, FoxPro or FileMaker in the past.

These two announcements put together have been viewed with some suspicion by many Microsoft developers. While some camps out there are pushing for more structure and architecture, both of these solutions seem more suited for rapid application development solutions (RAD). Some developers seem to feel that Microsoft is trying to lower the bar on development so low that anyone can do their job. This isn't how I see these announments. Instead I see them as Microsoft attempting to reach to the full-breadth of developers out there...of all them. I don't see it as a threat to medium and large project development.

Unfortunately in the same timeframe two other annoucements (ill timed as they were) came out of Redmond: IronRuby seems to be losing Microsoft support and Quadrant (a tentpole of Microsoft's Oslo) looks like its been killed. These two stories might indicate that Microsoft is pulling away from the high-end of the developer stack.  The problem is that some developers (including me) started to look at these four stories in as a trend.  The reality is likely very different.

I probably shouldn't tell you this but there is a little secret about Microsoft that many developers seem to miss. Microsoft isn't a big company.  I know, 85K+ employees sounds like a big company.  But the reality is that Microsoft is a single HR department that services 100+ small companies.  At least that's how each of the parts of Microsoft seem to operate. While at a high level Microsoft attempts to come up with overarching themes and strategies, on a project-by-project basis, teams can be quite myopic about what they are working on (not surprising actually).

This fact was never so obvious as a back when LINQ was announced. The C# team had produced a product called LINQ2SQL because they needed a good compelling story around integrated query. Problem was that over in the Data team (under SQL Server, not under Development Division {aka DevDiv}) they were working on a larger scale solution called the Entity Framework. So about the same time Microsoft released two ORM solutions that took very different approaches. The question was asked how the two teams didn't know about each other.  In fact, like many companies, Microsoft thrives on competition so even if they had known about each other it may have been a good strategy to have both being developed in parallel.  The mistake (in my opinion) was to release both.  They should have picked a winner internally instead of confusing the community.  But that is what happens.

Next time you ask yourself, "I wonder where Microsoft is going here." Remember that it is likely not a singular vision statement that is driving every product out of Microsoft, but instead the well-intentioned work of smart guys trying to help a segment of their users or potential users. While WebMatrix and LightSwitch may feel like competition for large application development, in fact "These aren't the IDE's you are looking for." If you feel threatened by them, its likely that you aren't their audience. At the same time other stories about pulling back support for certain tooling means that they didn't find their audience. If you want them supported, tell Microsoft.  Write your angry blogs (they tend to listen to them) and contact your local Developer Evangelist and get them to escalate your feedback. Let them know how you feel...





Parag Monday, August 09, 2010

Nice Article. I would argue that VS LightSwitch is not geared towards any kind of developers. It's geared for IT Pros and like who can easily write their inventory etc "applications".

I saw a demo on Channel9 about it. It becomes clear that the tool doesn't have any kind of workflow support. Just pure CRUD. Someone who writes access "application", may well be suited for it.

I would vote ScottGu to become new BillG and reform Microsoft structure. It's a spaghetti at the moment.


Michael Letterle Monday, August 09, 2010

Releasing two things like Linq2Sql and Entity Framework together isn't necessarily a bad decision either. Let the community decide which wins.

It's pushing both as the only solution that leads to confusion.

The real truth is Microsoft can never win, and will never be able to, because they are Microsoft. :)


Ken Monday, August 09, 2010

This is a very reasonable perspective and frankly, I completely agree

P.S. You forgot to hyperlink Microsoft in the last paragraph.


Kevin Isom Monday, August 09, 2010

Michael, The community didn't decide who won between l2s and EF, MS did, they will always decide the winner. That's what upset so many people. l2s was winning but MS pulled the plug on it in favor of EF.

If this isn't a trend it's a disturbing set of coincidences. More and more MS seems to think that you can't have Rapid Quality development. The more I look at MS as a high end provider the more I see them lacking.


Rob Conery Tuesday, August 10, 2010

You and I have had our disagreements :) and I'm afraid this will be another one. I was at Microsoft when they were planning WebMatrix/Razor. I sat in the LT meetings, and I understand the motive. This was a division-wide effort from tooling to marketing, right down to the web framework.

Yes, it's a big company, but the tools you're talking about come from one division of that rather huge company: DevDiv.

Razor/WebMatrix is not the product of "the well-intentioned work of smart guys trying to help a segment of their users or potential users" - it's a marketing play to carve up some of the PHP pie.

It's a smart, strategic play - it's a gutsy one and I applaud it. I don't care much for the tooling or the framework (would have been nice if they used Javascript instead of C# but...) - but you can't call this anything other than what it is: a coordinated effort.

IronRuby sits right in the crosshairs of this effort. C# is the language just like "We have an OS - it's called Windows". The DLR doesn't fit this gameplan.

The short end of it is that Microsoft understands they need to appeal to entry-level/ground-floor folks. DevDiv has coordinated this effort.

That's called a trend.


FinancialCompanySlave Tuesday, August 10, 2010

Today's PC jockey, Help Desk technician, and Bean Counter is tomorrow's enterprise architect. Tool's like FoxPro, Access, Lightswitch, etc... allow this to happen... especially in the financial companies. This is the seed of the consulting gig though.


Shawn Wildermuth Tuesday, August 10, 2010

No, I think we are in agreement on this one. DevDiv is big but its unclear to me that WebMatrix and IronRuby are related, but I don't think that WebMatrix and LightSwitch are related (LS I think is about recovering their FoxPro/Access/VB guys).

The reality of what happened with the DLR is that they never saw a market and they couldn't integrate into something close to the real Ruby environment. When IronRuby/IronPython didn't make it into VS2010 as first class languages, it was clear the party was over to me. Too bad too, I saw a good mix of the languages but it never came to pass (DLR for unit testing and C#/VB for functional work).

There are some trends, but I still don't think its an overarching plan yet, even with Soma and ScottGu making plans.


Rob Conery Tuesday, August 10, 2010

Agreed that the timing on the IronRuby thing is really the only context you can have here. Also, from experience, I know you can do very little without a marketing gameplan :) although Oxite kind of proved otherwise... but they weren't DevDiv.

It's hard to make the case that WebMatrix/LightSwitch aren't part of the same move:

"Jason Zander, corporate vice president for Visual Studio at Microsoft, says, at their core, "most end-user business applications combine two things: data plus screens." LightSwitch is optimized around making these two things very simple, he said."

That quote comes from here:

In terms of IronRuby I'll guess it's a combination of a perceived lack of interest (although who's issue is that - the community or the people who didn't push it much :) as well as it not fitting into an overall plan.

There's always a plan - it tends to shift around - but this stuff doesn't just happen :).


Ryan Riley Tuesday, August 10, 2010

The problem with all of this is that PHP has a number of established, quality platforms and is very, very simple to pick up b/c of the lack of static typing. C# is not so simple. No matter how simple you make it, C# is not going to appeal to the entry-level dev as much as PHP.

Also interesting, Rails is very well designed and yet very easy to use. I would argue it's easier to get up and running on Rails (with a much better architecture) than anything MS is putting out there.

In addition, hosting is cheap for both of those platforms. ASP.NET hosting is still not quite as comparable, especially if you want to host it yourself. Licenses vs. (essentially) free. (Azure is still debatable. I'm not finding many people interested in going that route. We'll see.)

On every level, MS seems to be making poor decisions. I'm not sure that this is all along the lines of some master plan, but if not, I agree it's certainly a very, very unfortunate set of highly coincidental missteps.



Ted Wednesday, August 11, 2010

I interned for Microsoft OSLO group back in 2007. Aside from the management, nobody can really tell what the whole ecosystem (yes, it is an ecosystem) is for. I only realized it a few months ago after I took a "System Analysis and Design" course at a local college. OSLO was envisioned for Business/System Analyst. It tries to become a software to manage processes from the straight-up textbook examples (Repository for documents, Modelling for BA, etc).

The reason why they axe that humongous project is because of Agile. Many companies are starting to adopt Agile which renders OSLO useless.


Petr Antos Tuesday, September 07, 2010

First, thank you Shawn for your "Pragmatic ADO.NET" :) where I started.

It looks like things are described here wery well:

I also recently created such asset generator based on model using DBDesktop4 editor, intermediate xml model pulling attribute-tunelled extensions from it and python/jinja template based generator for code/sql-ddl/rtf-doc - and following all described issues. The real power and future of data is in model-centric runtime execution, so curiously by so hated LightSwitch way ...

Leave a Comment