Effects and Opportunities of Native Code Extensions For

Total Page:16

File Type:pdf, Size:1020Kb

Effects and Opportunities of Native Code Extensions For Effects and Opportunities of Native Code Extensions for Computationally Demanding Web Applications DISSERTATION zur Erlangung des akademischen Grades Dr. Phil. im Fach Bibliotheks- und Informationswissenschaft eingereicht an der Philosophischen Fakultät I Humboldt-Universität zu Berlin von Dipl. Inform. Dennis Jarosch Präsident der Humboldt-Universität zu Berlin: Prof. Dr. Jan-Hendrik Olbertz Dekan der Philosophischen Fakultät I: Prof. Michael Seadle, Ph.D. Gutachter: 1. Prof. Dr. Robert Funk 2. Prof. Michael Seadle, Ph.D. eingereicht am: 28.10.2011 Tag der mündlichen Prüfung: 16.12.2011 Abstract The World Wide Web is amidst a transition from interactive websites to web applications. An increasing number of users perform their daily computing tasks entirely within the web browser — turning the Web into an important platform for application development. The Web as a platform, however, lacks the computational performance of native applications. This problem has motivated the inception of Microsoft Xax and Google Native Client (NaCl), two independent projects that fa- cilitate the development of native web applications. Native web applications allow the extension of conventional web applications with compiled native code, while maintaining operating system portability. This dissertation determines the bene- fits and drawbacks of native web applications. It also addresses the question how the performance of JavaScript web applications compares to that of native appli- cations and native web applications. Four application benchmarks are introduced that focus on different performance aspects: number crunching (serial and parallel), 3D graphics performance, and data processing. A performance analysis is under- taken in order to determine and compare the performance characteristics of native C applications, JavaScript web applications, and NaCl native web applications. The results confirm that NaCl’s performance in computational tasks and 3D graphics is impeccable. On the other hand, it shows substantial limitations in data process- ing. These are evaluated and possible solutions are discussed. The results of the performance analysis are complemented with an evaluation on the basis of technical and non-technical criteria and a discussion of the technical, political, and strategic drivers for NaCl. Native Client has the potential to empower a new generation of browser-based applications, but it faces significant challenges due to its limitations in data processing, closed project governance, and the lack of support by other browser vendors that could hinder its adoption. ii Zusammenfassung Das World Wide Web befindet sich inmitten eines Übergangs von interaktiven Webseiten zu Web- Applikationen. Eine wachsende Zahl von Anwendern führt täg- liche Arbeiten ausschließlich im Web-Browser durch. Dadurch wird das Web zu einer wichtigen Plattform für Anwendungsentwicklung. Dieser Platform fehlt je- doch die Rechenleistung nativer Applikationen. Microsoft Xax und Google Native Client (NaCl) sind zwei unabhängigen Technologien zur Entwicklung nativer Web- Applikationen. Native Web-Applikationen ermöglichen die Erweiterung herkömmli- cher Web-Applikationen durch kompilierten nativen und dennoch betriebssystemun- abhängigen Programmcode. Diese Dissertation untersucht die Vor- und Nachteile na- tiver Web-Applikationen. Sie stellt außerdem die Frage nach dem tatsächlichen Leis- tungsvermögen konventioneller Web-Applikationen. Dazu wird eine experimentelle Leistungsanalyse von nativen Applikationen in C, JavaScript Web-Applikationen und NaCl nativen Web-Applikationen anhand vier unterschiedlicher Vergleichstests durchgeführt. Dabei werden verschiedene Leistungsaspekte betrachtet: mathema- tische Operationen (seriell und parallel), 3D-Grafikoperationen und Datenverarbei- tung. NaCls Stärken in mathematischen und 3D-Grafikoperationen stehen erhebliche Schwächen bei der Datenverarbeitung gegenüber. Die Auswertung dieser Schwächen bildet die Grundlage für die Erarbeitung möglicher Lösungensansätze. Eine Bewer- tung auf Grundlage technischer und nicht-technischer Kriterien komplementiert die Ergebnisse der Leistungsanalyse. Darüberhinaus werden die technischen, politischen und strategischen Treiber für NaCls Marktdurchdringung diskutiert. Native Client hat das Potential eine neue Generation browser-basierter Anwendungen zu ermög- lichen. Die Technologie steht aber vor großen Herausforderungen aufgrund Ihrer Beschränkungen bei der Datenverarbeitung, der Steuerungsform des NaCl-Projekts und der fehlenden Unterstützung durch andere Browser-Hersteller. iii Contents List of Figures ix List of Tables xi 1. Introduction1 2. Problem Statement and Approach3 3. Background5 3.1. Browser Plugins................................5 3.1.1. Netscape Plugin API..........................6 3.1.2. ActiveX.................................8 3.2. Web 2.0..................................... 10 3.2.1. Participation and User Generated Content.............. 10 3.2.2. Technological Advancements..................... 11 3.2.3. AJAX.................................. 13 3.2.4. JavaScript................................ 14 3.3. Web Applications................................ 18 3.3.1. Native Applications vs. Web Applications.............. 19 3.3.2. Towards the HTML5 Standard.................... 21 4. The Web as a Platform 25 4.1. Beyond the Microsoft Windows Platform.................. 26 4.2. Platform Classification............................. 27 4.2.1. Level 1: Access API.......................... 28 4.2.2. Level 2: Plugin API.......................... 28 4.2.3. Level 3: Runtime Environment.................... 29 4.2.4. Criticism and Implications....................... 30 4.3. Components of the Web as a Platform.................... 30 4.3.1. Runtime................................. 31 4.3.2. Application Framework........................ 33 4.3.3. Tools.................................. 35 4.3.4. Cloud Services............................. 36 4.3.5. Monetization.............................. 37 4.4. Cloud Computing: Powering the Platform.................. 38 4.4.1. Cloud Computing Service Models................... 41 v Contents 4.4.2. Cloud Computing Deployment Models................ 44 4.4.3. Cloud Applications and Services................... 46 4.5. Challenges for the Web as Platform...................... 49 5. Native Web Applications 53 5.1. Goals of Native Web Applications...................... 53 5.2. Xax....................................... 55 5.2.1. Architecture.............................. 56 5.2.2. Implementation............................. 59 5.2.3. Capabilities............................... 61 5.3. Native Client.................................. 62 5.3.1. Architecture.............................. 63 5.3.2. Implementation............................. 65 5.3.3. Portable Native Client......................... 69 5.3.4. Capabilities............................... 69 5.4. Comparison of NaCl and Xax......................... 71 6. Performance Analysis 75 6.1. Experimental Environment.......................... 76 6.2. Pi Benchmark.................................. 77 6.2.1. Problem and Objective........................ 77 6.2.2. Theoretical Background........................ 78 6.2.3. Implementation Details........................ 78 6.2.4. Experimental Setup.......................... 80 6.2.5. Execution................................ 81 6.2.6. Results................................. 82 6.3. Pi-MT Benchmark............................... 87 6.3.1. Problem and Objective........................ 87 6.3.2. Theoretical Background........................ 88 6.3.3. Implementation Details........................ 88 6.3.4. Experimental Setup.......................... 90 6.3.5. Execution................................ 90 6.3.6. Results................................. 91 6.4. Gears Benchmark................................ 96 6.4.1. Problem and Objective........................ 96 6.4.2. Theoretical Background........................ 96 6.4.3. Implementation Details........................ 100 6.4.4. Experimental Setup.......................... 101 6.4.5. Execution................................ 102 6.4.6. Results................................. 104 6.5. Spectral Benchmark.............................. 108 6.5.1. Problem and Objective........................ 109 6.5.2. Theoretical Background........................ 109 6.5.3. Implementation Details........................ 116 vi Contents 6.5.4. Experimental Setup.......................... 120 6.5.5. Execution................................ 121 6.5.6. Results................................. 122 6.6. Discussion.................................... 126 6.7. Further Investigations and Potential Solutions................ 128 7. Evaluation, Effects, and Opportunities 131 7.1. Comparison Criteria.............................. 131 7.2. Evaluation.................................... 132 7.2.1. 3D Graphics Performance....................... 132 7.2.2. Browser Neutrality........................... 133 7.2.3. Computational Performance...................... 134 7.2.4. Data Processing............................ 135 7.2.5. Maturity................................ 136 7.2.6. Openness................................ 137 7.2.7. OS-Independence............................ 138 7.2.8. Portability............................... 139 7.2.9. Porting and Code Reuse........................ 140 7.2.10. Security................................. 142 7.2.11. Conclusion............................... 143 7.3. Drivers for NaCl’s Adoption.........................
Recommended publications
  • Dynamic Web Pages with the Embedded Web Server
    Dynamic Web Pages With The Embedded Web Server The Digi-Geek’s AJAX Workbook (NET+OS, XML, & JavaScript) Version 1.0 5/4/2011 Page 1 Copyright Digi International, 2011 Table of Contents Chapter 1 - How to Use this Guide ............................................................................................................... 5 Prerequisites – If You Can Ping, You Can Use This Thing! ..................................................................... 5 Getting Help with TCP/IP and Wi-Fi Setup ............................................................................................ 5 The Study Guide or the Short Cut? ....................................................................................................... 5 C Code ................................................................................................................................................... 6 HTML Code ............................................................................................................................................ 6 XML File ................................................................................................................................................. 6 Provide us with Your Feedback ............................................................................................................. 6 Chapter 2 - The Server-Client Relationship ................................................................................................... 7 Example – An Analogy for a Normal HTML page .................................................................................
    [Show full text]
  • Video Streaming Best Practices for Pr
    VIDEO STREAMING BEST PRACTICES FOR PR Meerkat and Periscope Meerkat and Periscope are experiencing exponential growth. Since their launch in March, the two apps have seen more than 1.5 million live streams. In addition, video consumption is generally on the rise. Cisco predicts that video will account for 80 per cent of all Internet traffic in 2019, up from 64 per cent in 2014. People want to share their worlds. More importantly, they want to be invited into yours. General Electric (GE), pictured below, is taking its audience on an entirely new, experiential journey with Periscope. Meerkat and Periscope have put the spotlight on streaming video and video podcasts. Are they the latest shiny tools of the Internet or something more? We say more. With live streaming, you can engage your audience directly, in real time; boost existing PR content initiatives; and grow awareness and audience engagement. All types of brands are taking advantage of the medium, from musicians to chefs and from real estate professionals to business consultants. The only question left is how to get started with the new tools. Don’t worry; we’ve got you covered. The world is your oyster. Live streaming allows for PR aims like growing awareness and engagement as well as thought leadership. In the campaign pictured to the right, Nestle worked with influencers to “drum” up interest in its ice cream. The results speak for themselves. Nestle’s Drumstick Periscope Channel generated more than 5,000 views and more than 50,000 hearts in roughly 12 hours. Influencers (Nestle worked with four.) generated 1,500 views and more than 64,000 hearts.
    [Show full text]
  • Introducing 2D Game Engine Development with Javascript
    CHAPTER 1 Introducing 2D Game Engine Development with JavaScript Video games are complex, interactive, multimedia software systems. These systems must, in real time, process player input, simulate the interactions of semi-autonomous objects, and generate high-fidelity graphics and audio outputs, all while trying to engage the players. Attempts at building video games can quickly be overwhelmed by the need to be well versed in software development as well as in how to create appealing player experiences. The first challenge can be alleviated with a software library, or game engine, that contains a coherent collection of utilities and objects designed specifically for developing video games. The player engagement goal is typically achieved through careful gameplay design and fine-tuning throughout the video game development process. This book is about the design and development of a game engine; it will focus on implementing and hiding the mundane operations and supporting complex simulations. Through the projects in this book, you will build a practical game engine for developing video games that are accessible across the Internet. A game engine relieves the game developers from simple routine tasks such as decoding specific key presses on the keyboard, designing complex algorithms for common operations such as mimicking shadows in a 2D world, and understanding nuances in implementations such as enforcing accuracy tolerance of a physics simulation. Commercial and well-established game engines such as Unity, Unreal Engine, and Panda3D present their systems through a graphical user interface (GUI). Not only does the friendly GUI simplify some of the tedious processes of game design such as creating and placing objects in a level, but more importantly, it ensures that these game engines are accessible to creative designers with diverse backgrounds who may find software development specifics distracting.
    [Show full text]
  • AJAX and Jquery L Raw AJAX Handling in JS Is Very Tedious L Jquery Provides Flexible and Strong Support to Handle AJAX Interactions Through a Set of Jquery Functions
    AJAX Asynchronous Design in Web Apps IT 4403 Advanced Web and Mobile Applications Jack G. Zheng Fall 2019 Topics l AJAX concepts and technical elements l AJAX implications and impacts l jQuery AJAX l Basic and shorthand methods l Error handling 2 AJAX l AJAX (Asynchronous JavaScript and XML) is a group of interrelated web development techniques used on the client-side to create interactive web applications. l Despite the name, the use of XML is not actually required, nor do the requests need to be asynchronous. 3 First Impression l https://www.google.com Use Chrome’s developer tools to view network communications while typing the search terms. A set of requests have been made to get JSON data from the server as I type in the search term box. Observe the “q” parameter in all URLs. 4 AJAX Model Difference With Ajax, web applications can communicate with servers in the background without a complete page loading after every request/response cycle. http://www.adaptivepath.com /ideas/ajax-new-approach- web-applications/ 5 Traditional Model The client does not generate views/presentations (HTML/CSS). Synchronous communications feature sequential request/response cycles, one after another The server prepares the whole page. http://www.websiteoptimization.com/secrets/ajax/8-1-ajax-pattern.html 6 Ajax Model l With Ajax, web applications can communicate with servers in the background without a complete page loading after every request/response cycle. The client generates views/presentations and update content (partial page) by manipulating DOM. Asynchronous communications feature independent request/response cycles The server prepares partial pages (partial HTML) or just data (XML or JSON).
    [Show full text]
  • EMERGING TECHNOLOGIES Dymamic Web Page Creation
    Language Learning & Technology January 1998, Volume 1, Number 2 http://llt.msu.edu/vol1num2/emerging/ pp. 9-15 (page numbers in PDF differ and should not be used for reference) EMERGING TECHNOLOGIES Dymamic Web Page Creation Robert Godwin-Jones Virginia Comonwealth University Contents: • Plug-ins and Applets • JavaScript • Dynamic HTML and Style Sheets • Instructional Uses • Resource List While remaining a powerful repository of information, the Web is being transformed into a medium for creating truly interactive learning environments, leading toward a convergence of Internet connectivity with the functionality of traditional multimedia authoring tools like HyperCard, Toolbook, and Authorware. Certainly it is not fully interactive yet, but that is undeniably the trend as manifested in the latest (version 4) Web browsers. "Dynamic HTML," incorporated into the new browsers, joins plug-ins, Web forms, Java applets, and JavaScript as options for Web interactivity. Plug-ins and Applets While Web pages are beginning to behave more like interactive applications, traditional authoring tools are themselves becoming Internet-savvy, primarily through the use of "plug-in" versions of players which integrate with Web browsers. The most commonly used plug-in today is Macromedia's "Shockwave," used to Web-enable such applications as Director, Authorware, and Flash. "Shocked" Web pages can be very interactive and provide a visually appealing means of interacting with users (as in some sample ESL exercises from Jim Duber). Plug-ins are easy to use -- they just need to be downloaded and installed. Some come bundled with Netscape and Microsoft's browsers, which simplifies considerably the installation process (and gives developers the confidence that most users will actually have the plug-in installed).
    [Show full text]
  • Introduction to Google Gears
    Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google Google Gears Dion Almaer code.google.com ajaxian.com Dion Almaer — Google Gears Slide 1 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google Offline Web via Open Web • Why just solve this problem for Google? • Why not solve it for others? • Solution: Make it open source with a liberal license • New BSD Dion Almaer — Google Gears Slide 2 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google Why? “How often are you on a plane?” • Reliability • 1% of downtime can hurt at the wrong time • Performance • Local acceleration • Convenience • Not having to find a connection • You are offline more than you think! Dion Almaer — Google Gears Slide 3 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google What is the philosophy? •One application, one URL •Seamless transitions between online and offline •Ability to use local data, even when online •Available to all users on all platforms •... and a pony Dion Almaer — Google Gears Slide 4 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google What is the philosophy? Browser plugin: IE, Firefox, Safari (almost!) Dion Almaer — Google Gears Slide 5 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google What is the philosophy? Dion Almaer — Google Gears Slide 6 Colorado Software Summit: October 21 – 26, 2007 © Copyright 2007, Google What is the philosophy? Do for offline what XMLHttpRequest did for web apps Ajax Libraries Gears Libraries Dojo,
    [Show full text]
  • Communications Business Plan
    1 5. Team Letter 7. Mission, Vision & Values 6. What is Citizen-Centric? 9. Organizational Chart CONTENTS 14. SWOT 20. Audience Demographics 16. Department Highlights 23. What We Do 18. Collaboration Workload 24. Five Year Implementation Table by Goal 2 10. Executive Summary 11. Benchmarking: Statistically Valid Survey 11. Industry Trends & Best Practices 12. Citizen Survey Data CONTENTS 32. Fiscal Outlook 33. Future 34. Staff Time 3 David Graham Assistant City Manager Sarah Prohaska Communications Director Nicole Hricik Marketing Supervisor & Communications Liaison Melissa Yunas Project Manager Maureen Kenyon Social Media Coordinator/Digital Storyteller Benjamin Elliott Digital Video Producer Matt Dutiel Digital Video Producer Avi Monina Digital Media Production Coordinator Gustavo Nadasi Digital Technology Coordinator Patricia D’Abate Web Content & Graphic Specialist Alyssa Taylor Graphic/Digital Content Specialist 4 Team Letter The last decade has ushered in dramatic change in the ways people receive news and information. The evening television news and the morning newspaper are no longer the definitive source of news. People now have a multitude of channels from which they receive information – a 140-character tweet, a Facebook video, local news blog or live streamed video. Technology has provided an ever- expanding host of venues for sharing information with names like Meerkat, Instagram, Periscope and Snapchat. People can download and digest information anywhere at any time with tablets and smart phones. For a large, diverse City like Port St. Lucie, it can be challenging to communicate to every audience in the particular ways that resonate with each one. However, the City’s communications team enjoys and thrives on these challenges.
    [Show full text]
  • Learning HTML5 Game Programming Addison-Wesley Learning Series
    Learning HTML5 Game Programming Addison-Wesley Learning Series Visit informit.com/learningseries for a complete list of available publications. The Addison-Wesley Learning Series is a collection of hands-on programming guides that help you quickly learn a new technology or language so you can apply what you’ve learned right away. Each title comes with sample code for the application or applications built in the text. This code is fully annotated and can be reused in your own projects with no strings attached. Many chapters end with a series of exercises to encourage you to reexamine what you have just learned, and to tweak or adjust the code as a way of learning. Titles in this series take a simple approach: they get you going right away and leave you with the ability to walk off and build your own application and apply the language or technology to whatever you are working on. Learning HTML5 Game Programming A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL James L. Williams Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Cape Town • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products Associate are claimed as trademarks. Where those designations appear in this book, and the publish- Publisher er was aware of a trademark claim, the designations have been printed with initial capital Mark Taub letters or in all capitals. Senior Acquisitions The author and publisher have taken care in the preparation of this book, but make no Editor expressed or implied warranty of any kind and assume no responsibility for errors or omis- Trina MacDonald sions.
    [Show full text]
  • Mining Social Media for Newsgathering: a Review
    Mining Social Media for Newsgathering: A Review Arkaitz Zubiaga Queen Mary University of London, London, UK [email protected] Abstract Social media is becoming an increasingly important data source for learning about breaking news and for following the latest developments of ongoing news. This is in part possible thanks to the existence of mobile devices, which allows anyone with access to the Internet to post updates from anywhere, leading in turn to a growing presence of citizen journalism. Consequently, social media has be- come a go-to resource for journalists during the process of newsgathering. Use of social media for newsgathering is however challenging, and suitable tools are needed in order to facilitate access to useful information for reporting. In this pa- per, we provide an overview of research in data mining and natural language pro- cessing for mining social media for newsgathering. We discuss five different areas that researchers have worked on to mitigate the challenges inherent to social me- dia newsgathering: news discovery, curation of news, validation and verification of content, newsgathering dashboards, and other tasks. We outline the progress made so far in the field, summarise the current challenges as well as discuss future directions in the use of computational journalism to assist with social media news- gathering. This review is relevant to computer scientists researching news in social media as well as for interdisciplinary researchers interested in the intersection of computer science and journalism. 1 Introduction The popularity of social media platforms has increased exponentially in recent years, arXiv:1804.03540v2 [cs.CL] 11 Sep 2019 gathering millions of updates on a daily basis [1, 2].
    [Show full text]
  • How We Build Web Applications
    Whitepaper How We Build Web Applications Whitepaper 1 BuildableWorks.com Table of Contents About Buildable ............................................................................................ 3 Web Application Architecture ................................................................. 4 Our Process .................................................................................................. 6 Application Architecture Guidelines ............................................... 8 Management ......................................................................................... 8 Anatomy of a Web App .............................................................................. 10 User Experience Design ...................................................................... 10 Application Build and Deployment .................................................... 14 Frontend Tools ...................................................................................... 15 Backend Tools ........................................................................................ 20 Authentication and Security ............................................................. 22 Whitepaper 2 BuildableWorks.com About Buildable Our nimble, versatile team of full-stack engineers, creatives, and developers come to work every day with the knowledge we’re making the stuff that will change our clients’ work lives for the better. It’s why we attract and keep some of the best technical talent in the industry, and it’s how we deliver the highest quality
    [Show full text]
  • Advanced NFV Features Applied to Multimedia Real-Time Communications Use Case
    Advanced NFV Features Applied to Multimedia Real-Time Communications Use Case Ana Pol ∗, Anton Roman ∗, Panagiotis Trakadas†, Panagiotis Karkazis†, Evgenia Kapassa‡, Marios Touloupou‡, Dimosthenis Kyriazis‡, Juan L. de la Cruz§, Pol Alemany§, Ricard Vilalta§, Raul Munoz§ ∗Quobis, O Porrino, Spain, Email: [ana.pol,anton.roman]@quobis.com †Synelixis Solutions S.A. 157, Perissou, str., 14343, Athens, Greece, Email: [ptrak,pkarkazis]@synelixis.com ‡Department of Digital Systems, University of Piraeus, Piraeus, Greece, Email: [ekapassa, mtouloup,dimos]@unipi.gr §CTTC, Castelldefels, Spain, Email:[jdelacruz,palemany,rvilalta,rmunoz]@cttc.es Abstract — Real-time communications are services with very application service on top of the SONATA (powered by demanding requirements in terms of reliability and Quality of 5GTANGO) service platform. Service (QoS) that is not easy to be reached. 5G technologies provide tools and techniques that promise to overcome the The remaining of the paper is organized as follows. Section current shortcomings and thus give the opportunity to service II presents the state of the art of this work, while Section III providers to offer better services to the end users. This paper introduces the overall SONATA (powered by 5GTANGO) aims at describing how an existing real-time communications Service Platform. Section IV describe in detail then enhanced service can leverage the innovative features offered by the proposed features, specially focusing on the recently new- SONATA Service Platform (SP), such as network slicing, added features such as QoS and multi-WIM support. This automated monitoring management and Service Level section describes also the principles of SONATA (powered Agreement (SLA) enforcement, to meet the challenging requirements of the service.
    [Show full text]
  • Will HTML 5 Restandardize the Web?
    TECHNOLOGY NEWS Will HTML 5 Restandardize the Web? Steven J. Vaughan-Nichols The World Wide Web Consortium is developing HTML 5 as a stan- dard that provides Web users and developers with enhanced func- tionality without using the proprietary technologies that have become popular in recent years. n theory, the Web is a resource enhanced functionality without using “Microsoft is investing heavily in that is widely and uniformly proprietary technologies. the W3C HTML 5 effort, working with usable across platforms. As Indeed, pointed out Google our competitors and the Web commu- such, many of the Web’s researcher Ian Hickson, one of the nity at large. We want to implement key technologies and archi- W3C’s HTML 5 editors, “One of our ratified, thoroughly tested, and stable Itectural elements are open and goals is to move the Web away from standards that can help Web interop- platform-independent. proprietary technologies.” erability,” said Paul Cotton, cochair of However, some vendors have The as-yet-unapproved standard the W3C HTML Working Group and developed their own technologies takes HTML from simply describing Microsoft’s group manager for Web that provide more functionality than the basics of a text-based Web to creat- services standards and partners in Web standards—such as the ability to ing and presenting animations, audio, the company’s Interoperability Strat- build rich Internet applications. mathematical equations, typefaces, egy Team. Adobe System’s Flash, Apple’s and video, as well as providing offline At the same time though, Web QuickTime, and Microsoft’s Silverlight functionality. It also enables geoloca- companies say their proprietary tech- are examples of such proprietary tion, a rich text-editing model, and nologies are already up and running, formats.
    [Show full text]