Looking at Longhorn vs. Web is a wrong way to approach Longhorn. Another of my VBITS speakers (I used to help plan the VBITS/VSLive series of conferences), Rocky Lhotka, is blogging.
He is trying to figure out what XAML/WinFX in Longhorn means for developers.
First of all, Longhorn isn't going to get here anytime soon. That needs to be said over and over again.
Second of all, he totally misinterprets what Microsoft's trying to
do with Longhorn. He assumes Longhorn technologies are going to be used
instead of Web technologies.
There is absolutely no way that will happen. To think Microsoft is trying to do that is to TOTALLY miss the point of Longhorn.
Longhorn is all about opening up the potential for new kinds of
Windows applications to be built (and reducing the cost of developing
existing style Windows apps). Emphasis on Windows.
There will always be room for applications to be built for just one platform. Why? Look at Flight Simulator.
Do you EVER think something like Flight Simulator could be built for
cross-platform, Internet usage? I don't see it. It's too big to
transport for even broadband users. (Or, look at some of the apps Apple
is building for the Macintosh platform -- many of those will never be
ported to Windows either -- the cost vs. the return on investment is
simply too high).
Go back and look at Joel Spolsky's arguments about why he won't use .NET: he's concerned about a 25MB runtime. Flight Simulator is HUNDREDS of megabytes.
Second, Flight Simulator needs a ton of technologies that only exist
on Windows. DirectX. Etc. To build a version of Flight Simulator that'd
run on Linux, Macs, and Windows, would mean building a DirectX platform
for both of those (or, better yet, rewriting Flight Simulator to run
directly on those platforms). That's not likely to happen. Why not?
Flight Simulator doesn't sell enough copies to make that worth the
effort.
So, instead of looking at Avalon, er WinFX, and XAML as something
that'll compete with browser-based things, let's rather look at the
world as "rich" vs. "reach."
There will always be a "reach" world. You know, one that works on
Linux, Solaris, Macintosh, and all the versions of Windows (you'll note
that not everyone on the Windows side of the fence automatically
upgrades to the latest OS, no matter how compelling we make it). The
Web today (and I theorize tomorrow too) is "reach."
The confusion comes because Longhorn apps can run inside the browser
Window. Imagine Flight Simulator playing inside of the browser Window
instead of taking over the entire screen. Does that mean that Flight
Simulator is all of a sudden a "Web" or a "reach" application? Of
course not.
If you're eBay or Amazon, you'll always need to do a reach solution
(translation: something that'll work on Web browsers on all OS's). XAML
and WinFX won't change that (no matter how good us Longhorn evangelists
do our jobs or how much hype Microsoft stirs up). At least not for a
LONG LONG time. The probabilities are high that I'll be dead long
before XAML and WinFX will be used for a reach solution.
But, let's say you have a project where you need to turn up the
"richness" knob a bit. Today you might consider using Flash on the
front end. Or, DHTML. Or, Java. All of those technologies reduce your
"reach" a bit. Not every browser in the world can use these
technologies. For instance, today you see very few sites that do only a
site in Flash. Why not? Because that's a "rich" technology today, and
not one with maximum "reach." (Another way of looking at it is Google
only looks at HTML, not inside Flash movies or Java applets).
But, even with these technologies, the "richness" isn't good enough
for some applications (Amazon and Adobe and Merck were on stage with us
at the PDC showing off some potential new applications that are
impossible in today's "rich" world). Plus, tomorrow's systems will have
new capabilities that today's systems simply don't have. Why do I say
that?
Cause I've been inside Microsoft's Research labs (just last Friday
Kevin Schofield gave me an amazing tour). I've seen what they are
thinking of doing with 3D hardware like that from ATI and nVidia. I've
seen what they are thinking of doing for multiple and large-screen
monitors. I've seen what they are thinking of doing for hard drives
that are terrabytes in size. I've seen what they are thinking of doing
for screens you can write on and computers that you can talk to.
That new world is rushing at us and the hardware to enable new
scenarios might be here before we can get Longhorn out the door
(translation next two or more years).
WinFX and XAML and future versions of .NET will enable a whole new kind of application. One that simply isn't possible today.
Now, can you deliver a new app that requires a new OS and a new API
set down to other OS's? I have looked at it, and I don't think so.
Imagine trying to deliver something like Flight Simultor into HTML.
What use would that be?
And, try to imagine delivering the current version of Flight
Simulator back in 1995. Couldn't be done. The hardware and software
capabilities keep advancing. The 2010 version of Flight Simulator will
be far more advanced than the one that can be delivered today. Could
Flash or Java be used for Flight Simulator (even four years from now)?
Certainly not that I can see. But with Longhorn it will be possible to
build new kinds of apps that get close to today's Flight Simulator with
far less effort than the Flight Simulator team had to go through to get
where they are.
Translation? Longhorn won't make people or companies give up the Web, any more than Flight Simulator does.
So, how should you look at Longhorn? It extends the way .NET gives
developers a more productive and more elegant development system. Look
at Charles Torre's post.
He's a coworker of mine who loves working in .NET (employees at
Microsoft call this "managed code") instead of Win32. He compares
managed code with old "C" style Win32 commands. Even I can see that
it's easier to understand and write managed code and I'm not even a
programmer.
One last point. Am I saying that only games will be written in Longhorn? Of course not. Carter Maslan just released a video of a potential health care application and a real estate application
done on Longhorn technologies. And he's working with the PDC builds of
Longhorn -- there's still a lot more to come as the Longhorn team
reacts to what they learned from attendees at the PDC. [The Scobleizer -- Celebrating the Geek lifestyle]
|