Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Progressive enhancement - a barrier to progress?

nelstrom
February 03, 2012

Progressive enhancement - a barrier to progress?

HTML5 makes it possible to build applications in the browser that were previously unimaginable, but to do so we must abandon progressive enhancement. Solving a problem well is better than solving it twice. As the real-time web becomes reality, it's ok to state that JavaScript is a requirement.

nelstrom

February 03, 2012
Tweet

More Decks by nelstrom

Other Decks in Technology

Transcript

  1. Drew Neil @nelstrom 1 February 2012 Refresh Edinburgh PROGRESSIVE ENHANCEMENT

    a BARRIER to PROGRESS? Image credit: http://flic.kr/p/7SpdqN
  2. { "firstName" : "Drew", "lastName" : "Neil", "address" : {

    "street" : "Wollinerstrasse", "city" : "Berlin", "postalCode" : "10435" } } JavaScript on THE WIRE
  3. JavaScript in an ARMS RACE on the SERVER in the

    DATABASE on THE WIRE in EDUCATION
  4. SYSTEM REQUIREMENTS SYSTEM REQUIREMENTS OS Windows XP, Vista, Vista64 CPU

    3.0 GHz P4, Dual Core 2.0 or AMD64X2 (or higher) RAM 1GB for XP / 2GB for Vista DISC DRIVE DVD-ROM Drive HARD DRIVE At least 7.5 GB of free space VIDEO DirectX 9 compatible video card AUDIO DirectX 9.0c compatible sound card
  5. <li> <img src="{avatar_src}"/> <a href="{user_url}">{user_name}</a> <p> {text} </p> <span class="timestamp">{timestamp}</span>

    </li> { avatar_src: "static.twitter.com/12354678/nelstrom.jpg", user_url: "twitter.com/nelstrom", user_name: "nelstrom", text: "Just watched @wilsonminer's highly accl...", timestamp: "11 hours ago" }
  6. following: { count: 535, records: [ { name: 'wilsonminer', avatar_url:

    '.../1234/wm.jpg' }, { name: 'techberlin', avatar_url: '.../2134/tb.jpg' }, ... ] } Data Store
  7. following: { count: 535, records: [ { name: 'wilsonminer', avatar_url:

    '.../1234/wm.jpg' }, { name: 'techberlin', avatar_url: '.../2134/tb.jpg' }, ... ] } <p>Following {following.count}</p> <ul> <tpl for="following.records"> <li><img src="{avatar_url}"/></li> </tpl> </ul> Data Store Template
  8. following: { count: 535, records: [ { name: 'wilsonminer', avatar_url:

    '.../1234/wm.jpg' }, { name: 'techberlin', avatar_url: '.../2134/tb.jpg' }, ... ] } <p>Following {following.count}</p> <ul> <tpl for="following.records"> <li><img src="{avatar_url}"/></li> </tpl> </ul> Data Store Template Rendered HTML
  9. following: { count: 536, records: [ { name: 'OpenSourceScot', avatar_url:

    '.../1234/oss.jpg' }, { name: 'wilsonminer', avatar_url: '.../1234/wm.jpg' }, { name: 'techberlin', avatar_url: '.../2134/tb.jpg' }, ... ] } <p>Following {following.count}</p> <ul> <tpl for="following.records"> <li><img src="{avatar_url}"/></li> </tpl> </ul> Data Store Template Rendered HTML
  10. The business goal for Trello is to get 100 million

    users. Our highest priority is removing anything that people might use as a reason not to use Trello. Joel Spolsky http://www.joelonsoftware.com/items/2012/01/06.html Image credit: http://flic.kr/p/8vYWhW