Presentation is loading. Please wait.

Presentation is loading. Please wait.

The battle for the presentation layer

Similar presentations


Presentation on theme: "The battle for the presentation layer"— Presentation transcript:

1 The battle for the presentation layer
Joe Winchester Technical Staff Member IBM Desktop Java Editor Java Developer’s Journal

2 What does it all really mean ?
In designing a client-server application, there is a decision to be made as to which parts of the task should be done on the client, and which on the server. This decision can crucially affect the cost of clients and servers, the robustness and security of the application as a whole, and the flexibility of the design to later modification or porting. Wikipedia

3 The death of the desktop application
Customers who use software delivered of the Internet can be assured of a state-of-the-art experience as the software is centrally and continually updated. Microsoft has to distribute code for any change to the hundreds of millions of PCs where its desktop software resides. It thus releases new products infrequently. Vista, the upcoming version of Windows, is the first big upgrade since Windows XP in 2001. The basic pros and cons are simple: Web applications are easier to deploy, while rich clients offer faster response times enabling much more interesting user interfaces. Joel Spolsky

4 A problem has been detected and windows has been shut down to prevent damage to your computer
The problem seems to be caused by the following file: SPCMDCON.SYS PAGE_FAULT_IN_NONPAGED_AREA If this is the first time you’ve seen this error screen restart your computer. If this screen appears again follow these steps: Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any windows updates you might need If problems continue disable or remove any newly installed hardware or software. Disable BIOS memory functions such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart your computer, press F8 and select Advanced Startup Options, and then select Safe Mode. Technical information: *** STOP: 0x Af,0xFD3094C2,0x ,0xFbFE7617,0x ) *** SPCMDCON.SYS – Address FBFe7617 base at FBFE5000, DateStamp 3d6dd67c </joke>

5 The death of the browser application
Billions of dollars are wasted every year in lost productivity as people wait for Web pages to perform duties that could have been handled better by a 1984 Macintosh-style graphical user interface application Jakob Nielsen There was one feature that was temporary in Mosaic: the Back and Forward buttons. That never made a lot of sense to us. Back to what? Forward to what? We thought there would be a better way to navigate. But no one ever came up with one Marc Andreessen Web based applications with their sucky, high latency, inconsistent user interfaces are a huge step backwards in daily usability. I love my rich client applications and would go nuts if I had to use web versions of the applications I use daily Joel Spolsky

6 The back and forward buttons never made a lot of sense

7 The double post apology

8 The lazy programmer and the suffering user

9 The usability paradox

10 Server is Server, Client is Client and where do they meet ?
AJAX Fat/Thick Thin/Dumb Client Presentation Logic Presentation Rendering Win32, etc… Java Swing Eclipse RCP HTML Business Logic XAML, WPF JNLP Flex Laszlo JSP, ASP Server Presentation Logic Business Logic Data Data

11 HTTPRequest FORM FORM SUBMIT BUTTON SERVER NEW PAGE NEW PAGE SCRIPT

12 AJAX FORM JAVASCRIPT SERVER REQUEST DATA DATA RESPONSE XMLHTTPREQUEST

13 Write Once, Run Somewhere
var xmlHttpRequestHandler = new Object(); xmlHttpRequestHandler.createXmlHttpRequest = function(){ var XmlHttpRequestObject; if (typeof XMLHttpRequest != "undefined"){ XmlHttpRequestObject = new XMLHttpRequest(); } else if (window.ActiveXObject){ // look up the highest possible MSXML version var tryPossibleVersions=["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"]; for (i=0; i< tryPossibleVersions.length; i++){ try{ XmlHttpRequestObject = new ActiveXObject(tryPossibleVersions[i]); break; catch (xmlHttpRequestObjectError){ //ignore return XmlHttpRequestObject;}

14 What’s Up with AJAX This Year ?
Cool GoogleMaps is cool It makes the browser experience less bad Doom Because JavaScript doesn’t scale Proprietary browser extensions will extinguish it It’s the server trying to control presentation People will stretch it and become disillusioned

15 What’s Up with the Desktop?
Cool GoogleEarth is cooler It makes the browser look like a dumb screen Destiny PCs can do more than just render HTML First class mature GUI toolkits It gives a better user interface experience It gives a better developer experience Java improvements Mustang improvements in all areas of Java desktop Eclipse Rich Client Platform very successful cross platform framework JNLP delivery of software solid. 85% PCs now have Java runtime Microsoft improvements XAML and WPF are very rich ways to deliver UIs over HTTP. 3D graphics, vector based user interfaces, data binding and ease of use development tools. Vista will make use of multi core PCs and XAML will exploit this

16 </presentation>
The important argument is not about fat vs. thin or dumb vs. intelligent. It’s about rich content delivered in different ways Browser is reclaiming the client with alluring technologies like AJAX, Flex and Laszlo Win32, Java Swing and Java SWT are mature proven GUI toolkits You can’t build Google Earth or office applications on the web using scripting languages The client is back. Usability and not engineering ease of development is the new focus of IT. Microsoft with XAML and WPF combined with Vista will change the rule book and browsers will face the same exinction that 5250/3270 mainframes did 20 years ago, with AJAX being the historic equivalent of a green screen pop-up menu.


Download ppt "The battle for the presentation layer"

Similar presentations


Ads by Google