950 likes | 1.18k Views
Y! v. Y! v. Y! Three Yahoo! Case Studies Across the Page—Application Spectrum, One Size Does Not Fit All. Nate Koechley – nate@koechley.com | http://nate.koechley.com/blog AJAXWorld Conference & Expo, October 2 nd – 4 th , 2006. Nate Koechley. It’s Pronounced “Kek’lee”. Hello, World.
E N D
Y! v. Y! v. Y!Three Yahoo! Case StudiesAcross the Page—Application Spectrum, One Size Does Not Fit All Nate Koechley – nate@koechley.com | http://nate.koechley.com/blogAJAXWorld Conference & Expo, October 2nd – 4th, 2006
Hello, World • Nate Koechley • At Yahoo! since 2001 • Charter member of Web Development team • On Yahoo! User Interface Library (YUI) team • Three roles: • Senior Frontend Engineer • Technical Evangelist • Design Liaison
The DHTML Universeby Dojo’s Alex Russell (work in progress) http://alex.dojotoolkit.org/DHTML_universe.pdf
A bit of evolution over the years… 1994 1995
A bit of evolution over the years… 1994 1995 1997
A bit of evolution over the years… 1994 1995 1997 2000
A bit of evolution over the years… 1994 1995 1997 2000 2002
A bit of evolution over the years… 1994 1995 1997 2000 2002 2004
A bit of evolution over the years… 1994 1995 1997 2000 2002 2004 …into the page that today welcomes 188m users every month, 5.2 billion times Source: Comscore, Feb. 2006
The New Yahoo! Home Page Video: http://nate.koechley.com/talks/20061003_ajaxworld/fp_2.avi
It is immensely telling that the new Yahoo! homepage is a DHTML homepage.
Case Study 1: • History • From scratch • Freshest development effort to be released • Massive Scale • 5.2 billion views per month • 188 million unique users • Major DHMTL and Ajax Implementation
Case Study 1:Yahoo! Home Page Preview Video: http://nate.koechley.com/talks/20061003_ajaxworld/fp_2.avi
Case Study 2: • History • From scratch • Long development timeline • Massive Scale • 30 million unique users • 2 billion photos • Major DHTML and Ajax Implementation
Case Study 2:Yahoo! Photos Beta Video: http://nate.koechley.com/talks/20061003_ajaxworld/photos3_2.avi
Case Study 3: • History • Beta release about 1.25 years ago • Legacy-ish, was Oddpost.com • Oddpost development began in 1999 • Massive Scale • World’s largest email provider • Available in 21 languages • Preeminent DHTML and Ajax Application
Case Study 3:Yahoo! Mail Beta Video: http://nate.koechley.com/talks/20061003_ajaxworld/mail_1.avi
Common Goals:1) Performance 2) Interactivity3) Stay true to our beliefs
The Basics Doctype HTML4.01Strict XHTML 1.0 Strict None Render Mode Strict Strict Quirks CSS Sprites Yes Yes Yes Font-size Responsive Yes Yes No Keyboard Yes Yes Yes Absolute Pos No No No Minimization Yes Yes Yes Obfuscation No No Yes Compression Yes Yes Yes
Historically Web Shallow Interaction Simple Idioms For Consumption Markup + Skin Sequential Nav Passive Historically Desktop Deep Interaction Powerful Idioms For Productivity JS, DHTML, Ajax, DOM Self Contained Active Page Application Page—Application Spectrum
Page Application Page—Application Spectrum
Looking Across the Spectrum • Tracking Events • Memory Management • Delivering JS and CSS • Data Format • Pagination • Browser Support
Looking Across the Spectrum:Tracking Events • Tracking Events • Memory Management • Delivering JS and CSS • Data Format • Pagination • BrowserSupport
Tracking Events:Event Utilities • Don’t piss off the DOM Scripting Task Force • No JS in attribute space / markup! • Watch out for memory leaks!!! (yes, three !’s) • Many great utilities • YUI Event Utility • Dojo • Scott Andrew • many more…
Tracking Events:Event Attachment Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts Obj +evnts