# Tuesday, January 5, 2010

Happy New Year! Keeping with tradition, here are some predictions for 2010 in the Microsoft Software space.

2010 will be remembered as a “tipping point” year for three things in the Microsoft space. I am not saying that on December 31st, 2010 you will sit back and say I am right on all of these, but I am saying that by December 31st, 2011 or 2012 you will. That said, 2010 will be the tipping point for:

  • Moving beyond .NET
  • Business Intelligence for the masses
  • The Cloud

Today I will look at the first item and tomorrow I will talk about BI and the Cloud.

Moving beyond .NET

Here are some no brainer predictions. Visual Studio 2010 and .NET 4.0 will ship and a lot of developers will be happy. Microsoft will also be happy since adoption will be high. Here is the not so obvious prediction: 2010 will be the year where .NET begins its decline and its replacement starts to shine.

Huh?

Let’s face it, .NET is old. This summer will mark 10 years since its debut at the 2000 PDC. It’s been in production for 8 years. That is like a century in computer time and a millennium in Internet time. Billy Hollis put it in perspective for me a few weeks ago at dinner: more time has passed since .NET 1.0 to today than between VB 1.0 to VB 6.0. VB 1.0 was introduced in 1991. VB 6.0 was introduced in 1998. That is 7 years. .NET shipped officially 8 years ago in February 2002. (This also means that I have been coding longer in C# than VB, but I digress...)

Second .NET is “hard”. What I mean by hard is that the framework has bloated: there are too many namespaces, too much “legacy”, and too many ways to do the same thing and we have lots of conflicting advice on what “pattern” is the best. Developers are confused if they should use ASP + AJAX or MVC or something else. They are also scared that if they build an app they will be mocked on the latest “expert” blog saying that their implementation of the MVVP pattern is a newbie mistake and they should follow the MVVQXDP pattern. Java and LAMP are no better. PHP on the other hand, once left for dead, is back with a vengeance. Why? It is easy, just like ASP classic. At the end of the day developers just want to get apps written with ease.

So what is going to replace .NET?

Silverlight + RIA Services + DSLs.

While Silverlight looks and smells like .NET, in reality is not. Ever try to use ADO.NET in Silverlight? Do something with data access that is not asynchronous? Silverlight is its own framework that borrows a ton from .NET, but itself sits just outside the full framework.

Silverlight will continue to evolve into a rich media, cross platform web based application platform with the release of Silverlight 4.0. While 2010 may not be remembered as the year of great Silverlight adoption, SL 4.0 will be remembered as the tipping point, much like VB 3.0 was for the Visual Basic platform. Speaking of VB 3.0, VB 3.0 did not get popular until the “database compatibility layer” shipped. (Wow I am dating myself here!) With VB 3.0 + the “database compatibility layer” or in reality, the JET database engine and DAO, VB moved from being a “toy” to a full fledged programming platform for business. When the db compatibility layer shipped for VB 3.0, adoption was not immediate, but when you look back, it was the one thing that started the VB revolution of building line of business apps.

RIA Services is Silverlight’s database capability layer. Just like Jet and DAO made it easy for a developer to connect to databases, perform CRUD operations, data bind, validate, and do it fast without complicated libraries, RIA Services will allow you to do all of that easily in SIlverlight. Silverlight 4.0 and RIA Services will ship this year, most likely sometime before the summer. I don’t think that at the end of 2010 you will be saying “this was the year of Silverlight and RIA Services” but in a few years when all we do is Silverlight you will remember Silverlight 4.0 and RIA Services as what started the Silverlight revolution in building line of business apps. Purists will say that RIA Services is not elegant and continue to code things manually. That is ok, purists mocked VB too, but just remember that for most of the 90s, VB ruled LOB apps in the enterprise.

You maybe thinking, Silverlight to replace .NET? But it is too close to .NET and has lots of .NET interop, etc, in order to work. (For example, to have RIA Services work you need a .NET server with WCF and EF 4.0, etc.) That means that .NET will be around forever! Well yes and no. Remember back to .NET 1.0, we had to use COM Inerop a lot to get a lot of things done. Or .NET wrappers for Win32 stuff. Not until .NET 2.0 (its 3rd release) did we really develop “pure” .NET applications.

Silverlight will continue to evolve and due to the influence of Ruby (as well as Rails), you will see more dynamic language support and DSL capability built into Silverlight moving forward. In the not too distant future you will start to build your XAML with a DSL: “give me CRUD screen connected to the Customer entity.” Then you will start to use DSLs to build your application’s business rules, workflow and control flow. After that you will build you application’s own meta-language, the equivalent of an API, allowing others to hook right into your application’s logic. What will this DSL/dynamic language be? IronRuby? Something from Oslo? I am not sure. That will be in my predictions next year. :)

Stay tuned for predictions on BI and the Cloud…..

Technorati Tags:
Tuesday, January 5, 2010 11:12:01 AM (Eastern Standard Time, UTC-05:00)
And the world would end in 2012!
Bassam
Tuesday, January 5, 2010 7:46:29 PM (Eastern Standard Time, UTC-05:00)
first show us your record of predictions you made in the past that actually came true. then you're officially allowed to continue this series :->
herzmeister
Tuesday, January 5, 2010 8:25:07 PM (Eastern Standard Time, UTC-05:00)
Are you are telling us that we will sit back in 2011 or 2012 and tell you 'you are right on all of these'? I'm not sure what to think.
2012
Tuesday, January 5, 2010 11:55:55 PM (Eastern Standard Time, UTC-05:00)
Great article. I have heard several people, including Udi Dahan, say that they believe .NET as we know it will not have a next version. Very thought-provoking stuff! Definitely looking forward to the next in the series.

Mike
Thursday, January 7, 2010 9:20:07 AM (Eastern Standard Time, UTC-05:00)
Stephen,
Interesting that you used VB as a comparison. You might also compare .Net to a language in the Microsoft ecosystem that has been around longer than either of them and is still going strong - T-SQL.

Now, I'm not saying that T-SQL isn't in need of a vast overhaul or replacing but you can't deny that it has stood the test of time and is looking good for a little while longer yet! I don't see why the same wouldn't be true of .Net.

-Jamie Thomson
Thursday, January 7, 2010 3:39:26 PM (Eastern Standard Time, UTC-05:00)
"So what is going to replace .NET? Silverlight + RIA Services + DSLs."
So are you saying that in x-number of years, that HTML web browsing + JavaScript as we know it, will be replaced with Silverlight+RIA Services?
Jim Biddison
Comments are closed.