350 likes | 514 Views
Can Ajax be OS for the Browser?. Kevin Hakman Co-Founder General Interface Ajax Toolkit Director, Developer Evangelism TIBCO Software Inc. Palo Alto, CA khakman@tibco.com. 3/31/05: Google Pioneers Use of Old Microsoft Tools in New Web Programs “Ajax”
E N D
Can Ajax be OS for the Browser? Kevin Hakman Co-Founder General Interface Ajax Toolkit Director, Developer Evangelism TIBCO Software Inc. Palo Alto, CA khakman@tibco.com
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” The “birth” of Ajax
HTML Pages Ajax Pages Ajax RIA Ease of Deployment Terminal Client-Server Richness of Features Evolution of Network Computing
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”
Desktop Responsiveness Rich GUI Stateful Event Driven
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 Ajax Architecture Strategies
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 Four Quantum States of Ajax
Libraries DHTML Widgets AJ&X Full Desktop Application Capabilities Ajax RIA Frameworks Four Quantum States of Ajax Complexity of Development Richness of Features Rich Internet Applications Enriched HTML Pages
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 Erosion of Desktop OS
IBM SUN NOVELL TIBCO BEA SAP ADOBE ORACLE … & more
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 History of the General Interface project
The Big Shift Web Browser Server Centric Static HTMLPages Web Server Model View Controller
Model Controller View View Client-Side Processing Web Browser Client Centric RIA Web Server Model Controller
Model Controller View View Client-Side Processing Web Browser Client Centric RIA Web Server SOA Model Controller
Ajax RIAs async http, http push SOA Ajax Pages async http Point Service HTML Pages http 1.0 Web Server Evolution from 3-Tier to SOA
SOA Challenges • Different services • Different protocols • Different formats • Different locations • Different APIs • Different policies HTTP XML JSON SOAP HTML JMS
Bus architecture exposes services for multiple uses SOA Synergy HTTP XML JSON Enterprise Service Bus SOAP HTML JMS
Bus architecture exposes services for multiple uses Facilitates event and message flow across systems subject to policies SOA Synergy HTTP XML JSON Enterprise Service Bus SOAP HTML JMS
Bus architecture exposes services for multiple uses Facilitates event and message flow across systems subject to policies • TIBCO GI extends SOA to humans… TIBCO General Interface™ Enterprise Service Bus SOA Synergy HTTP XML JSON SOAP HTML JMS
Request / Response Publish / Subscribe, Events & Messages Request/Response vs. Publish/Subscribe
Build Ajax Rich Internet Applications Faster Download from developer.tibco.com TIBCO General Interface™