How To Write A Web Browser With Asv And Apa (Svv) On A Computer Or Mouse Or Mouse On A 2D Computer Or Tablet Or Mouse (Or Mouse) On Your Computer Or Computer (Or Computer) On 2D Or

Similar documents
Rich Internet Applications

How To Write An Ria Application

Vector Web Mapping Past, Present and Future. Jing Wang MRF Geosystems Corporation

RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT

Putting the power of Web 2.0 into practice.

An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0

Whitepaper. Rich Internet Applications. Frameworks Evaluation. Document reference: TSL-SES-WP0001 Januar

JavaFX Session Agenda

Client-side Web Engineering From HTML to AJAX

HTML5 the new. standard for Interactive Web

Solution Showcase Session. Enterprise 2.0 Computing Services

Performance Testing Web 2.0. Stuart Moncrieff (Load Testing Guru) /

RIA Technologies Comparison

Rich Internet Applications

Deepak Patil (Technical Director) iasys Technologies Pvt. Ltd.

HTML5 & Digital Signage

AJAX. Gregorio López López Juan Francisco López Panea

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

Mashup Development Seminar

Software Development Interactief Centrum voor gerichte Training en Studie Edisonweg 14c, 1821 BN Alkmaar T:

Chapter 12: Advanced topic Web 2.0

ipad, a revolutionary device - Apple

Position Paper: Toward a Mobile Rich Web Application Mobile AJAX and Mobile Web 2.0

Firefox for Android. Reviewer s Guide. Contact us: press@mozilla.com

Rich-Internet Anwendungen auf Basis von ColdFusion und Ajax

QML and JavaScript for Native App Development

Take full advantage of IBM s IDEs for end- to- end mobile development

Developing Exceptional Mobile and Multi-Channel Applications using IBM Web Experience Factory IBM Corporation 1

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

Introduction to BlackBerry Smartphone Web Development Widgets

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

Developing Exceptional Mobile and Multi-Channel Applications using IBM Web Experience Factory

Programming in HTML5 with JavaScript and CSS3

Curl Building RIA Beyond AJAX

Web Cloud Architecture

Bridging the Gap: from a Web App to a Mobile Device App

Using Ajax for Desktop-like Geospatial Web Application Development

SYST35300 Hybrid Mobile Application Development

Mobile App Infrastructure for Cross-Platform Deployment (N11-38)

Best practices building multi-platform apps. John Hasthorpe & Josh Venman

Cross-Platform Phone Apps & Sites with jquery Mobile

Credits: Some of the slides are based on material adapted from

Programming Fundamentals of Web Applications Course 10958A; 5 Days

Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT

Enterprise RIA Deployment Examples

Data Visualization in Ext Js 3.4

Web Applications Come of Age

Integration the Web 2.0 way. Florian Daniel April 28, 2009

How To Build A Web App

Preface. Motivation for this Book

Development Techniques for Native/Hybrid Tizen Apps. Presented by Kirill Kruchinkin

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev

maximizing IT productivity

Web Design Specialist

Ajax: A New Approach to Web Applications

Outline. CIW Web Design Specialist. Course Content

Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code

Coding for Desktop and Mobile with HTML5 and Java EE 7

Research on HTML5 in Web Development

An Overview of HTML5 and Deciding When to Use It. Robby Robson, Ph.D. & Heather L. Jones, MCT Eduworks

AJAX Toolkit Framework

Web Designing with UI Designing

Welcome to the Force.com Developer Day

ArcGIS Server mashups

separate the content technology display or delivery technology

Emerging technologies - AJAX, VXML SOA in the travel industry

WHITE PAPER on Flex to HTML5 The Migration Challenge. April 2014

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Making the Most of Existing Public Web Development Frameworks WEB04

AJAX and jmaki for Web 2.0 Development using Java. Inyoung Cho Java Technology Evangelist Sun Microsystems, Inc.

Native, Hybrid or Mobile Web Application Development

Key Benefits of Microsoft Visual Studio 2008

AppDev OnDemand Microsoft Development Learning Library

Eclipse Web Tools Platform. Naci Dai (Eteration), WTP JST Lead

Web technologies - past, present, future

Why AJAX? Keywords - Web applications, Java Script, Web INTRODUCTION. Why Not AJAX? 111 P a g e

Upgrade to Microsoft Web Applications

HTML5 as the Core Technology of the Mobile Enterprise

Aspire Systems - Experience in Digital Marketing and Social Media

Web Development with the Eclipse Platform

The Development Manager s Quick Guide to HTML5

An evaluation of JavaFX as 2D game creation tool

ArcGIS 10.1 Web Apps and APIs. John Hasthorpe & Kai Hübner

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

Transcription:

How Ajax Changes the Game for SVG Jon Ferraiolo IBM and OpenAjax Alliance 26 August, 2008

Desktop RIA Timeline 95 96 97 98 99 00 01 02 03 04 05 06 07 08 Browsers SVG IE1 IE2 IE3 IE4 IE5 IE5.5 IE6 FF1 FF2IE7 FF3 IE8? <-- IE gains dominance; MS invents DHTML/XHR --> ASV apps ASV1 ASV2 ASV3 DHTML,Ajax DHTML Ajax explosion Jesse James Garrett: AJAX Flash/FLEX Flash4 (ActionScript) Laszlo LZX FLEX/1.0 2.0 3.0 (AIR1.0) XAML/Silverlight OpenAjax Alliance XAML Prep SVL1 SVL2 Kick-off meeting with 30 companies How Ajax Changes the Game for SVG 2

Agenda SVG from Jon s perspective Ajax (and OpenAjax) How Ajax Changes the Game How Ajax Changes the Game for SVG 3

Conception Many saw that the browser needed 2D graphics Jonathan Gay and FutureSplash launched in 1993 Subsequently purchased by MACR and renamed to Flash Various other proprietary formats WebCGM PDF = PostScript as a viewable document Chris Lilley 1994 First pronouncements? (earliest date I found) 1996/1997 Requirements for scalable vector graphics How Ajax Changes the Game for SVG 4

Formation of the SVG WG By early 1998, several big companies concluded: 2D vector graphics in browser was next big thing Must be expressed in XML Must be developed at W3C As a result: PGML Submission: Adobe, IBM, Netscape, Sun VML Submission: Microsoft, Autodesk, HP, MACR, Visio WebCGM Submission: Bob Hopgood and colleagues W3C formed Scalable Vector Graphics WG How Ajax Changes the Game for SVG 5

Birth SVG WG kick-off meeting on Aug 31, 1998 ~40 companies, including the PGML and VML companies SVG 1.0 was a huge effort Tricky politics Technical complexities around graphics Technical complexities around integration issues with other W3C initiatives (XML, XML Namespaces, DOM, DOM Events, CSS, SMIL, XLink, XPointer, ) W3C changed its rules a couple of times W3C approves the SVG 1.0 Rec on Sept. 4, 2001 How Ajax Changes the Game for SVG 6

Adobe: the main early driver behind SVG Adobe s SVG strategy Strong involvement in SVG WG Ubiquitous browser plugin Monetize via SVG tools, such as Adobe Illustrator For Ferraiolo, SVG was just the first phase of a broader strategy How Ajax Changes the Game for SVG 7

All of the ingredients for success Everything set up for SVG success Spring 2001 Acrobat Reader 5 released ASV2 bundled inside, installed automatically ASV2 had auto-update logic (therefore, would update to ASV3) Acrobat Reader 5 pre-installed on most desktop PCs 4 September 2001 SVG 1.0 is a W3C Recommendation Fall 2001 ASV3 and Adobe Illustrator 10 released Early 2002 More SVG products from Adobe (Adobe GoLive, Graphics Server, Adobe Document Server) Adobe puts SVG into maintenance How Ajax Changes the Game for SVG 8

Childhood Strong adoption of SVG/ASV on desktop in 2002-2003 Favorite technology for many Enterprise developers Rich feature set Relatively easy programming (declarative XML plus JavaScript) Integrates very nicely with back-end XML servers Standards-based Backed by big company (or so it appeared) Nearly every major Enterprise product had an ASV dependency Favorite technology for visionary developers Allowed rich web features that were only possible at the time in Flash But Flash was proprietary and required developers to program within an animation tool with all logic in frame zero But with no future releases of ASV, and other alternatives emerging, many desktop developers moved away from ASV (and desktop SVG) How Ajax Changes the Game for SVG 9

Early Adulthood As desktop SVG declined, mobile SVG grew SVG Mobile becomes a W3C Recommendation in Jan. 2003 SVG Tiny 1.1 designed by mobile industry to fit on volume phones Could be built with a ~100K footprint Other mobile standards organizations adopt SVG Tiny MMS, OMA browser standards, J2ME/JSR226, MPEG LASeR, 3GPP DIMS J2ME/JSR 226 (and JSR 248) probably the most significant Multiple reliable suppliers of SVG Tiny Particularly Bitflash and Ikivo As a result, SVG Tiny now is deployed on hundreds of millions of phones How Ajax Changes the Game for SVG 10

Good news SVG Tiny Mixed Success Checklist requirement on various mobile standards Deployed on hundreds of millions of phones Real commercial applications based on SVG, such as mobile video Bad news SVG Tiny is available on a large percentage of cell phones, but only some phones view SVG from the Web (i.e., limited browser integration) SVG Tiny 1.2 (with scripting) not yet approved Marketing shortcomings: little awareness of SVG Tiny as an option Desktop technologies (e.g., full Web browsers) are displacing the mobile standards (e.g., OMA browser standards) that have checklist requirements for SVG Tiny How Ajax Changes the Game for SVG 11

