State of the Web
-
Upload
neueda -
Category
Technology
-
view
426 -
download
0
Transcript of State of the Web
![Page 1: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/1.jpg)
State of the WebDmitry Buzdin
01.06.2012
![Page 3: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/3.jpg)
Three Questions
•How Web evolved in the last 5 years?
•How browsers are different now?
•Why should you care?
![Page 4: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/4.jpg)
Evolution of the Web
![Page 5: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/5.jpg)
#!/usr/bin/perl
print "Content-type: text/html\n\n";print "<html><head>\n";print "<title>Web App</title>\n";print "</head>\n";print "<body><b>Hello World</b>\n";print "</body>;
![Page 6: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/6.jpg)
<HTML><HEAD><TITLE>Web App</TITLE><%! String message = "Hello, World"; %></HEAD><BODY><b><%= message%></b></BODY></HTML>
![Page 7: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/7.jpg)
<HTML><HEAD><TITLE>Web App</TITLE><%! String message = "Hello, World"; %></HEAD><BODY><b onclick=”alert(“Hello, World”);”><%= message%></b></BODY></HTML>
![Page 8: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/8.jpg)
Humans Discovered JavaScript
![Page 9: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/9.jpg)
AJAX
The most important invention of the XX century
![Page 10: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/10.jpg)
WEB 2.0 and RIA
![Page 11: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/11.jpg)
Typical Web App!
![Page 12: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/12.jpg)
Browser Wars
![Page 13: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/13.jpg)
Episode VII: Performance Wars
When: 2008 - 2009Reason: JavaScript performance
![Page 14: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/14.jpg)
IE7 Chrome19
![Page 15: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/15.jpg)
http://www.webkit.org/perf/sunspider/sunspider.html
0
175
350
525
700
Times Slower
650x Slower
IE7
Chrome19
![Page 16: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/16.jpg)
JavaScript is so fast today, that none
knows/cares which browser is the
fastest
![Page 17: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/17.jpg)
When: 2011 - nowReason: HTML5
Episode VIII: Feature Wars
![Page 18: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/18.jpg)
Revolutionary update to the Web
![Page 19: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/19.jpg)
Browsers are competing now
for HTML5 completeness
![Page 20: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/20.jpg)
New versions every
few months
![Page 22: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/22.jpg)
Even TVs support HTML5 now
Microwaves are next...
![Page 23: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/23.jpg)
Some of the New HTML5 Features•LocalStorage
•IndexedDB
•Web Sockets
•SVG
•Canvas & Web GL
![Page 24: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/24.jpg)
LocalStorage•Key-value persistent
storage
•Either linked to Session or Domain
localStorage.setItem(“item”, “value”); var result = localStorage.getItem("item");
![Page 25: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/25.jpg)
IndexedDB
•Real database
•JSON object store
•Transactional
•Indexable
•5MB storage limit in Chrome
![Page 26: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/26.jpg)
JSON{id: 1, value: "ok" items: [ { id:2, value: true }, {id:3} ]}
![Page 27: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/27.jpg)
Web Sockets
•Separate TCP connection on port 80
•Free from HTTP limitations
•Server push possible
•Peer-to-Peer possible
![Page 28: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/28.jpg)
SVG
•Scalable Vector Graphics
•Resizable vector <svg xmlns="http://www.w3.org/2000/svg" version="1.1"> <circle cx="100" cy="50" r="40"
stroke="black" stroke-width="2" fill="red" /></svg>
![Page 29: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/29.jpg)
Canvas & WebGL
•2D/3D graphics
•Hardware accelerated
•Next generation of online games
![Page 30: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/30.jpg)
WEB 1.0 Architecture
Static PagesCookies
Session StorageGraphics RenderingPage Templates
HTTP
![Page 31: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/31.jpg)
WEB 2.0 Architecture
Dynamic PagesSession StorageGraphics
Security & Persistence
HTTP WebSockets
![Page 32: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/32.jpg)
No more work for backend
![Page 33: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/33.jpg)
Still plenty of work, but huge demand for the
![Page 34: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/34.jpg)
![Page 35: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/35.jpg)
One HTML5 will be standardized
in 2014
![Page 36: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/36.jpg)
HTML5 = JavaScript ?
![Page 37: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/37.jpg)
Why People Rave about JavaScript?•Extremely simple*
•Dynamic
•Productive
•Language of the Web
![Page 38: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/38.jpg)
Why not JavaScript•Was not intended to power
the Web
•Poor language design decisions
•Too dynamic
•Too simple
![Page 39: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/39.jpg)
JavaScript Alternatives
•Oracle JavaFX
•Google GWT, Dart
•JVM Langs - Fantom, Kotlin, Clojure
•CoffeeScript
![Page 40: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/40.jpg)
Web is inevitable!
![Page 41: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/41.jpg)
Web is everywhere!DesktopsTablets
SmartphonesTVs
Microwaves?
![Page 42: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/42.jpg)
Time to learn HTML5
•Building great applications is simpler than ever
•Programming is becoming mainstream
•HTML5 is a platform, not a tool or language
![Page 43: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/43.jpg)
“May you live in interesting times”
Chinese curse
![Page 44: State of the Web](https://reader034.fdocuments.us/reader034/viewer/2022052618/554f3a0fb4c90572088b4e9c/html5/thumbnails/44.jpg)
Thank You!