Joel on Software
Sep 3-4: Boston:
Business of Software 2008
a JOEL ON SOFTWARE conference
Search:

Wanted: Sony PlayStation: Senior Build Tools Engineer at Sony Computer Entertainment America (Foster City, CA). See this and other great job listings at jobs.joelonsoftware.com.

News


This item ran on the Joel on Software homepage on Thursday, June 17, 2004

The Web Hypertext Applications Technology Working Group is working on extending HTML4 forms to make Web applications work better.

In the previous rounds of HTML enhancement, the world's great graphic designers (like Jeffrey Zeldman) made the most noise and got us things like CSS which allow the kind of pixel-perfect page layout that the marketing people like, done in an intelligent way that separates content from presentation. Kudos. They got what they wanted, mostly, and quieted down. Now it's time for us application developers to start clamoring for the features we need to develop great web applications. Here are some examples of the kinds of features I'd like to see in web browsers:

  1. Improved inline editing (step one: make contentEditable work in Gecko just like it does in IE 5.5+)
  2. Javascript features to do fast REST queries back to the server, so I can implement things like a lush spell checker with the dictionary on the server. It should be possible to have a 300,000 employee directory on the server and create a web app that has a list box where you can type the first few letters of an employee's name and see a filtered list as fast as you can type on the screen.
  3. A rich set of standard controls for application development that provide better ways to upload files, better ways to drag and drop with the desktop, etc
  4. Compiled or compressed JavaScript, so that web applications can use really large amounts of JavaScript with decent performance
  5. Better standardized windowing features. At the very least I'd like modal and modeless dialogs that pop up instantly, a standard way to do a menu inside a web page (with ONE consistent UI, not everybody's wacky DHTML menu that are all a bit different), TreeView and ListView controls, and a standard way to make a toolbar/button bar
  6. The ability to get a "device context" (in a platform neutral way) on an HTML control and wail on it to paint just about anything you want
  7. A far richer set of events. At the very least I need to be able to use the entire keyboard. Combined with #6 I should be able to develop any custom control I want that is 100% client side.
  8. Media integration, so I can play sounds or stream music in standard ways without relying on <objects>
  9. Graceful degradation for legacy browsers (IE. It's time to make Microsoft play catchup again. Fire and Motion Baby.)

This is just a random list, nothing organized. These things would have happened if browser development hadn't ground to a halt in the late 90s due to the misguided Netscape-rewrite-project and the lock-IE-developers-in-a-dungeon project.

What I do not want to hear about:

  1. Proprietary tools like Macromedia's or Java Applets that embed clever widgets in rectangles in a browser. I want this stuff integrated with DHTML and CSS, deeply in the fabric of the web
  2. Things that don't have any chance of degrading gracefully on legacy browsers. You have to be able to construct an interface that gets better if you install Firefox, but still works on IE, without too much testing on the part of the developer.
  3. Boil the ocean schemes that require 400,000,000 users to install some thingamajig before you get anything useful. Such schemes will not go anywhere.

What are your ideas for improving the HTML/CSS/JavaScript infrastructure to make web app development better? Write them up and post them somewhere; I'll point to the best ones from my blog. Please don't email me your suggestions -- post them on the web and email me a link so everyone can benefit. I just don't have enough time for private email conversations (yesterday's API Wars article generated well over 200 thoughtful email messages which I can never hope to respond to adequately). It's time for application developers to start clamoring for the next generation of the Web now that the graphic designers got their wish list taken care of.



My new book is here! Apress has just published a new collection of 36 essays from Joel on Software, aptly named More Joel on Software. Get yours today! Available from Amazon.com or wherever fine cheese is sold.

About the Author: I’m your host, Joel Spolsky, a software developer in New York City. Since 2000, I've been writing about software development, management, business, and the Internet on this site. For my day job, I run Fog Creek Software, makers of FogBugz—the smart bug tracking software with the stupid name, and Fog Creek Copilot—the easiest way to provide remote tech support over the Internet, with nothing to install or configure.

Enter your email address to receive a (very occasional) email whenever I write a major new article. You can unsubscribe at any time, of course.

Email:

 
Home | Email | Bug Tracking Software | Remote Assistance | Complete Archive