A Personal Blog
The Big Ol' Windows API Discussion
A few days ago, the fantastic Joel Spolsky posted a great little article on the death of the Windows API.
The biggest problem with this article is that you can’t attack the individual writing it. Joel worked at Microsoft for ages and is one of Microsoft’s most knowledgeable former employees (certainly one of the more influential). He’s fantastically smart and truly gifted.
He obviously didn’t write this article off the cuff and really believes in what he’s saying.
The stir from the article has really been 2 sided: the people who agree (I won’t posit on the reasons) and those who disagree (duh). In this case, though, Joel’s arguments were strong enough that the ‘disagree’ camp has been fairly quiet, myself included. It just feels like something’s missing. Not that Joel’s missing the mark, more like a basic premise is fuelling through to a point which is following through to a conclusion which you don’t agree with.
Along the way are some very good (and valid points) but you just feel like something’s missing…
That’s how I felt, and apparently I’m not the only one. Well, someone else with more cycles than I’ve got right now took a stab at this, and I can’t say I disagree with the premise.
Olivier Travers writes this great piece with some good explanations:
However, Joel’s whole argument relies on a premise that he never bothers to back up: “[the web as a platform] 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.”
After reading Joel’s memo, no doubt Epic Games will surely stop using DirectX (gasp, the latest version even) and commit to creating Unreal Tournament 2005 in the browser.
Good stuff. It doesn’t blow Joel’s piece out of the water, but then I don’t think it was meant to.
Joel’s article is great. Has a hundred valid points and needs to be listened to. Most uf “us” just don’t agree with his conclusion. Read both articles. It’ll grow hair on your chest.
Update: I did a piss poor job actually saying my opinion on this topic… Which I realised when another blogger said stuff I didn’t agree with.
Among many points he mentions how VB.NET doesn’t support VB 6 and he concludes by saying;
The new API is HTML, and the new winners in the application development marketplace will be the people who can make HTML sing.
While this is true (that VB.NET doesn’t support VB6); this is something us VB guys are used to. Every version of VB fundamentally changed the way we programmed. This is a big (huge) change, but it’s not really all that foreign to us.
What I wonder is how ASP 3.0 developers feel about ASP.NET? ASP.NET is software architecture ideals applied, which is great, but I wonder how ASP 3.0 developers, of the type who could care less about OOP and are more interested in completing projects on time, feel about ASP.NET?
Of course, fundamentally this argument is flawed as it relies on principles like “PHP is easier” “PHP is easier to develop for” and “PHP is cheaper” which are so far based in opinion that I’d expect bettter from Harry… If I didn’t know Harry better (Harry and I have been arguging about this for the last 3 years).
So, let me exerpt some of my actual opinions, from my comments on Harry’s post:
Simon, ASP to PHP is a natural progression. But ASP to ASP.NET is also a natural progression because, fundamentally, you can use all of the same backend and development tools to do the same job.
The change from ASP to PHP is just as severe as from ASP to ASP.NET. The VBS to VB.NET change is mainly conceptual: objects. The ASP to PHP change is deeper than that as it’s a new language.
I don’t know about you, but I grasp concepts much more quickly than languages.
I’m not going to fault anyone for moving to PHP from ASP, I just don’t see a big reason to ‘choose’ in that way. I’m not even a Developer anymore (by trade); but in the last week I programmed in VBS, KiXtart, VB.NET, C#, PHP, iHTML and Java.
The move from ASP to PHP makes sense, but the move from ASP to ASP.NET doesn’t make any less sense just because of this article ;)
Sorry for spamming your blog post Harry, but I think some of the other comments you didn’t talk about on Randy’s blog are great:
” First, VB.NET and VB are not the same thing. VB.NET isn’t “VB 7.0″. If you want VB, then use VB 6. Second, every language in the .NET stable is the same way: VB to VB.NET, unmanaged C++ to managed C++, J++ to J#.”
“IMO he failed to appreciate that doing nothing was not an option for MS. MS needed to move forward and provide a development platform that could compete with Java, which was making significant inroads into the Enterpise Development space. Whether or not you agree with Joel that memory management is the key to productivity improvements in virtual machine environments there does seem to be consensus that C#/Java is more productive than C++/COM for Enterprise class applications.”
Conclusion
Again, I don’t want to diminish Joel’s piece, but ultimately it is his opinion on:
1. Where the majority of development will happen in the future
2. The quality of .NET
3. The ability to move from old environments to .NET to the newer ones coming out soon
4. What that means to the future of technology
Good arguments, but utltimately based on opinion. Not a small, unthought out opinion, but an opinion nonetheless. As such, you will either fundamentally agree or disagree (either one is fine, and I respect both).
My problem is when people take pieces like Joel’s, and spin them. I think Joel’s piece is good enough to stand on it’s own without it being used to proclaim the death of everything from ASP.NET to Windows to Microsoft to closed-source technology as a whole.
| Print article | This entry was posted by Jeremy Wright on June 17, 2004 at 9:51 am, and is filed under IT Thoughts. Follow any responses to this post through RSS 2.0. Responses are currently closed, but you can trackback from your own site. |
Comments are closed.
about 7 years ago
I use vs.net and love it. i’ve never programmed in anything but vb/asp, though. so, i don’t have a perspective on php etc.
vs.net is powerful in the way it separates html from vb. it is a huge improvement from regular asp. also, the ability to use classes to separate reusable functions is key. also, the built in validators (although they need to make them cross-browser) compatible, make writing javascript for error checking, unnecessary (which is huge).
also, the new vs that is coming out supposedly integrates a membership db and objects for authentication… looking forward to that.
about 7 years ago
As a non-developer, I might have some things to add that moves Joel’s piece in a bit of a different light. This is about big trends. It is not about the killing of Microsoft and it is not that Microsoft is going away, but …
For one, web services are starting, slowly but surely. You will have more interaction between services that work online, mostly in your browser. This will be pushed additionally with Enterprise Information Portals which I believe will only become bigger and I already thought that some time 1999-2000 when I did an report on them for a 20.000 people company. That is a general trend.
Yes, there are some things that will require a kind of PC, for one games. But this is why MS is moving into consoles because that is where they will more and more happen. And there, if I remember an article in a gaming development mag, they are moving away (especially microsoft) from several apis to a system where you will develop your game once and have it translated to anything. So this again will remove lock in.
Other apps will also be on the desktop, that is sure. But we are talking big trends. So even several million coders, or millions of designers and movie developers really don’t count here, because they are well… just millions, not enough for Microsoft to grow.
What API will you code to for enabling a corporation to work? Will that _have_ to be an api that requires windows? That’s the question.
For now, you need office, you need outlook, you need business apps, you need lots of stuff, and all those require windows. The brazilian government moved to PhpGroupWare or something for their intranet. They don’t need windows for that.
That does not mean windows will go away, but they need for it is moving away, and that’s the big shift for the next 30 years.
That’s the move that is important here I think. the needs change.
about 7 years ago
Apparently Olivier didn’t read the whole article. Joel listed applications which would be horrible as web apps. I know of a great many companies and apps which are switching to web interfaces, if at all possible.
I’ve been on the MS bandwagon before, and it can feel like such a moving target and it often deadends or the pull the rug out from under you with entirely new technology. It’s unbelievable that Longhorn and Avalon will break BC on things that are still fairly new themselves.
One day maybe, probably, network latency will be so negligible, bandwidth so large, and web GUI’s so slick, that apps like games, drawing programs, 3D apps, CAD, IDEs, video editing, etc. will be comparable to desktop apps.
about 7 years ago
Let’s not get into the little bitti details here. :) I know he listed some apps as unlikely for web apps and he also said that while many (below 10 million) will want/need a desktop app, a lot more will be happy with the web based one.
And that’s what I was getting it. The many more will remove the power of the windows monopoly in the long run.
about 7 years ago
So, really, is everyone saying that Joel’s article is actually the death of the desktop more than Windows? That’s ultimately the question. If it is, I can buy that argument. Not today, and not enough for it to be a compelling reason to do anything, but I can buy it as a long-term projection.
If it’s not, though, then we need to admit that right now there are actually very few product groups suited for the web and that even those that are rely on serious middle-tiers: middle tiers that could just as easily plug into a desktop front end.
about 7 years ago
So, really, is everyone saying that Joel’s article is actually the death of the desktop more than Windows? That’s ultimately the question. If it is, I can buy that argument. Not today, and not enough for it to be a compelling reason to do anything, but I can buy it as a long-term projection.
If it’s not, though, then we need to admit that right now there are actually very few product groups suited for the web and that even those that are rely on serious middle-tiers: middle tiers that could just as easily plug into a desktop front end.
about 7 years ago
I think you put that nicely Jeremy. It’s not the death of windows. It’s just the death of the need to go with windows. You can probably go with something else in the long run.
Yes, there is no need to do something _now_, but there is likely a lot of money to be made if you can bring something to the web efficiently that a company needs.
I’d say that VoIP will happen sooner though and SkyPE would be something to seriously watch as a not too distant kick ass IPO. But that is a gut feeling and much to close when thinking long-term.
Other money to be made things would still be stuff like F5Networks, as you somehow need to balance this damn load that will move to the web.
about 7 years ago
You aren’t going to find me arguing. I took issue with the article, and it’s only after a day of thinking about it that I realised why it didn’t sit right: you can’t say Windows is going to die (based on his arguments) without saying all desktop stuff will die.
Personally I’m all for middle-tier, webservice based stuff delivered via whatever medium is best: web, thin client, phone, desktop, voice, etc.
The future is friendlier than the desktop (I HATE the desktop), it’s just that Joel’s article has very much been a call to action. I just think we need to realise what appropriate calls to action are.
Your idea to start companies and projects which make these things easier is a great way to spin the article. Immeditely moving to Linux, on the other hand…
about 7 years ago
Davis wrote:
>Apparently Olivier didn’t read the whole article. Joel listed applications which would be horrible as web apps.
I probably read his article three times to make sure I was not misrepresenting it. Joel is downplaying all the limitations of web apps, saying “even without new web browsers we can probably get 95% there.” 95% of Freecell or Outlook Express, sure. 95% of a desktop editing tool or 3D game, sorry but it ain’t going to happen. And it’s a moving target, as desktop apps are not sitting on their hands. Digital camera sales for instance translate not only into increased web usage for things such as online galleries, but into desktop software sales as well for picture improvement and management. Whole new categories have been created (picture collection management was an enterprise product category just a couple of years ago), and that’s happening on the desktop, not in the browser. What people are asking for, and developers are starting to deliver, is for desktop apps to more seamlessly open themselves to the online world. That’s what’s going to happen, rather than a browser-based end to end experience.
>I know of a great many companies and apps which are switching to web interfaces, if at all possible.
In what context do you see those switches happening? If you’re going to write a crappy unusable enterprise software frontend, you might as well do it for cheap, if at the cost of going back another decade in terms of usability and performance, and deliver web interfaces instead of a Windows UI. It’s been going on for a while and doesn’t negate the added value of a rich desktop client.
>One day maybe, probably, network latency will be so negligible, bandwidth so large, and web GUI’s so slick…
Sure, in a future far far away, resources are infinite so you don’t need to care about using them efficiently. Here’s the thing, web apps assume constant connectivity, and by the way, slow dial up doesn’t really count. That’s a pretty aggressive assumption to make in many cases for years to come. Browsers don’t support offline use, and that alone is a dealbreaker.
about 7 years ago
It’s not the “death of the desktop”. It’s going to be around for a (probably long) while. It’s just that a lot of applications are switching to the web.
As for Windows vs. Linux, I don’t see any mass switch currently happening. It’s still the domain of geeks with lots of time and know-how. As Joel mentioned, I use Windows largely because of all the (desktop) apps available for it, and it’s pretty easy to use. For servers, I definitely prefer *nix though.
about 7 years ago
>>I know of a great many companies and apps which are switching to web interfaces, if at all possible.
>In what context do you see those switches happening?
Enterprise apps. Big, popular, complex ones too. Hell, look at salesforce.com.
> If you’re going to write a crappy unusable enterprise software frontend, you might as well do it for cheap, if at the cost of going back another decade in terms of usability and performance, and deliver web interfaces instead of a Windows UI. It’s been going on for a while and doesn’t negate the added value of a rich desktop client.
Enterprise apps with rich desktop clients? Not.
about 7 years ago
Thanks for pitching in Olivier and you obviously have some valid points. Maybe we are even going to far with the death of the desktop though. If I get 90% of what I use on other desktop, then there starts to be a reason to switch, theoretically. It’s not that I have to, but that I could. That’s the change. I don’t need windows for mail. I don’t need it for project management. I don’t need it for other intranet applications. I don’t need it to manage text advertisements and might even want to build banners in flash automatically. Don’t need it there either.
I don’t need offline if I am always online, which is still some time to go, but coming. And as for picture management, yes I do that one the mac, but if there would be a good online picture management app, which is surely somewhere or at least soon, then I could do it online. Just add UWB, WiFi, 3G to my camera and have it sync when I come home… I’ll have all my pictures online, shareable, backed up, available everywhere.
I am not talking about the photo journalist (who might even be more online), but about the “more than 10.000.000″.
Yes, this is not about the near future, but I remember talking about Enterprise Information Portals and being asked how this space would look in the long term. Long term? They ment something like 20 years and more.
That’s the timeframe I am talking about. This isn’t going to happen in the mid-term. This is about long term changes that will become clearer when longhorn comes out some time 2008. ;)
(Jeremy: I now couldn’t submit twice because I wrote pictures without the ture and something like 4n4lysis. Grr…. :)
about 7 years ago
Sorry Oliver. When I add things to the anti-spam lists, I tend to take it as fairly safe that if if the word hasn’t shown up in 4000 comments it’s not that bad to use. I can drop ‘pic s’ if you want though, it’s just really widely used for comment spam…
about 7 years ago
Thanks for careing Jeremy. I’ll manage. It just made me smile. :)