The Future of Firefox and JavaScript

jeresig
The Future of
Firefox and JavaScript
           John Resig (ejohn.org)
    Mozilla Corporation / jQuery JavaScript Library

       October 3rd, 2007 - Future of Web Apps
The Future of Firefox
    Graphics
✦
    ✦ SVG
    ✦ Canvas

    Video and Audio
✦

    Offline Web Applications
✦

    XMLHttpRequest++
✦

    Desktop Integration
✦
SVG
    SVG Foreign Object
✦
    ✦ Import normal HTML elements
    ✦ Demo: http://starkravingfinkle.org/blog/2007/07/firefox-3-svg-foreignobject/

    Speed Improvements in the pipeline
✦
    ✦ Joost built on Mozilla platform
Canvas 3D
Canvas 3D
    Works like normal 2D Canvas
✦

    Thin layer to OpenGL
✦

    Can embed native shader scripts
✦
    ✦ Run natively by the GPU

    Extension: http://people.mozilla.com/~vladimir/canvas3d/
✦
Shader Scripting
    <script type=”x-shader/x-fragment”>
✦
      void main(void) {
         gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);
      }
    </script>
    <script type=”x-shader/x-vertex”>
      attribute vec4 myVertex;
      uniform mat4 myPMVMatrix;
      void main(void) {
         gl_Position = myPMVMatrix * myVertex;
      }
    </script>
<video/> and <audio/>
    Pioneered by Opera
✦

    Generic means of playing video and audio
✦

    Full JavaScript API
✦

    Guaranteed to play, at least, Ogg Theora
✦

    Plugin more video/audio types
✦

    Demo: http://www.double.co.nz/video_test/
✦
Offline Web Apps
    Very new territory
✦

    Three Specs:
✦
    ✦ Mozilla
    ✦ Google Gears
    ✦ WHATWG

    Working to converge!
✦
    ✦ A final amalgam will be in Firefox 3
Offline Web Apps
    Global Storage
✦
    ✦ Cookies++

    File caching (CSS, Images, etc.)
✦

    offline/online-mode detection
✦

    File Uploads Queueing
✦

    Some SQL-like stuff (work in progress)
✦
XMLHttpRequest++
    Cross-domain XMLHttpRequest
✦
    ✦ Already landed, in Firefox 3

    JSON (De-)Serialization
✦
    ✦ object.toJSONString();
    ✦ string.parseJSON();
Desktop Integration
    Webrunner
✦
    ✦ Deployable web applications
    ✦ (Built on XULRunner)

    Prism (Still in Planning)
✦
    ✦ Webrunner in Firefox
    ✦ Bookmark puts an icon on the desktop
    ✦ Launches a dedicated application
The Future of JavaScript
    “Old” Versions:
✦
    ✦ Firefox 1.5: JavaScript 1.6
    ✦ Firefox 2.0: JavaScript 1.7

    New Versions:
✦
    ✦ Firefox 3: JavaScript 1.8
    ✦ Firefox 4 (?): JavaScript 2

    Virtual Machines
✦

    Server-Side JavaScript
✦
JavaScript 2
    Optional Type Annotation
✦
    ✦ var foo : string = “”;
    ✦ type Pair = [ int, string ];
    ✦ var bar : Vector.<Pair>;

    Classes
✦
    ✦ class User {
         var name : string;
         var age : int;
      }
JavaScript 2
    Block-Scoped Variables
✦
    ✦ let foo = “test”;

    Packages
✦
    ✦ package com.mozilla.Foo;
      import com.jquery.query;
      query(“div”);
    Dictionaries
✦
    ✦ Map.<*, int>
Tamarin
    Tamarin
✦
    ✦ New Virtual Machine from Adobe
    ✦ Perfect for ActionScript
      ✦ (a mutant cousin of JavaScript 2)

    The Three Monkies:
✦
    ✦ ActionMonkey
    ✦ ScreamingMonkey
    ✦ IronMonkey
Three Monkies
    ActionMonkey
✦
    ✦ Integrating Tamarin into SpiderMonkey
    ✦ Powering Firefox 4 (?) + JavaScript 2

    ScreamingMonkey
✦
    ✦ Forcing Tamarin into Internet Explorer
    ✦ (Kicking and screaming?)

    IronMonkey
