Web Development Restarts
Previously on the Browser Wars: Tim Berners-Lee invented the Web. Mosaic copied the browser, but never got around to implementing the key second half which allows people to edit web pages. Mosaic became Netscape, and kept adding new features to the Web. Microsoft spun around and wrote a Web browser to catch up. The competition worked for a while, but the two browsers ended up implementing similar things in different ways.
Tim Berners-Lee came back onto the scene, in the form of the W3C, bringing both parties to the table to agree on future changes. But the W3C was also filled with idealists who wanted to force everyone to use their ideal web format, instead of documenting what worked. While they had some qualified good ideas (CSS) they introduced a whole new world of complexity. Now browsers had to straddle two worlds: the de facto Web standards and the de jure ones. Both were insanely complex.
Eventually things got “good enough”. Microsoft wised up and killed IE development. Netscape went open source and rewrote their browser several times before going bankrupt. The W3C ground to a halt.
But things have been starting up again. Mozilla finally released a decent product. Apple shook things up with the introduction of Safari/WebKit/KHTML, a new and excellent contender. Could things be looking up?
And now, your featured article: Google reminded people about the value of Web apps with their well-designed and cleverly-implemented Gmail. Wow, you could make Web applications that were almost as good as real ones, but even easier to use!
Then Apple moved Web apps to the desktop with their elegant and featureful Dashboard. Wow, you could make Web applications that were, essentially, real ones! David Hyatt (of the Safari team) told us about all the nifty things they were adding to the WebKit to make Dashboard better. Nifty! Now the browser would get some quality time, making it better for real apps.
But here’s the real kicker. Representatives of Safari, Firefox/Mozilla, and Opera have teamed up to form the WHAT WG. Clearly understanding the screw-ups of the W3C, WHAT is will simply agree upon, write up, and implement changes to HTML. And they plan to do whatever it takes to make HTML a great application language.
Considering HTML’s stagnation and pain, this may be hard to believe fully, but I’m serious. They talk about things like Digital Signatures, tabbed/wizard interfaces, rich text editing, spreadsheets, and drag and drop, not to mention simpler stuff like date inputs, sliders, and repeatable rows.
All of this means we’re likely to see a web application renaissance, and thus a software application renaissance. The train to the future is starting up again!
posted July 12, 2004 10:33 PM (Technology) (15 comments) #
Note to HTML people: A footnote tag would be good. I’ve imitated one here with a span[@title], but it’s a hack (and the dotted underline idiom probably isn’t clear to people).
posted by Aaron Swartz at July 12, 2004 10:36 PM #
Aaron, do you remember the HTML standards wars? Their ghost can be seen in the RSS/Atom wars. When I read a sentence like:
“… will simply agree upon, write up, and implement changes to HTML.”
I think “Oh Noooooooooo….”
Because I remember what happened the last time around.
The words “agreed upon” are fraught with peril.
posted by Seth Finkelstein at July 12, 2004 11:34 PM #
I will admit I don’t remember the wars. I originally wrote the article with the slant that they were a good thing, wrongly stopped by the W3C, but was persuaded otherwise.
But I think the concern here is unfounded; the participants seem to be pretty good friends. (Indeed, all three worked on Mozilla together.)
posted by Aaron Swartz at July 13, 2004 12:07 AM #
Existing specifications (e.g. XML, namespaces) were designed with extendability in mind, but the recent proposals seem to want to throw these specifications away and go back to the non-extendable HTML.
The only reason I have heard for this approach is from Hyatt, saying something along the lines of “browsers don’t handle XML well”. Well they don’t handle the new stuff at all. Surely it’s better to fix the XML handling if it is that bad?
BTW, Microsoft didn’t write Internet Explorer from scratch, they licensed Mosaic.
posted by Jim at July 13, 2004 06:41 AM #
… whatever it takes to make HTML a great application language.
ROFLMAO. Seriously. That’s f-ing funny.
There are some folks out there already trying to make the next great web-based application language and that would be Macromedia with Flash MX. Same focus, basically the same backend (ECMAScript derivatives), and the same goals. The problem is that as a serious application development platform, Flash really blows. Why does this matter? Given the descriptions of Dashboard and these new controls, it sounds like Apple et al is trying to reinvent Flash all over again. It’ll be an okay way to write database frontends and toy applications, but for serious things like robust GUI applications (think wordprocessors and spreadsheets), it’ll be a complete failure. (IMHO)
That’s not to mention things that plague current web-developers at the moment - IE compatibility, Netscape 4 compatibility, locked-down machines, and so forth. How will these web applications behave when they encounter a machine where JavaScript has been disabled? When the cookie settings are wonky, etc. There’s a reason that Macromedia went with a separate runtime for Flash - it’s much too difficult to guarantee consistency across these different platforms. It wouldn’t be a problem if everyone implemented the standards, but it doesn’t seem that this has even happened with respect to something relatively simpler - CSS. (I’m looking at you, MSFT.)
In any case, this is getting too ranty. I guess it’s because I’ve been developing non-trivial applications in this environment (using Flash) and the notion that these groups will turn HTML into an application platform for non-trivial purposes is hilarious. Of course, I may be wrong and it night not follow the exact same path as Flash while avoiding the problems of Java applets, but color me pessimistic. I guess I wish people would work harder on making the current web work as advertised instead of going off and creating a new hodge-podge standards that won’t be universally and uniformly implemented.
posted by Chris at July 13, 2004 08:13 AM #
“Given the descriptions of Dashboard and these new controls, it sounds like Apple et al is trying to reinvent Flash all over again.”
flash is proprietary and compiled, so there are fewer developers and less standardization. WHAT WG’s HTML extensions are open and uncompiled, so anyone can develop, and developers can establish de-facto standards. the two have little in common.
posted by scott reynen at July 13, 2004 09:28 AM #
The XML idea is silly. Hardly any pages now would work as valid XML. People shouldn’t have to rewrite their pages or learn a new way of writing pages just to use these new tags. The only workable solution is to add them to HTML.
The Flash comparison is silly. Flash is much nicer than Java, I’ll grant you that, but the only reason it’s gained so much traction is because the browser isn’t doing anything. Flash requires a whole new development environment and method of building pages. And it’s crummy. Like WebObjects, it doesn’t respect the Web (back button, Google, etc.), so it’s hard to make good sites in Flash.
(Has anyone built robust GUI applications like word processors and spreadsheets in Flash? I don’t think so.)
As for the settings thing, I can’t imagine the population of machines with JavaScript off but Flash on or an old version of Netscape but the latest version of Flash is really that large.
I’m not sure why you don’t think adding these basic features to the browser isn’t “making the current web work as advertised”. AFAIK, all outstanding standards problems in the three browsers are fixed, if that’s what you mean.
People are writing Web apps in the Web (Gmail, Dashboard, etc.) — I can’t recall seeing any major apps in Flash. Improving the Web for these kinds of apps is exactly what people should be doing.
What scott says is true too.
posted by Aaron Swartz at July 13, 2004 10:25 AM #
flash is proprietary and compiled, so there are fewer developers and less standardization. WHAT WG’s HTML extensions are open and uncompiled, so anyone can develop, and developers can establish de-facto standards. the two have little in common.
If I’m not mistaken, the SWF bytecode format that Flash compiles to is open and documented, and there’s already a number of open and closed source applications targeting it.
Also given MSFT’s non-inclusion in this group and it pushing Avalon/XAML as it’s web application technology, there’s still the fundamental problem of IE support. I’ll venture the prediction that there’ll be more serious developers targeting Flash instead of WG HTML simply because there’s a larger base of people with the Flash plugin installed than there will be with WG HTML-compatible browsers.
Finally, if we’re pushing for an interpreted language to write applications for the web, why use HTML as the base when technologies such as Python are much more mature and it would make more sense to include a custom Python runtime instead of reinventing the wheel?
posted by Chris at July 13, 2004 10:27 AM #
Chris, did you read the WHAT page?
Your argument is: macromedia flash MX really blows for serious application development and because it has the same focus, backend and goals as WHAT, then WHAT will also really blow for serious application development.
(I’m not sure what constitutes as serious application development, but you mentioned “robust GUI applications (think wordprocessors and spreadsheets)” as being serious things, whereas “database frontends and toy applications” are not serious.)
Since I don’t know macromedia flash mx I can’t say whether it has the same focus, backend as goals as WHAT. But as far as serious application development goes WHAT specifically excludes applications such as wordprocessors and spreadsheets.
http://whatwg.org/, below “What are Web Applications?” says:
“The term “Web Application” in this context refers to applications accessed over the World Wide Web by using a Web browser. This group is not attempting to describe APIs for writing high-end sophisticated programs such as office productivity suites, graphics manipulation packages, or 3D games. Some of the most famous examples of Web applications currently deployed are eBay and Amazon”
http://whatwg.org/specs/web-apps/current-work/ says:
“The scope of this specification is not to describe an entire operating system. In particular, office productivity applications, image manipulation, and other applications that users would be expected to use on a daily basis are out of scope. This specification is targetted specifically at applications that would be expected to be used by users on an occasional basis. For instance online purchasing systems, searching systems, games (especially multiplayer online games), public telephone books or address books, etc.”
Remark: Although I don’t see the relevance of how often an application is used (“daily basis” / “occasional basis”): the distinction should be based on what the application is and not how often it is used.
posted by hhg at July 13, 2004 10:31 AM #
The XML idea is silly. Hardly any pages now would work as valid XML.
And absolutely zero pages now use the new element types, so there’s no problem is there?
People shouldn’t have to rewrite their pages or learn a new way of writing pages just to use these new tags.
XML has been around for over six years. It’s not a “new way of writing pages” at all. There’s hardly any difference whatsoever between HTML and XHTML as far as authoring is concerned.
The Flash comparison is silly.
Agreed.
People are writing Web apps in the Web (Gmail, Dashboard, etc.) — I can’t recall seeing any major apps in Flash.
A few years back, I ran across a recruitment website that was constructed entirely in Flash. The website itself wasn’t so much an app, but the admin interface backend was. It was terrible.
posted by Jim at July 13, 2004 10:31 AM #
Has anyone built robust GUI applications like word processors and spreadsheets in Flash? I don’t think so.
This is precisely my point. Please don’t mistake my comments as an endorsement of Flash by any means. However, looking at Flash and why it’s built the way that it was is educational in this context. Given the technological limitations (security, download speeds, run speeds), there’s a lot that Flash cannot do. I don’t see WG HTML being able to get past these problems either.
I guess my point is that I disagree with your assessment that these new HTML controls are going to lead to a “web application renaissance” and that WG HTML will be an “great application language”. Sure, having sliders on web pages will be nice, but nothing fundamentally will change. WG HTML will be nice for a certain class of applications (as stated before, toy applications and database frontends), but it’s not the great step that you’re making it out to be. I’d like to see a great application language for the web, but it’s not here yet. (Sun dropped the ball WRT Java applets, Flash is too wonky and limited for my tastes, Java WebStart is awesome but noone uses it, and native apps + web services has potential but has not yet realized it.)
posted by Chris at July 13, 2004 10:38 AM #
I should clarify that I’m not against WG HTML - I think some of the ideas are nice and well overdue - but I question its ultimate impact on web application development. In my defense, I’ve been developing non-trivial web-based applications in Flash MX as part of an educational environment for online learning. We’ve built sophisticated search interfaces, image and audio annotators, and other tools for allowing students to access and manipulate digital content. That’s my basis for starting when thinking about this topic.
The fundamental problem that I see with the WHAT stuff is that it’s basically an upgrade to HTML forms. This is nice and all, and I like this portion of the vision. However, once I start reading about about things such as firing off RPC calls from within web pages, I start thinking that WHAT is starting to pile kludges upon kludges in order to try and make HTML function like a real application platform. I would rather (and this is a personal preference) would rather see the effort and thought be put into something that is a bit more robust and more widely supported. Maybe it’s just me, but while I like the web as a delivery mechanism for text and other content, I shudder to think of more developers targeting JavaScript as a primary development language with HTML as the interface. The WHAT enhancements to forms will ease the pain some, but I think that the web community can do better.
Perhaps I’m just being elitist, but I’d rather have the next generation of web application developers using more robust technology building more capable and more creative applications and pushing the envelope in terms of functionality and user interface instead of producing smarter HTML forms. That’s the bar would personally set when speaking about a “great application language”, but perhaps that’s too high. shrug
As it stands now, I appreciate the WHAT WG’s vision, but the only practical outcome I see are more entry pages with “Enter if you’re using IE” and “Enter if you’re using a WHAT WG browser”, and the WHAT version being nice because of the enhancements and the IE version being either a regular version with Flash (or other) controls to do things like sliders and RTF editting. (Of course this argument applies to enhancing HTML in any way as long as IE has the dominant installed base.) Perhaps some IE plugin that recognizes WHAT WG enhancements may be the answer.
posted by Chris at July 13, 2004 11:18 AM #
FWIW, something more along the lines of what I have in mind is Laszlo. It’s an object-oriented XML-aware platform that compiles to the SWF format and will run on the vast majority of browsers. (Although it’s independent of Flash and Macromedia.) This is a somewhat slow and completely propriety solution for building web-based applications, but the demos show some of its potential. If the W3C and WHAT WG were to collaborate to create a standard platform like this for these types of applications, then we’d start seeing that revolution that you’re talking about.
posted by Chris at July 13, 2004 11:35 AM #
I don’t think anyone would be worse off if the browsers implemented tags such as
<input type=”date” />
or
<input type=”text” regex=”[a-z]*” />
It will save us a whole heap of buggy javascript.
Or better Undo support, and standard ways to do
[Apply] [OK] [Cancel]
without resorting to javascript or script of any kind.
posted by Chui at July 14, 2004 06:57 AM #
I can’t wait for WG HTML. Perhaps by the time it is released, it’ll have the functionality of 1987-era HyperCard!
:)
posted by Andrew S at September 12, 2004 11:57 AM #
Subscribe to comments on this post.
If you don't want to post a comment, you can always send me your thoughts by email.
Aaron Swartz (me@aaronsw.com)