Maturity Starting with 2005, major changes in the industry RIA platforms Macromedia coins the term RIA, then says RIA=Flash AJAX discovered in Feb. 2005 (Later) Microsoft adapts XAML into the Silverlight browser plugin How Ajax Changes the Game for SVG 12

Desktop RIA Timeline 95 96 97 98 99 00 01 02 03 04 05 06 07 08 Browsers SVG IE1 IE2 IE3 IE4 IE5 IE5.5 IE6 FF1 FF2IE7 FF3 IE8? <-- IE gains dominance; MS invents DHTML/XHR --> ASV apps ASV1 ASV2 ASV3 DHTML,Ajax DHTML Ajax explosion Jesse James Garrett: AJAX Flash/FLEX Flash4 (ActionScript) Laszlo LZX FLEX/1.0 2.0 3.0 (AIR1.0) XAML/Silverlight OpenAjax Alliance XAML Prep SVL1 SVL2 Kick-off meeting with 30 companies How Ajax Changes the Game for SVG 13

Agenda SVG from Jon s perspective Ajax (and OpenAjax) How Ajax Changes the Game How Ajax Changes the Game for SVG 14

Quick background on Ajax Originally AJAX (Jesse James Garrett, Feb. 2005) Asynchronous JavaScript and XML Leveraging XMLHttpRequest to talk to server in background Incremental screen updates (POST) instead of full page updates (GET) At first, AJAX seemed too difficult for average programmer Yes, Google s geniuses could achieve Google Suggest and Google Maps But how could others achieve the engineering power and deep pockets to use these techniques Almost immediately, countless AJAX toolkits appeared Commercial and open source Provided nice JavaScript APIs. Took care of browser differences under the hood. How Ajax Changes the Game for SVG 15

The broader meaning of Ajax Ajax definition: A set of programming techniques that deliver Desktop-like user interfaces Within the browser Using open standards formats Natively implemented in the browser Without plugins (i.e., no Flash, Silverlight, or Java) Key technology piece is AJAX (XMLHttpRequest) But also includes many other techniques Widget libraries Animation effects Layout managers Data binding, web services, local storage, server push, In a nutshell - rich user interfaces using HTML and JavaScript How Ajax Changes the Game for SVG 16

The Ajax explosion (2005-2007) Huge amount of hype ~200 Ajax toolkits appear almost instantly Microsoft Atlas (now called ASP.NET AJAX) Helped to contribute to legitimacy Several other major proprietary Ajax frameworks Adobe/Spry, Backbase, ICEsoft, Nexaweb, Sun/jMaki, TIBCO, Several major open source projects Prototype/Scriptaculous, Dojo, Yahoo, DWR, Google GWT, jquery, Why so many so quickly? Simply rebrand DHTML to Ajax How Ajax Changes the Game for SVG 17

Why OpenAjax Alliance? A rich but fragile ecosystem Interoperability shortcomings Educational/marketing shortcomings Dependence on browsers companies for technical advances Ajax vendors motivated to work together from fear of Adobe and Microsoft platform dominance in Web 2.0 Ajax technology layer not addressed by other industry groups HTML app Ajax app FLEX app SVL app Ajax toolkit(s) Browser Flash plugin SVL plugin How Ajax Changes the Game for SVG 18

Members Membership 109 members Big guys: Cisco, ESRI, Google, Oracle, SAP Ajax toolkits: Backbase, Dojo, DWR, jmaki, jquery, Laszlo, Nexaweb Tools: Adobe, Eclipse, Microsoft, Sun, Tibco, WaveMaker Mobile: FranceTelecom/Orange, Openwave, Opera, Vodafone, Volantis Other standards organizations: Eclipse, HR-XML, W3C Ajax users : American Greetings, Fidelity, Gemini Systems, MITRE How Ajax Changes the Game for SVG 19

OpenAjax Alliance Areas of Focus Interoperability Ajax runtime libraries Ajax IDEs Mashups and widgets Mobile Ajax Marketing, education and evangelism Future browsers How Ajax Changes the Game for SVG 20

IDE Interoperability IDEs = Developer tools (code assist, debug, visual layout) Problem NxM permutation problem (~200 Ajax toolkits, ~15 Ajax IDEs) Each Ajax toolkit documents their APIs and widgets in their own way Key deliverable: OpenAjax Metadata Industry standard XML for: JavaScript APIs UI controls OpenAjax Alliance s IDE WG members Adobe Dreamweaver Eclipse (Aptana, JSDT, ATF) Microsoft Visual Studio How Ajax Changes the Game for SVG 21