✦
    ✦ Bringing Python + Ruby to Tamarin
Server-Side JavaScript
    As old as JavaScript itself
✦

    Seeing a strong resurgence
✦

    Web Application Dev:
✦
    ✦ Helma
    ✦ Phobos

    Application Dev:
✦
    ✦ Spidermonkey
    ✦ Rhino
Rhino
    JavaScript implemented in Java
✦
    ✦ Full JS 1.6 Support
    ✦ Upcoming JS 1.7 Support

    Full access to Java packages
✦

    Weird fun:
✦
    ✦ var myString = new java.lang.String();

    Awesome new territory:
✦
    ✦ var myThread = new java.lang.Thread();

    DOM to the Server
✦
Questions, et. al.
    Bright future! Enjoy!
✦

    John Resig
✦
    http://ejohn.org/
1 of 19

Recommended

Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1... by
Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1...Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1...
Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1...Frédéric Harper
5.1K views56 slides
Firefox by
FirefoxFirefox
FirefoxAnkit Shah
57.7K views71 slides
Advanced Chrome extension exploitation by
Advanced Chrome extension exploitationAdvanced Chrome extension exploitation
Advanced Chrome extension exploitationKrzysztof Kotowicz
9.7K views57 slides
I'm in ur browser, pwning your stuff - Attacking (with) Google Chrome Extensions by
I'm in ur browser, pwning your stuff - Attacking (with) Google Chrome ExtensionsI'm in ur browser, pwning your stuff - Attacking (with) Google Chrome Extensions
I'm in ur browser, pwning your stuff - Attacking (with) Google Chrome ExtensionsKrzysztof Kotowicz
9.7K views49 slides
Performance Improvements in Browsers by
Performance Improvements in BrowsersPerformance Improvements in Browsers
Performance Improvements in Browsersjeresig
12.1K views65 slides
When you don't have 0days: client-side exploitation for the masses by
When you don't have 0days: client-side exploitation for the massesWhen you don't have 0days: client-side exploitation for the masses
When you don't have 0days: client-side exploitation for the massesMichele Orru
59.9K views34 slides

More Related Content

What's hot

Php push notifications by
Php push notificationsPhp push notifications
Php push notificationsMohammed Shurrab
7.5K views10 slides
Browser Exploitation Framework Tutorial by
Browser Exploitation Framework TutorialBrowser Exploitation Framework Tutorial
Browser Exploitation Framework Tutorialimlaurel2
4.5K views33 slides
Chocolatey - making the process of installing software on windows easy as pie by
Chocolatey - making the process of installing software on windows easy as pieChocolatey - making the process of installing software on windows easy as pie
Chocolatey - making the process of installing software on windows easy as pieJustin James
1.3K views30 slides
Google Chromebook for the Enterprise: Yeah or Meh? by
Google Chromebook for the Enterprise: Yeah or Meh?Google Chromebook for the Enterprise: Yeah or Meh?
Google Chromebook for the Enterprise: Yeah or Meh?Ericom Software
2.9K views53 slides
Html5: Something wicked this way comes (Hack in Paris) by
Html5: Something wicked this way comes (Hack in Paris)Html5: Something wicked this way comes (Hack in Paris)
Html5: Something wicked this way comes (Hack in Paris)Krzysztof Kotowicz
15.4K views47 slides
Advances in BeEF - AthCon2012 by
Advances in BeEF - AthCon2012Advances in BeEF - AthCon2012
Advances in BeEF - AthCon2012Michele Orru
14.3K views25 slides

What's hot(20)

