Thursday, November 06, 2003

Microsoft: Please don’t kill the baby

Dear John Montgomery,

Sorry for the title, but I am a little scared.

Maybe it is because I didn’t attend the PDC that I don’t completely understand what the new message is. Maybe I have the wrong idea that .NET is more tightly related to managed code and the CLR than it is to web services and XML (hence you can use the .NET framework for many things beyond web services and XML, but it is still the coolest platform to build web services on).

I am sure you know better than me. My point is that even if I am completely wrong, perhaps I am not the only one.

I agreed with Bill Gates when he admitted that Microsoft did a poor job communicating what .NET is. And I have spent some time during the last three years distilling myself what .NET is and isn’t.

For instance, I have perceived (or maybe just imagined) that Microsoft has a long term master plan which includes integrating the CLR in their operating systems, in their database manager, and in almost everything they do. I always though that .NET was a new platform. I remember when before Microsoft began using the .NET name they used to call it NGWS (which was a descriptive name, very attached to Windows but not as cool as .NET).

As a developer I tend to see .NET as a platform to build on. I never bought that .NET My Services were really part of that platform. I saw them as Microsoft .NET applications. I reluctantly accepted that Windows Server 2003 was going to be named Windows .NET Server for the sole reason that it had the CLR embedded in it. And I was happy when they dropped that plan.

On the other hand, I always perceived that even when Microsoft had no official cross platform story for .NET, they had a very strong “build on standards” story that encouraged them to send the CLR, core parts of the framework, and C# to ECMA for standardization (and ultimately for others to implement the standard on other operating systems). I felt in heaven when Microsoft shiped Rotor, and even beyond heaven when they announced Mac OSX support for it. I still have the hope that Microsoft will eventually send more chunks of the framework to ECMA for standardization (I see they are shipping C# 2.0).

I even remember that in the old days of the DOTNET mailing list, some envisioned how wonderful would have been that Microsoft built Windows Forms designers around an XML based persisting format. I had the hunch that it was just around the corner.

Because I see Microsoft realizing in Whidbey and Longhorn each and every piece of that master plan (which I will call the .NET master plan), I cannot see how at least some of those technologies should not be called .NET. And I cannot understand why you say "going back" (when did we come out?) to the .NET name would be retrograde.

So, maybe I am wrong, but let me illustrate my mistakes:
- I see WinFS as a Windows feature that builds on NTFS, SQL Server, XML and .NET. I am not sure how much of it makes sense to standarize.
- I understand Indigo as the new way to do web services in .NET. As a developer I want this to be standarized.
- I see Avalon as the Windows implementation of an API that should be considered part of the .NET standard.
- I think XAML will fulfill its full potential only if it is submitted to ECMA.
- I need to read more about ClickOnce , the secure execution environment and TrustManager to better understand what they mean.
- As for WinFX, the only compelling reason I see to give it a name is to reflect that we should stop using Win32 and in favor of a new Windows API based on the .NET framework.

I agree that Windows and Office are the two strongest brands Microsoft owns. That is, for end users, for IT managers, for journalists, for beta testers, etc. But we are developers. For us .NET and SQL Server are Microsoft strongest brands.

Most of those new technologies are for developers to use in the benefit of end users. Their names will probably be mentioned in text shown during Longhorn setup and also in some literature for IT Managers, end user magazines, etc. But besides this it is primarily developers who are going to use them.

I would like to call myself a .NET developer for the next 10 years as I used to call myself (being a little self indulgent) a Windows DNA architect three years ago.

I have seen “clueless people” out there asking things like why Microsoft failed in the .NET vs. Java war, or when is Microsoft going to kill .NET. Please, don’t give them reasons to be more confused.

I think Microsoft has already cleaned the .NET name enough to go ahead with it, and they have invested too much in it already to kill it.

Maybe it is that I have heard Bill Gates saying that they are focusing the company in this new platform that is .NET is too many times.

And John, thanks for asking for our feedback.

Yours truly,

Diego Vega

UPDATE: I could hardly believe what this article states. But I have to ask you John. Is this true? D*mn, I am suddenly feeling lightheaded...

No comments:

Moving to MSDN

I haven't decided yet, but it is very likely that I will stop blogging here for some time. For some background, I have moved to the sate...