Can Ajax be OS for the Browser? Kevin Hakman Co-Founder General Interface Ajax Toolkit Director, Developer Evangelism TIBCO Software Inc. Palo Alto, CA [email protected] February 11, 2007
Download ReportTranscript Can Ajax be OS for the Browser? Kevin Hakman Co-Founder General Interface Ajax Toolkit Director, Developer Evangelism TIBCO Software Inc. Palo Alto, CA [email protected] February 11, 2007
Can Ajax be OS for the Browser? Kevin Hakman Co-Founder General Interface Ajax Toolkit Director, Developer Evangelism TIBCO Software Inc. Palo Alto, CA [email protected] February 11, 2007 The “birth” of Ajax 3/31/05: Google Pioneers Use of Old Microsoft Tools in New Web Programs “Ajax” “a big step toward the Holy Grail of having the kinds of speed and responsiveness in Web-based programs that's usually associated only with desktop software” February 11, 2007 Ease of Deployment Evolution of Network Computing HTML Pages Ajax Pages Ajax RIA Terminal Client-Server Richness of Features February 11, 2007 Ajax Enriched HTML Pages February 11, 2007 Ajax RIA February 11, 2007 Rich Internet Applications (RIA) • By 2010 60% of new applications will include “Rich Internet Applications” (RIA) Rich Internet Applications … • Delivered over the Web – Lower TCO than thick client • Look, feel and perform like desktop software GUIs – Higher efficiency than html pages – Richer functionality than html pages • “Best of Both” February 11, 2007 Desktop Responsiveness Rich GUI Stateful Event Driven February 11, 2007 Ajax Architecture Strategies • Enriched HTML pages – Hardwire • Communications and data to DOM with procedural JavaScript • Replace with new server generated HTML DOM chunks – Two Pass Parse and Replace • DHTML replacement of “tags” in HTML page after the first load of the page • JavaScript manipulation of DOM and JS Objects • Ajax RIAs – Object based JavaScript Applications – Communication with services February 11, 2007 Four Quantum States of Ajax • A,J,&,X – All about communications. Where’s the GUI? • DHTML Widgets – Enabled with async-communications (maybe) • Multi-Widget Libraries – Shared underlying services • Rich Internet Application Frameworks – Common GUI, data, communication framework – Ability to visually author GUIs & more February 11, 2007 Four Quantum States of Ajax Libraries DHTML Widgets Ajax RIA Frameworks Full Desktop Application Capabilities Complexity of Development AJ&X Richness of Features Enriched HTML Pages February 11, 2007 Rich Internet Applications Erosion of Desktop OS • Ajax RIA minimizing the differences – Real-time data – Offline apps • The “good enough” factor • Firefox and Adobe will continue to press Microsoft to provide parity with its browser • OpenAjax Alliance driving core standards February 11, 2007 IBM SUN NOVELL TIBCO BEA SAP ADOBE ORACLE … & more February 11, 2007 2006, 2005, 2004, 2003, 2002, 2001 … February 11, 2007 1999-2000: iKnowMed Clinical Oncology February 11, 2007 2001: DrugMatrix February 11, 2007 History of the General Interface project • 1999: GI 0.5 – Heavy interactivity in a browser (iKnowMed) • 2001: GI 1.2 – Client-side MVC architecture and GUI generation (Iconix) • 2002: GI 1.5 – Client/SOA • 2003: GI 2.0 – Visual Development Tools • 2004: GI 2.4 – TIBCO Acquisition; richer applications and developer tools • 2005: GI 3.0 – Faster development, richer UI, basic charting package, visual SOA integration • 2006: GI 3.1 – 100+ Components GI 3.2 – Released under Open Source BSD License • 2007: GI 3.3 – added IE7 & FX2 support February 11, 2007 Where is GI being used? February 11, 2007 Utility Call Center February 11, 2007 Rich Portlets February 11, 2007 2002-2003: DOD February 11, 2007 Real-Time Market Data February 11, 2007 DOHA Stock Exchange February 11, 2007 Real-Time Dashboard February 11, 2007 Visual Authoring Environment February 11, 2007 The Big Shift Web Browser Server Centric Static HTMLPages Web Server Model View February 11, 2007 Controller Client-Side Processing Web Browser Client Centric RIA Model View Controller Web Server Model View February 11, 2007 Controller Client-Side Processing Web Browser Client Centric RIA Model View Controller Web Server Model View February 11, 2007 Controller Evolution from 3-Tier to SOA HTML Pages Ajax Pages Ajax RIAs http 1.0 async http Web Server Point Service async http, http push SOA February 11, 2007 SOA Challenges • Different services • Different locations • Different protocols • Different APIs • Different formats • Different policies XML SOAP HTTP JMS February 11, 2007 JSON HTML SOA Synergy • Bus architecture exposes services for multiple uses XML HTTP JSON Enterprise Service Bus SOAP JMS February 11, 2007 HTML SOA Synergy • Bus architecture exposes services for multiple uses • Facilitates event and message flow across systems subject to policies XML HTTP JSON Enterprise Service Bus SOAP JMS February 11, 2007 HTML SOA Synergy • Bus architecture exposes services for multiple uses • Facilitates event and message flow across systems subject to policies • TIBCO GI extends TIBCO General Interface™ SOA to humans… XML HTTP JSON Enterprise Service Bus SOAP JMS February 11, 2007 HTML Request/Response vs. Publish/Subscribe Request / Response February 11, 2007 Publish / Subscribe, Events & Messages Evolution to RIA/SOA brings… February 11, 2007 TIBCO General Interface™ Build Ajax Rich Internet Applications Faster Download from developer.tibco.com February 11, 2007