Browser Exploitation Framework Tutorial by imlaurel2
Browser Exploitation Framework TutorialBrowser Exploitation Framework Tutorial
Browser Exploitation Framework Tutorial
imlaurel24.5K views
Chocolatey - making the process of installing software on windows easy as pie by Justin James
Chocolatey - making the process of installing software on windows easy as pieChocolatey - making the process of installing software on windows easy as pie
Chocolatey - making the process of installing software on windows easy as pie
Justin James1.3K views
Google Chromebook for the Enterprise: Yeah or Meh? by Ericom Software
Google Chromebook for the Enterprise: Yeah or Meh?Google Chromebook for the Enterprise: Yeah or Meh?
Google Chromebook for the Enterprise: Yeah or Meh?
Ericom Software2.9K views
Html5: Something wicked this way comes (Hack in Paris) by Krzysztof Kotowicz
Html5: Something wicked this way comes (Hack in Paris)Html5: Something wicked this way comes (Hack in Paris)
Html5: Something wicked this way comes (Hack in Paris)
Krzysztof Kotowicz15.4K views
Advances in BeEF - AthCon2012 by Michele Orru
Advances in BeEF - AthCon2012Advances in BeEF - AthCon2012
Advances in BeEF - AthCon2012
Michele Orru14.3K views
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost) by Ericom Software
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
WebSockets Everywhere: the Future Transport Protocol for Everything (Almost)
Ericom Software3.8K views
Capistrano deploy Magento project in an efficient way by Sylvain Rayé
Capistrano deploy Magento project in an efficient wayCapistrano deploy Magento project in an efficient way
Capistrano deploy Magento project in an efficient way
Sylvain Rayé4.8K views
Be ef presentation-securitybyte2011-michele_orru by Michele Orru
Be ef presentation-securitybyte2011-michele_orruBe ef presentation-securitybyte2011-michele_orru
Be ef presentation-securitybyte2011-michele_orru
Michele Orru2.7K views
Web Browsers by Studying
Web BrowsersWeb Browsers
Web Browsers
Studying440 views
Buried by time, dust and BeEF by Michele Orru
Buried by time, dust and BeEFBuried by time, dust and BeEF
Buried by time, dust and BeEF
Michele Orru5.3K views
Composer | PHP Dependency Manager by Ujjwal Ojha
Composer | PHP Dependency ManagerComposer | PHP Dependency Manager
Composer | PHP Dependency Manager
Ujjwal Ojha1.2K views
PHP development with Docker by Yosh de Vos
PHP development with DockerPHP development with Docker
PHP development with Docker
Yosh de Vos779 views
Hacktivity2011 be ef-preso_micheleorru by Michele Orru
Hacktivity2011 be ef-preso_micheleorruHacktivity2011 be ef-preso_micheleorru
Hacktivity2011 be ef-preso_micheleorru
Michele Orru3K views
Managing windows with Puppet and Chocolatey by SethMcBean
Managing windows with Puppet and ChocolateyManaging windows with Puppet and Chocolatey
Managing windows with Puppet and Chocolatey
SethMcBean2.6K views

Similar to The Future of Firefox and JavaScript

Performance Improvements In Browsers by
Performance Improvements In BrowsersPerformance Improvements In Browsers
Performance Improvements In BrowsersGoogleTecTalks
662 views65 slides
Performance Improvements in Browsers by
Performance Improvements in BrowsersPerformance Improvements in Browsers
Performance Improvements in Browsersjeresig
3.9K views46 slides
Building a JavaScript Library by
Building a JavaScript LibraryBuilding a JavaScript Library
Building a JavaScript Libraryjeresig
11.7K views54 slides
Learning jQuery @ MIT by
Learning jQuery @ MITLearning jQuery @ MIT
Learning jQuery @ MITjeresig
1.5K views31 slides
Ajax Tutorial by
Ajax TutorialAjax Tutorial
Ajax Tutorialoscon2007
605 views58 slides
Web Development: The Next Five Years by
Web Development: The Next Five YearsWeb Development: The Next Five Years
Web Development: The Next Five Yearssneeu
3.5K views44 slides

Similar to The Future of Firefox and JavaScript(20)

