scalable web programming · submitting code goal: always work out of the box problems package...
TRANSCRIPT
![Page 1: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/1.jpg)
Scalable Web Programming
CS193S - Jan Jannink - 1/26/10
![Page 2: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/2.jpg)
Administrative Stuff
We’ll be team building on Thursday
Much went well with assignments
We’ll review some IT type problems
![Page 3: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/3.jpg)
Some APIs Used
Visualization, Maps, Voice
Search (google, yahoo)
SmartGWT
![Page 4: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/4.jpg)
Submitting CodeGoal: always work out of the box
Problems
package external jar files properly
deleted files still referenced
Java version (5 or 6)
missing DOM elements, or documentation
![Page 5: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/5.jpg)
Weekly Syllabus1. Scalability: (Jan.)
2. Agile Practices
3. Ecology/Mashups
4. Browser/Client
5. Data/Server: (Feb.)
6. Security/Privacy
7. Analytics*
8. Cloud/Map-Reduce
9. Publish APIs: (Mar.)*
10. Future
* assignment due
![Page 6: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/6.jpg)
Today’s Themes
Evolution of the browser
First impressions
First line of defense
Agile UI
RESTful object lifecycle
![Page 7: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/7.jpg)
Tip of the Iceberg
![Page 8: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/8.jpg)
Browser PrehistoryJava applets “killer app” for Netscape (1995)
Applets are heavyweight
secure sandbox
compilation
monolithic
Javascript
![Page 9: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/9.jpg)
Browser 2.0IE5 (1999), Firefox
XMLHttpRequest
Gmail, Google Maps, Mashups
Chrome, V8 javascript compiler
iPhone, Android
GWT
![Page 10: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/10.jpg)
HeadachesIncompatibilities
threading, javascript syntax, java version
Performance
unpredictability, initial latency
Security
XSS, CSRF, Firebug (debugger)
![Page 11: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/11.jpg)
Flash
About 90% of browsers have it
ActionScript is well proven tech
Environment separate from browser
security, cookies, testing
Coding platform separate
![Page 12: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/12.jpg)
Google ExampleMove all apps to the cloud
Build faster browsers, better Javascript
Chrome
V8
Tune performance for mobile platforms
Android, Chrome OS
![Page 13: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/13.jpg)
First Impressions
![Page 14: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/14.jpg)
First ImpressionsPre visit (mouth of the funnel)
site referrals, marketing
Site visit
dreaded “What does this site do?” question
Bounce rate
Transaction/Signup
![Page 15: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/15.jpg)
The Funnel
![Page 16: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/16.jpg)
Perfect Mouse Trap
Simplicity - clear message
Simplicity - memorable difference
Simplicity - explainable value
![Page 17: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/17.jpg)
First Line of Defense
Fundamental security limits on the client side
Set a defensive bar
code compression, obfuscation
security is an ongoing process
Perform client & server side validation
![Page 18: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/18.jpg)
Agile UIRapid end user feedback loop
Site instrumentation
heat map visualization
Google analytics
Roll out learnings, Repeat cycle
Avoid feature bloat
![Page 19: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/19.jpg)
Top Left Quadrant
![Page 20: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/20.jpg)
RESTful Lifecycle
![Page 21: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/21.jpg)
RESTful Lifecycle
Put
![Page 22: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/22.jpg)
RESTful Lifecycle
ObjectPut
![Page 23: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/23.jpg)
RESTful LifecycleGet
ObjectPut
![Page 24: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/24.jpg)
RESTful LifecycleGet
Post
ObjectPut
![Page 25: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/25.jpg)
RESTful Lifecycle
Delete
Get
Post
ObjectPut
![Page 26: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/26.jpg)
RESTful Data PathClient
ServerLogic
Browser
Cache
Web Servers FlowControlPoints
![Page 27: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/27.jpg)
GWT
First complete rich client platform
End to End coding in a single language
Good dev., testing, maintenance cycles
Google Wave implementation proof point
![Page 28: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/28.jpg)
Worth Checking Out
Powerful Javascript
http://www.chromeexperiments.com/
Startup Metrics for Pirates
http://www.slideshare.net/dmc500hats/startup-metrics-for-pirates-sf-jan-2010
![Page 29: Scalable Web Programming · Submitting Code Goal: always work out of the box Problems package external jar files properly deleted files still referenced Java version (5 or 6)](https://reader034.vdocument.in/reader034/viewer/2022050210/5f5c7ed010e0ed444c287f93/html5/thumbnails/29.jpg)
Q & A Topics
Transparency in Browser & Client systems
User driven development cycles
Other development models