Mashup and Widget Interoperability Mashups = Ability to assemble pre-built components into a composite application Problems Security Widget interoperability Key deliverables: OpenAjax Hub 1.1 OpenAjax Metadata for Widgets Open source widget transcoders Open source mini-mashup tool How Ajax Changes the Game for SVG 22

Mobile Ajax Mobile Ajax = Full Ajax running on mobile phones Problems Special challenges (screen size, latency, keypad, battery, ) Special opportunities (portability, GPS, camera, voice, ) White paper: Introduction to Mobile Ajax for Developers Mobile Device APIs Open source JavaScript to access CPS, camera, address book, SMS, Targets both existing proprietary, system-dependent APIs (via plugins) and emerging industry standards Collaborating with OMTP, tracking W3C (e.g., geolocation) How Ajax Changes the Game for SVG 23

Shaping the Future of Ajax Ecosystem Ajax industry browser wishlist initiative April July, 2008 222 participants, including many industry leaders 55 separate feature requests described and discussed on wiki Top feature requests 2D Graphics Security (better prevention of XSS and CSRF) Improved low-level DOM hooks for visual layout DOM performance Rich text editing Server push (Comet) Video and audio How Ajax Changes the Game for SVG 24

Agenda SVG from Jon s perspective Ajax (and OpenAjax) How Ajax Changes the Game How Ajax Changes the Game for SVG 25

Resurrection of SVG on the desktop Native SVG support in Mozilla, WebKit and Opera Opera: all of SVG 1.1, some of SVG Tiny 1.2, passes Acid3 WebKit: nearly all of SVG 1.1, passes Acid3 Mozilla: nearly all of static SVG 1.1, working hard to add animation and fonts, should soon pass Acid3 Also adding SVG video and leveraging SVG features within HTML However, IE still holds veto power IE8 doesn t include SVG support Ajax community has stepped up, particularly Dojo dojo.gfx implements static SVG model in JavaScript Renders to SVG on most browsers, but on IE uses either VML or Silverlight, and Canvas on iphone (some dojo.gfx features disabled) How Ajax Changes the Game for SVG 26

Ajax is the horse to ride SVG can t compete in the platform wars by itself Ajax solves many problems SVG has faced Ubiquitous distribution Industry momentum Flowable text streams Native UI elements Grid layout Ajax is, in fact, the only horse to ride Ajax is the only major RIA platform that embraces open standards 3 out of 4 browsers already implement SVG natively Acid3 test is strong leverage How Ajax Changes the Game for SVG 27

JavaScript vs XML Ajax guys continually explore what works best in today s browsers JSON data subset of JavaScript Datatypes: Strings, Numbers, Booleans, Arrays, Objects Executable logic disallowed: no assignments, no functions Root of a JSON object is either an array [] or an object {} Faster than XML Most Ajax toolkits use JSON notation as their declarative markup var mydata = [ ['Apple',29.89,0.24,0.81,'9/1 12:00am'], ['Ext',83.81,0.28,0.34,'9/12 12:00am'], ['Google',71.72,0.02,0.03,'10/1 12:00am'], ['Microsoft',52.55,0.01,0.02,'7/4 12:00am'], ['Yahoo!',29.01,0.42,1.47,'5/22 12:00am'] ]; How Ajax Changes the Game for SVG 28

How to increase synergy with Ajax (1) Higher-level goals PostScript-like vector graphics in the browser (paths, text, images, transformations, etc.) Open standards based Support for interactivity, scripting, animation, effects Don t fall victim to Marketing Myopia, where it has to be one particular technology (i.e., SVG as it stands today); instead, remember the higher-level goals Constraints Microsoft still holds the SVG trump card Even if they ship SVG in IE9, there will still be a lot of desktops still running IE6 (36% today) How Ajax Changes the Game for SVG 29

How to increase synergy with Ajax (2) Possible high-level strategies Ubiquitous SVG plugin for IE Wait for WebKit, Opera, Mozilla, etc. to make SVG happen on mobile: SVG will gain marketplace momentum and MS will finally surrender Double-down on Ajax techniques like dojo.gfx Jon s favorite Proposed shorter-term tactics Give top priority to HTML/SVG integration SVG WG needs to work closely with SVG people on Mozilla/WebKit/Opera Make sure the HTML5 guys look at SVG as theirs If possible, refocus SVG WG on HTML/SVG integration questions Double-down on the Ajax toolkit front We need a next-generation graphics toolkit beyond what is in dojo.gfx 280 North s Cappucino showcases some interesting ideas How Ajax Changes the Game for SVG 30

Thank you! How Ajax Changes the Game for SVG 31