Performance Improvements In Browsers by GoogleTecTalks
Performance Improvements In BrowsersPerformance Improvements In Browsers
Performance Improvements In Browsers
GoogleTecTalks662 views
Performance Improvements in Browsers by jeresig
Performance Improvements in BrowsersPerformance Improvements in Browsers
Performance Improvements in Browsers
jeresig3.9K views
Building a JavaScript Library by jeresig
Building a JavaScript LibraryBuilding a JavaScript Library
Building a JavaScript Library
jeresig11.7K views
Learning jQuery @ MIT by jeresig
Learning jQuery @ MITLearning jQuery @ MIT
Learning jQuery @ MIT
jeresig1.5K views
Ajax Tutorial by oscon2007
Ajax TutorialAjax Tutorial
Ajax Tutorial
oscon2007605 views
Web Development: The Next Five Years by sneeu
Web Development: The Next Five YearsWeb Development: The Next Five Years
Web Development: The Next Five Years
sneeu3.5K views
Performance, Games, and Distributed Testing in JavaScript by jeresig
Performance, Games, and Distributed Testing in JavaScriptPerformance, Games, and Distributed Testing in JavaScript
Performance, Games, and Distributed Testing in JavaScript
jeresig2.9K views
jQuery 1.3 and jQuery UI by jeresig
jQuery 1.3 and jQuery UIjQuery 1.3 and jQuery UI
jQuery 1.3 and jQuery UI
jeresig4.5K views
JavaFX Advanced by Paul Bakker
JavaFX AdvancedJavaFX Advanced
JavaFX Advanced
Paul Bakker2.3K views
Google's HTML5 Work: what's next? by Patrick Chanezon
Google's HTML5 Work: what's next?Google's HTML5 Work: what's next?
Google's HTML5 Work: what's next?
Patrick Chanezon13.5K views
Going Live! with Comet by Simon Willison
Going Live! with CometGoing Live! with Comet
Going Live! with Comet
Simon Willison13.4K views
Chris Wilson @ FOWA Feb 07 by carsonsystems
Chris Wilson @ FOWA Feb 07Chris Wilson @ FOWA Feb 07
Chris Wilson @ FOWA Feb 07
carsonsystems657 views
MozTW YZU CSE Lecture by littlebtc
MozTW YZU CSE LectureMozTW YZU CSE Lecture
MozTW YZU CSE Lecture
littlebtc1K views
JavaScript Libraries: The Big Picture by Simon Willison
JavaScript Libraries: The Big PictureJavaScript Libraries: The Big Picture
JavaScript Libraries: The Big Picture
Simon Willison4K views
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries by Simon Willison
Jazz up your JavaScript: Unobtrusive scripting with JavaScript librariesJazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Simon Willison48.2K views
Understanding the Rails web model and scalability options by .toster
Understanding the Rails web model and scalability optionsUnderstanding the Rails web model and scalability options
Understanding the Rails web model and scalability options
.toster749 views
Toster - Understanding the Rails Web Model and Scalability Options by Fabio Akita
Toster - Understanding the Rails Web Model and Scalability OptionsToster - Understanding the Rails Web Model and Scalability Options
Toster - Understanding the Rails Web Model and Scalability Options
Fabio Akita4.4K views
Drupal 6 JavaScript and jQuery by Matt Butcher
Drupal 6 JavaScript and jQueryDrupal 6 JavaScript and jQuery
Drupal 6 JavaScript and jQuery
Matt Butcher3.2K views
Scripting Yor Java Application with BSF3 by day
Scripting Yor Java Application with BSF3Scripting Yor Java Application with BSF3
Scripting Yor Java Application with BSF3
day1.2K views

More from jeresig

Does Coding Every Day Matter? by
Does Coding Every Day Matter?Does Coding Every Day Matter?
Does Coding Every Day Matter?jeresig
3K views19 slides
Accidentally Becoming a Digital Librarian by
Accidentally Becoming a Digital LibrarianAccidentally Becoming a Digital Librarian
Accidentally Becoming a Digital Librarianjeresig
1.3K views72 slides
2014: John's Favorite Thing (Neo4j) by
2014: John's Favorite Thing (Neo4j)2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)jeresig
847 views42 slides
Computer Vision as Art Historical Investigation by
Computer Vision as Art Historical InvestigationComputer Vision as Art Historical Investigation
Computer Vision as Art Historical Investigationjeresig
1K views89 slides
Hacking Art History by
Hacking Art HistoryHacking Art History
Hacking Art Historyjeresig
925 views107 slides
Using JS to teach JS at Khan Academy by
Using JS to teach JS at Khan AcademyUsing JS to teach JS at Khan Academy
Using JS to teach JS at Khan Academyjeresig
1K views25 slides

More from jeresig(20)

