D
dotnetforfood
Joel Spolsky's new article "How Microsoft Lost the API War" at
http://www.joelonsoftware.com/articles/APIWar.html
describes how .NET has failed, how classic VB6 and ASP continue to be
preferred by developers, and how Microsoft has lost control of the
preferred API.
You really should read the article. Here are some excerpts:
<Joel Spolsky>
"And yet, people aren't really using .NET much.
Oh sure, some of them are..."
"instead of .NET unifying and simplifying, we have a big 6-way mess,
with everybody trying to figure out which development strategy to use
and whether they can afford to port their existing applications to
..NET.
"No matter how consistent Microsoft is in their marketing message
('just use .NET—trust us!'), most of their customers are still using
C, C++, Visual Basic 6.0, and classic ASP, not to mention all the
other development tools from other companies. And the ones that are
using .NET are using ASP.NET to develop web applications, which run on
a Windows server but don't require Windows clients, which is a key
point I'll talk about more when I talk about the web."
"if you're developing a Windows GUI app today using Microsoft's
'official' latest-and-greatest Windows programming environment,
WinForms, you're going to have to start over again in two years to
support Longhorn and Avalon. Which explains why WinForms is completely
stillborn. Hope you haven't invested too much in it. Jon Udell found a
slide from Microsoft labelled 'How Do I Pick Between Windows Forms and
Avalon?' and asks, 'Why do I have to pick between Windows Forms and
Avalon?' A good question, and one to which he finds no great answer."
"So you've got the Windows API, you've got VB, and now you've got
..NET, in several language flavors, and don't get too attached to any
of that, because we're making Avalon, you see, which will only run on
the newest Microsoft operating system, which nobody will have for a
loooong time. And personally I still haven't had time to learn .NET
very deeply, and we haven't ported Fog Creek's two applications from
classic ASP and Visual Basic 6.0 to .NET because there's no return on
investment for us. None. It's just Fire and Motion as far as I'm
concerned..."
"the Web user interface is about 80% there, and even without new web
browsers we can probably get 95% there. This is Good Enough for most
people and it's certainly good enough for developers, who have voted
to develop almost every significant new application as a web
application.
Which means, suddenly, Microsoft's API doesn't matter so much. Web
applications don't require Windows.
It's not that Microsoft didn't notice this was happening. Of course
they did, and when the implications became clear, they slammed on the
brakes. Promising new technologies like HTAs and DHTML were stopped in
their tracks. The Internet Explorer team seems to have disappeared;
they have been completely missing in action for several years. There's
no way Microsoft is going to allow DHTML to get any better than it
already is: it's just too dangerous to their core business, the rich
client. The big meme at Microsoft these days is: 'Microsoft is betting
the company on the rich client.'"
"Much as I hate to say it, a huge chunk of developers have long since
moved to the web and refuse to move back. Most .NET developers are
ASP.NET developers, developing for Microsoft's web server...None of
this bodes well for Microsoft and the profits it enjoyed thanks to its
API power. The new API is HTML, and the new winners in the application
development marketplace will be the people who can make HTML sing.
</Joel Spolsky>
The only sentence in the article that I disagree with is:
JS> "ASP.NET is brilliant; I've been working with web
JS> development for ten years and it's really just a
JS> generation ahead of everything out there."
Whereas in my eyes ASP.NET is not a "generation ahead", but merely a
Microsoft rewrite of some well-known Perl modules available years ago
that:
- use templates to generate dynamic web pages and
- encrypt form data.
dotnetforfood
classic ASP rulez!!!
http://www.joelonsoftware.com/articles/APIWar.html
describes how .NET has failed, how classic VB6 and ASP continue to be
preferred by developers, and how Microsoft has lost control of the
preferred API.
You really should read the article. Here are some excerpts:
<Joel Spolsky>
"And yet, people aren't really using .NET much.
Oh sure, some of them are..."
"instead of .NET unifying and simplifying, we have a big 6-way mess,
with everybody trying to figure out which development strategy to use
and whether they can afford to port their existing applications to
..NET.
"No matter how consistent Microsoft is in their marketing message
('just use .NET—trust us!'), most of their customers are still using
C, C++, Visual Basic 6.0, and classic ASP, not to mention all the
other development tools from other companies. And the ones that are
using .NET are using ASP.NET to develop web applications, which run on
a Windows server but don't require Windows clients, which is a key
point I'll talk about more when I talk about the web."
"if you're developing a Windows GUI app today using Microsoft's
'official' latest-and-greatest Windows programming environment,
WinForms, you're going to have to start over again in two years to
support Longhorn and Avalon. Which explains why WinForms is completely
stillborn. Hope you haven't invested too much in it. Jon Udell found a
slide from Microsoft labelled 'How Do I Pick Between Windows Forms and
Avalon?' and asks, 'Why do I have to pick between Windows Forms and
Avalon?' A good question, and one to which he finds no great answer."
"So you've got the Windows API, you've got VB, and now you've got
..NET, in several language flavors, and don't get too attached to any
of that, because we're making Avalon, you see, which will only run on
the newest Microsoft operating system, which nobody will have for a
loooong time. And personally I still haven't had time to learn .NET
very deeply, and we haven't ported Fog Creek's two applications from
classic ASP and Visual Basic 6.0 to .NET because there's no return on
investment for us. None. It's just Fire and Motion as far as I'm
concerned..."
"the Web user interface is about 80% there, and even without new web
browsers we can probably get 95% there. This is Good Enough for most
people and it's certainly good enough for developers, who have voted
to develop almost every significant new application as a web
application.
Which means, suddenly, Microsoft's API doesn't matter so much. Web
applications don't require Windows.
It's not that Microsoft didn't notice this was happening. Of course
they did, and when the implications became clear, they slammed on the
brakes. Promising new technologies like HTAs and DHTML were stopped in
their tracks. The Internet Explorer team seems to have disappeared;
they have been completely missing in action for several years. There's
no way Microsoft is going to allow DHTML to get any better than it
already is: it's just too dangerous to their core business, the rich
client. The big meme at Microsoft these days is: 'Microsoft is betting
the company on the rich client.'"
"Much as I hate to say it, a huge chunk of developers have long since
moved to the web and refuse to move back. Most .NET developers are
ASP.NET developers, developing for Microsoft's web server...None of
this bodes well for Microsoft and the profits it enjoyed thanks to its
API power. The new API is HTML, and the new winners in the application
development marketplace will be the people who can make HTML sing.
</Joel Spolsky>
The only sentence in the article that I disagree with is:
JS> "ASP.NET is brilliant; I've been working with web
JS> development for ten years and it's really just a
JS> generation ahead of everything out there."
Whereas in my eyes ASP.NET is not a "generation ahead", but merely a
Microsoft rewrite of some well-known Perl modules available years ago
that:
- use templates to generate dynamic web pages and
- encrypt form data.
dotnetforfood
classic ASP rulez!!!