The ajaxians enumerated their wish list for top browser enhancements during the opening keynote at the Ajax Experience conference:
- 2D drawing and support for canvas
- JIT for Javascript
- Better memory management for Javascript
- Offline storage API
I thought it would be an interesting exercise to come up with mine. I thought my list would be pretty simple, but the more I thought, the broader each item grew in scope. So I have just three items in my wish list, ranging from relatively short term to longer term:
- Improve scripting state of art. This is not just about getting natural OOP constructs (I do like what I see with Javascript 2), but it is about getting some of the CLR goodness we take for granted (GC, JITing etc.), as well as alternative packaging models designed for dependency tracking, versioning, and distribution without having to give away source code.
- Get the DOM fundamentals right. I see a whole lot of debate around standard vs. non-standard DOM implementation. I’d like the discussion to go beyond that and instead focus on providing the much more needed building blocks. For example, how do I define, encapsulate and compose custom nodes (ala behaviors, XBL bindings)? How do I perform custom rendering where canvas/SVG are simply instances of a more generic capability? How do I create interesting custom layouts via primitives enabling measurement and arrangement of elements instead of being constrained by a limited set via some hacky CSS mechanisms? How do I define name scopes in the DOM tree to enable templating scenarios?
- Instilling true support for applications in the browser. In other words, the browser needs to evolve into an application explorer, rather than a document explorer. The back/forward buttons often come up here, and so does local storage which would indeed be hot. Accessibility is getting a lot of buzz as well. However, I think there are less mentioned or forgotten integration scenarios around stop/refresh, search, help and a variety of other aspects that would enable the hosted application to feel like a natural extension rather than an island in the middle of some browser chrome.
I guess, the essence of my wish list would be enable the framework and component developer to do a great job, thereby leading to great applications by virtue of composition. While there is a lot of work required in reaching a state of "utopia", it is certainly be exciting to be involved and working in this space.
Thoughts? Does the list make sense? What makes your list? What would excite you?
Posted on Tuesday, 5/16/2006 @ 7:56 PM
| #
ASP.NET