Does Coding Every Day Matter? by jeresig
Does Coding Every Day Matter?Does Coding Every Day Matter?
Does Coding Every Day Matter?
jeresig3K views
Accidentally Becoming a Digital Librarian by jeresig
Accidentally Becoming a Digital LibrarianAccidentally Becoming a Digital Librarian
Accidentally Becoming a Digital Librarian
jeresig1.3K views
2014: John's Favorite Thing (Neo4j) by jeresig
2014: John's Favorite Thing (Neo4j)2014: John's Favorite Thing (Neo4j)
2014: John's Favorite Thing (Neo4j)
jeresig847 views
Computer Vision as Art Historical Investigation by jeresig
Computer Vision as Art Historical InvestigationComputer Vision as Art Historical Investigation
Computer Vision as Art Historical Investigation
jeresig1K views
Hacking Art History by jeresig
Hacking Art HistoryHacking Art History
Hacking Art History
jeresig925 views
Using JS to teach JS at Khan Academy by jeresig
Using JS to teach JS at Khan AcademyUsing JS to teach JS at Khan Academy
Using JS to teach JS at Khan Academy
jeresig1K views
Applying Computer Vision to Art History by jeresig
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art History
jeresig826 views
NYARC 2014: Frick/Zeri Results by jeresig
NYARC 2014: Frick/Zeri ResultsNYARC 2014: Frick/Zeri Results
NYARC 2014: Frick/Zeri Results
jeresig2.1K views
EmpireJS: Hacking Art with Node js and Image Analysis by jeresig
EmpireJS: Hacking Art with Node js and Image AnalysisEmpireJS: Hacking Art with Node js and Image Analysis
EmpireJS: Hacking Art with Node js and Image Analysis
jeresig18.5K views
Applying Computer Vision to Art History by jeresig
Applying Computer Vision to Art HistoryApplying Computer Vision to Art History
Applying Computer Vision to Art History
jeresig3.1K views
JavaScript Libraries (Ajax Exp 2006) by jeresig
JavaScript Libraries (Ajax Exp 2006)JavaScript Libraries (Ajax Exp 2006)
JavaScript Libraries (Ajax Exp 2006)
jeresig3.1K views
Introduction to jQuery (Ajax Exp 2006) by jeresig
Introduction to jQuery (Ajax Exp 2006)Introduction to jQuery (Ajax Exp 2006)
Introduction to jQuery (Ajax Exp 2006)
jeresig2.4K views
jQuery Recommendations to the W3C (2011) by jeresig
jQuery Recommendations to the W3C (2011)jQuery Recommendations to the W3C (2011)
jQuery Recommendations to the W3C (2011)
jeresig1.7K views
jQuery Open Source Process (RIT 2011) by jeresig
jQuery Open Source Process (RIT 2011)jQuery Open Source Process (RIT 2011)
jQuery Open Source Process (RIT 2011)
jeresig1.7K views
jQuery Open Source Process (Knight Foundation 2011) by jeresig
jQuery Open Source Process (Knight Foundation 2011)jQuery Open Source Process (Knight Foundation 2011)
jQuery Open Source Process (Knight Foundation 2011)
jeresig2.2K views
jQuery Mobile by jeresig
jQuery MobilejQuery Mobile
jQuery Mobile
jeresig1.5K views
jQuery Open Source (Fronteer 2011) by jeresig
jQuery Open Source (Fronteer 2011)jQuery Open Source (Fronteer 2011)
jQuery Open Source (Fronteer 2011)
jeresig4K views
Holistic JavaScript Performance by jeresig
Holistic JavaScript PerformanceHolistic JavaScript Performance
Holistic JavaScript Performance
jeresig4K views
New Features Coming in Browsers (RIT '09) by jeresig
New Features Coming in Browsers (RIT '09)New Features Coming in Browsers (RIT '09)
New Features Coming in Browsers (RIT '09)
jeresig1.5K views
Introduction to jQuery (Ajax Exp 2007) by jeresig
Introduction to jQuery (Ajax Exp 2007)Introduction to jQuery (Ajax Exp 2007)
Introduction to jQuery (Ajax Exp 2007)
jeresig1.3K views

The Future of Firefox and JavaScript

  • 1. The Future of Firefox and JavaScript John Resig (ejohn.org) Mozilla Corporation / jQuery JavaScript Library October 3rd, 2007 - Future of Web Apps
  • 2. The Future of Firefox Graphics ✦ ✦ SVG ✦ Canvas Video and Audio ✦ Offline Web Applications ✦ XMLHttpRequest++ ✦ Desktop Integration ✦
  • 3. SVG SVG Foreign Object ✦ ✦ Import normal HTML elements ✦ Demo: http://starkravingfinkle.org/blog/2007/07/firefox-3-svg-foreignobject/ Speed Improvements in the pipeline ✦ ✦ Joost built on Mozilla platform
  • 5. Canvas 3D Works like normal 2D Canvas ✦ Thin layer to OpenGL ✦ Can embed native shader scripts ✦ ✦ Run natively by the GPU Extension: http://people.mozilla.com/~vladimir/canvas3d/ ✦
  • 6. Shader Scripting <script type=”x-shader/x-fragment”> ✦ void main(void) { gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); } </script> <script type=”x-shader/x-vertex”> attribute vec4 myVertex; uniform mat4 myPMVMatrix; void main(void) { gl_Position = myPMVMatrix * myVertex; } </script>
  • 7. <video/> and <audio/> Pioneered by Opera ✦ Generic means of playing video and audio ✦ Full JavaScript API ✦ Guaranteed to play, at least, Ogg Theora ✦ Plugin more video/audio types ✦ Demo: http://www.double.co.nz/video_test/ ✦
  • 8. Offline Web Apps Very new territory ✦ Three Specs: ✦ ✦ Mozilla ✦ Google Gears ✦ WHATWG Working to converge! ✦ ✦ A final amalgam will be in Firefox 3
  • 9. Offline Web Apps Global Storage ✦ ✦ Cookies++ File caching (CSS, Images, etc.) ✦ offline/online-mode detection ✦ File Uploads Queueing ✦ Some SQL-like stuff (work in progress) ✦
  • 10. XMLHttpRequest++ Cross-domain XMLHttpRequest ✦ ✦ Already landed, in Firefox 3 JSON (De-)Serialization ✦ ✦ object.toJSONString(); ✦ string.parseJSON();
  • 11. Desktop Integration Webrunner ✦ ✦ Deployable web applications ✦ (Built on XULRunner) Prism (Still in Planning) ✦ ✦ Webrunner in Firefox ✦ Bookmark puts an icon on the desktop ✦ Launches a dedicated application
  • 12. The Future of JavaScript “Old” Versions: ✦ ✦ Firefox 1.5: JavaScript 1.6 ✦ Firefox 2.0: JavaScript 1.7 New Versions: ✦ ✦ Firefox 3: JavaScript 1.8 ✦ Firefox 4 (?): JavaScript 2 Virtual Machines ✦ Server-Side JavaScript ✦
  • 13. JavaScript 2 Optional Type Annotation ✦ ✦ var foo : string = “”; ✦ type Pair = [ int, string ]; ✦ var bar : Vector.<Pair>; Classes ✦ ✦ class User { var name : string; var age : int; }
  • 14. JavaScript 2 Block-Scoped Variables ✦ ✦ let foo = “test”; Packages ✦ ✦ package com.mozilla.Foo; import com.jquery.query; query(“div”); Dictionaries ✦ ✦ Map.<*, int>
  • 15. Tamarin Tamarin ✦ ✦ New Virtual Machine from Adobe ✦ Perfect for ActionScript ✦ (a mutant cousin of JavaScript 2) The Three Monkies: ✦ ✦ ActionMonkey ✦ ScreamingMonkey ✦ IronMonkey
  • 16. Three Monkies ActionMonkey ✦ ✦ Integrating Tamarin into SpiderMonkey ✦ Powering Firefox 4 (?) + JavaScript 2 ScreamingMonkey ✦ ✦ Forcing Tamarin into Internet Explorer ✦ (Kicking and screaming?) IronMonkey ✦ ✦ Bringing Python + Ruby to Tamarin
  • 17. Server-Side JavaScript As old as JavaScript itself ✦ Seeing a strong resurgence ✦ Web Application Dev: ✦ ✦ Helma ✦ Phobos Application Dev: ✦ ✦ Spidermonkey ✦ Rhino
  • 18. Rhino JavaScript implemented in Java ✦ ✦ Full JS 1.6 Support ✦ Upcoming JS 1.7 Support Full access to Java packages ✦ Weird fun: ✦ ✦ var myString = new java.lang.String(); Awesome new territory: ✦ ✦ var myThread = new java.lang.Thread(); DOM to the Server ✦
  • 19. Questions, et. al. Bright future! Enjoy! ✦ John Resig ✦ http://ejohn.org/