Javascript Everywhere

22
JAVASCRIPT back & forth by Ciprian Amariei

Transcript of Javascript Everywhere

Page 1: Javascript Everywhere

JAVASCRIPTback & forth

by Ciprian Amariei

Page 2: Javascript Everywhere

MICHAEL JACKSON'S "EARTH SONG"

JAVASCRIPT

RUBY

Page 3: Javascript Everywhere

http://www2.ldc.lu.se/temadag95/javascript.txt

Brendan Eich - Mozilla CTO

November 4, 1995

HAPPY BIRTHDAY, JAVASCRIPT!

Page 4: Javascript Everywhere

"JAVASCRIPT IS EATING THE WORLD" - SLASHDOT

http://www.jseverywhere.org/ http://jseverywhere.eu/

JS EVERYWHERE

mobile app

client sideserver side

desktop app

add-on/plug-in

Page 5: Javascript Everywhere

JS EVERYWHERE

@ PAYPAL

replacing Java with node.js

Built almost twice as fast with fewer people

Written in 33% fewer lines of code

Constructed with 40% fewer files

Double the requests per second vs. the Java application

35% decrease in the average response time

Page 6: Javascript Everywhere

JAVASCRIPT - THE LANGUAGE

dynamic typing

"JavaScript programming language is

solid, robust, and incredibly powerful" - John Resig, jQuery

object based

first class functions

prototype based

Page 7: Javascript Everywhere

CONNECTED APPS*

web app

*client - server applications

desktop apps

mobile appFirefox OS app

Page 8: Javascript Everywhere

ONE LANGUAGE TO RULE THEM ALL

JavaScript

SERVER CLIENTJavaScript

PHPRuby

PythonJavaetc.

Page 9: Javascript Everywhere

SERVER SIDE

node.js

npm - Node Packaged Modules

hosting - , etc.Amazon EC2 nodejitsu

Page 10: Javascript Everywhere

libraries

CLIENT SIDE

MODERN JAVASCRIPT

task automation

testing

template systemspackage managers

frameworks

Page 11: Javascript Everywhere

ONE OF EACH

JS LIBRARY - JQUERY

JS FRAMEWORK - ANGULARJSJS TEMPLATES - DUST.JS

JS MOBILE LIBRARY - JQUERY MOBILEJS TESTING - QUNITJS

Page 12: Javascript Everywhere

TOOLS

TASK AUTOMATION - GRUNT

PACKAGE MANAGER - BOWER

PROJECT WORKFLOW MANAGER - YEOMAN

DEBUGGING - FIREBUG OR EQUIV. (F12)

Page 13: Javascript Everywhere

ISOMORPHIC JAVASCRIPT

pattern - RVP - Resouce View Presenter

source airbnb

Page 14: Javascript Everywhere

ISOMORPHIC JAVASCRIPT

"I like Meteor.js because I'm lazy"

FRAMEWORKS

Meteor Luna

Page 15: Javascript Everywhere

WEB APPS AUTOMATION

SELENIUM

BROWSER AUTOMATION SOLUTIONS

HEADLESS BROWSERS

PHANTOMJS

Page 18: Javascript Everywhere

DESKTOP APPS

NODE-WEBKITChromium + node.js

Creating Desktop Applications With node-webkit

Page 19: Javascript Everywhere

FUTURE = HARMONY (ES6)

Proxies

Classes

Template strings

Maps and Sets

Eight Cool Features Coming in ES6

Modules

Page 20: Javascript Everywhere
Page 21: Javascript Everywhere

The First Time I Successfully Deployed a Node.js Project

http://frontenddevreactions.tumblr.com/

Page 22: Javascript Everywhere

Q & A

THANK YOU!