Finally I found it spelled the way I thought. Great article, Beyond HTTP; something that made me thinking again.
Just yesterday evening, I received a mail from a colleague asking me what did I think about Windows Presentation Foundation and if I have seen the New York Times Reader application.
I replied to him pointing to a series of internal posts I wrote on this subject, especially one in which I was quoting “The browser has a terminal illness and is dying” and another one in whihc I quoted “Death to the Browser“.
What is needed is the Post Browser, the Next Browser, whatever name you want to give to it. Sure, it can still run HTML (the old stuff), in a container that is essentially the same as today’s browser. However it should be capable of complete look-and-feel customization via a standard markup language. It should provide a rich set of custom controls and be able to access the desktop (with appropriate security, of course). It should have a native, secure, bidirectional mechanism, and one that supports multiple connections so that we can access services from multiple sources in a composite application. It should also have extensible controls so that we can extend and improve the behavior of controls and applications as needed.
Ajax is certainly great, but its reality is very much what the author of “Beyond HTTP” says:
I find myself in a bizarre position. The fact that I’m an expert in this kind of thing and have the technical know-how and aptitude to design and pull off such a complex beast on time and as designed means that I got paid quite well for the six months it took to develop, and I’ll continue to get paid as and when upgrades are needed. If any old John Doe could have opened up Visual Studio and slapped it together then I probably wouldn’t find myself getting paid quite so much for my services….
….Compare the Visual Studio .NET Windows Datagrid with its Web-based counterpart. There’s no comparison: a confident user of the former wouldn’t immediately be able to even recognize the latter.
But, even beyond the intricacies of AJAX programming, the real issue is the REST architecture laying behind “the Web as we use it today“:
Finally we get to the rub: The document-based Web as we know it is not a platform for developing complex applications; sure it’s possible and there are plenty of bright people working at places like Google who are doing it as we speak and creating frameworks to make it easier. But is this really the way forward? A tree-based object model accessed by an interpreted scripting engine tacked onto a specification designed for static read-only documents?
So we need to avoid any dogmatism. Again, the author of the article asserts:
Now would be a really good time in history to stop, step back, and look at what we have and what could be done better. What we need is a Web browser that doesn’t just server up documents, but serves up applications: full screen native GUI, network-transparent and, most important, fast, lightweight, real-time applications. Ideally we’d want to start over, build a whole new spec running on an entirely new platform and set of protocols….
…it should have state, and that state should begin by initializing the application’s main source file on the server when the client first connects. The application would maintain state between calls, allowing the use of global variables and custom classes that persist…..a move away from the top-heavy and stateless HTTP protocol to a true lightweight binary client/server relationship between the user and the application…
…All it takes is the will to step away from the Web browser and start something new.
- I subscribe because I am not against the browser, do not get me wrong! I am in favor of the browser for when it needs to support what it was born for: supporting the delivery of documents and supporting the REST (stateless) model.
- I subscribe because an evolution of the browser is the only possibility to save it (or to save its central position in the Internet).
“Windows Presentation Foundation” (WPF) seems to be the way that MSFT is taking to make the browser irrelevant. WPF Applications can be delivered as Web Browser Applications : “…from the user’s point of view, no installation occurred, but rather an application was “ephemerally” loaded into the user’s browser in much the same way an HTML page is loaded. In a sense, it feels as though the user simply “visited” the application…”
- I subscribe even if I find that “AJAX is a cool thing“.
But, somehow, AJAX (with which I got in love a couple of years ago), seems to me today the swan song of the “browser as it is today“.
- I subscribe because I start suffering from the limitations of an AJAX model which forces me to open a new browser tab to cope with anything I need.
Web2.0 and AJAX are different things!
AJAX may not be always the best technology to support Web2.0
- I subcribe because, as the New York Times reader example shows, the risk is that we will not compete on the AJAX battleground in the future:
- Microsoft with Windows Presentation Foundation is pushing for a convergence between standard applications and internet applications
- and Adobe with Project Apollo is freeing Flex from the constraints of the Browser
The battleground is already shifting!
- I subscribe because of the laws of evolution.
I think that the only reason to keep the “browser as it is today” alive is that it took so much effort to arrive to an agreement! All that effort sorts of prevents people to recognize that the laws of evolution apply in this domain also… and that the glorious browser has made its time.
Certainly, the “Browser as it is today” will stay, probably forever (after all, the reason for not driving all on the right side of the road is because of too much legacy ). A “cheap”, “ubiquitous” layer to access the information everywhere will always be required:
- certainly to support the access to static, REST, stateless content.
- Perhaps to support many of the pervasive Web2.0 things…
But “real-world application development leveraging the Internet that goes unnoticed by the photo-sharing, music-downloading, blogging masses” may really benefit from a quantum-leap in this area.
Why not starting from XUL? It is declarative, it can be hosted in browsers….