Your SlideShare is downloading. ×
0
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Appenginejs (old presentation)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Appenginejs (old presentation)

1,966

Published on

A short introduction to the AppengineJS framework and the potential for disruption posed by JavaScript on the server.

A short introduction to the AppengineJS framework and the potential for disruption posed by JavaScript on the server.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,966
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. appenginejs JavaScript on Google App Engine Blog example downloads: http://tinyurl.com/appenginejs-sdk http://tinyurl.com/appenginejs-example This presentation: http://tinyurl.com/appenginejs-talk
  • 2. Why JavaScript? The World's Most Popular Programming Language The World's Most Misunderstood Programming Language Dynamic, Functional, Prototypal Event loop instead of threads Engine explosion: v8, SquirrelFish Extreme, TraceMonkey, Rhino, Chakra, Carakan JavaScript on the server: Helma/Ringo, Persevere/Pintura, Jaxer, Joyent Smart, Node and many others.
  • 3. Standardization Common API for JavaScript applications Analogous to stdlib/stdio Implementations exist for most engines Specifications: modules, packages, system, binary, encodings, filesystem, console, promises, testing and more http://commonjs.org/
  • 4. Script in JavaScript var File = require("fs"); var csv = File.open("invitations.csv"); var out = File.open("invitations2.csv", "w"); for (var i = 1; i<33421; i++) { var line = csv.readLine(); var comma = line.indexOf(','); var newline = '"' + i + '"' + line.substring(comma); out.write(newline); } out.flush();
  • 5. Smash hit Evented non-blocking I/O server Every API rewritten from scratch as async JavaScript is perfect for event loop architectures Uses v8, the fastest engine http://nodejs.org
  • 6. Google App Engine Run your web apps on Google's infrastructure Excellent scalability Free for low traffic apps Zero admin Officially supported languages: Python, Java Unofficial implementations: Clojure, PHP, Groovy, JavaScript http://code.google.com/appengine/
  • 7. appenginejs stack
  • 8. Rhino
  • 9. Rhino JavaScript for Java Works both ways Ships with the default JDK Used to be the fastest JavaScript VM Still very performant for long-running processes http://www.mozilla.org/rhino/
  • 10. Narwhal
  • 11. Narwhal General purpose JavaScript platform Runs on various JavaScript engines Large collection of packages http://narwhaljs.org/
  • 12. Ringo
  • 13. Ringo General purpose JavaScript platform Runs on Rhino Descendant of Helma Graphical debugger High-level web framework http://ringojs.org/
  • 14. JSGI/Jack
  • 15. Jack/JSGI JSGI is a web server interface specification for JavaScript Jack is the first implementation Similar to Ruby's Rack and Python's WSGI Simpler than Java Servlets http://jackjs.org/
  • 16. Hello World function(env) { return { status : 200, headers : {"Content-Type":"text/plain"}, body : ["Hello world!"] }; }

×