YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: HTML Hypermedia APIs and Adaptive Web Design

Gustaf Nilsson Kotte

Page 2: HTML Hypermedia APIs and Adaptive Web Design

@gustaf_nk

Page 3: HTML Hypermedia APIs and Adaptive Web Design
Page 4: HTML Hypermedia APIs and Adaptive Web Design

Platform fragmentation

HTML Hypermedia APIs

Capability fragmentation

Adaptive Web Design

The API and the web can be the same thing!

Page 5: HTML Hypermedia APIs and Adaptive Web Design
Page 6: HTML Hypermedia APIs and Adaptive Web Design
Page 7: HTML Hypermedia APIs and Adaptive Web Design
Page 8: HTML Hypermedia APIs and Adaptive Web Design
Page 9: HTML Hypermedia APIs and Adaptive Web Design
Page 10: HTML Hypermedia APIs and Adaptive Web Design

iOS Android WP7 Win8 Web SPAsSmartTVs

API

Store

?

Page 11: HTML Hypermedia APIs and Adaptive Web Design
Page 12: HTML Hypermedia APIs and Adaptive Web Design
Page 13: HTML Hypermedia APIs and Adaptive Web Design
Page 14: HTML Hypermedia APIs and Adaptive Web Design

iOS Android WP7 Win8 Web SPAsSmartTVs

API

Store

?

Page 15: HTML Hypermedia APIs and Adaptive Web Design
Page 16: HTML Hypermedia APIs and Adaptive Web Design

LO: Support for out-bound navigational links (HTTP GET)<a href="http://www.example.org/search" title="view search page">Search</a>

LN: Support for non-idempotent updates (HTTP POST)<form method="post" action="http://www.example.org/my-keywords"/>

<label>Keywords:</label>

<input name="keywords" type="text" value="" />

<input type="submit" />

</form>

Page 17: HTML Hypermedia APIs and Adaptive Web Design
Page 18: HTML Hypermedia APIs and Adaptive Web Design
Page 19: HTML Hypermedia APIs and Adaptive Web Design
Page 20: HTML Hypermedia APIs and Adaptive Web Design

Primaryuse cases

Secondaryuse cases

Secondaryuse cases

API

Render HTML viewsHTML forms

Consume APINative POST

Page 21: HTML Hypermedia APIs and Adaptive Web Design

<div class="message-block"><div id="messages"><ul class="single">

<li><span class="message-text">Message text</span><span class="single">@</span><a rel="message" href="..." title="message"><span class="date-time">2012-01-01</span>

</a><span class="single">by</span><a rel="user" href="..." title="A title"><span class="user-text">User text</span>

</a></li><!-- ... ->

</ul></div>

</div>

<!–- Example, to get all user-texts: $("#messages .user-text") -->

Page 22: HTML Hypermedia APIs and Adaptive Web Design

”Building Hypermedia APIs

with HTML5 and Node”, Mike Amundsen

”Designing Hypermedia APIs”, Steve Klabnik

Page 23: HTML Hypermedia APIs and Adaptive Web Design

Platform fragmentation

HTML Hypermedia APIs

Capability fragmentation

Adaptive Web Design

The API and the web can be the same thing!

Page 24: HTML Hypermedia APIs and Adaptive Web Design
Page 25: HTML Hypermedia APIs and Adaptive Web Design
Page 26: HTML Hypermedia APIs and Adaptive Web Design
Page 27: HTML Hypermedia APIs and Adaptive Web Design

3 iOS devices – 40%

3112 other devices– 60%

Page 28: HTML Hypermedia APIs and Adaptive Web Design
Page 29: HTML Hypermedia APIs and Adaptive Web Design
Page 30: HTML Hypermedia APIs and Adaptive Web Design
Page 31: HTML Hypermedia APIs and Adaptive Web Design
Page 32: HTML Hypermedia APIs and Adaptive Web Design
Page 33: HTML Hypermedia APIs and Adaptive Web Design
Page 34: HTML Hypermedia APIs and Adaptive Web Design
Page 35: HTML Hypermedia APIs and Adaptive Web Design
Page 36: HTML Hypermedia APIs and Adaptive Web Design
Page 37: HTML Hypermedia APIs and Adaptive Web Design
Page 38: HTML Hypermedia APIs and Adaptive Web Design
Page 39: HTML Hypermedia APIs and Adaptive Web Design
Page 40: HTML Hypermedia APIs and Adaptive Web Design

”Adaptive Web Design”, Aaron Gustafson

“Progressive Enhancement 2.0”, Nicolas Zakas

“Resource-Oriented Client Architecture”, http://roca-style.org

Page 41: HTML Hypermedia APIs and Adaptive Web Design

Platform fragmentation

HTML Hypermedia APIs

Capability fragmentation

Adaptive Web Design

The API and the web can be the same thing!

Page 42: HTML Hypermedia APIs and Adaptive Web Design
Page 43: HTML Hypermedia APIs and Adaptive Web Design

<div class="message-block"><div id="messages"><ul class="single">

<li><span class="message-text">Message text</span><span class="single">@</span><a rel="message" href="..." title="message"><span class="date-time">2012-01-01</span>

</a><span class="single">by</span><a rel="user" href="..." title="A title"><span class="user-text">User text</span>

</a></li><!-- ... ->

</ul></div>

</div>

Page 44: HTML Hypermedia APIs and Adaptive Web Design

<div class="message-block"><div id="messages"><ul class="single">

<li><span class="message-text">Message text</span><span class="single">@</span><a rel="message" href="..." title="message"><span class="date-time">2012-01-01</span>

</a><span class="single">by</span><a rel="user" href="..." title="A title"><span class="user-text">User text</span>

</a></li><!-- ... ->

</ul></div>

</div>

Page 45: HTML Hypermedia APIs and Adaptive Web Design
Page 46: HTML Hypermedia APIs and Adaptive Web Design
Page 47: HTML Hypermedia APIs and Adaptive Web Design

ProgressiveEnhancement

GracefulDegradation

Page 48: HTML Hypermedia APIs and Adaptive Web Design

ProgressiveEnhancement

SPA

Page 49: HTML Hypermedia APIs and Adaptive Web Design

Primaryuse cases

Secondaryuse cases

Secondaryuse cases

API

Render HTML viewsHTML forms

Consume APINative POST

Page 50: HTML Hypermedia APIs and Adaptive Web Design

HTML Hypermedia

API

Store

Page 51: HTML Hypermedia APIs and Adaptive Web Design
Page 52: HTML Hypermedia APIs and Adaptive Web Design

Platform fragmentation

HTML Hypermedia APIs

Capability fragmentation

Adaptive Web Design

The API and the web can be the same thing!

Page 53: HTML Hypermedia APIs and Adaptive Web Design
Page 54: HTML Hypermedia APIs and Adaptive Web Design

(@gustaf_nk)

Page 55: HTML Hypermedia APIs and Adaptive Web Design

“This is not the web” images by Brad Frost

http://bradfrostweb.com/

Trash can

http://www.clker.com/clipart-15146.html

Money bags

https://doodleaday.files.wordpress.com/2012/03/doodle-1016-money-bags.jpg

Exit sign

http://www.ski.org/Rehab/WCrandall/EgressIIIWeb/images/egressfig7.gif

Scale

http://wishfit.files.wordpress.com/2012/02/scale.gif

Escalator

http://www.orientlighting.com/Upload/Editor/201121822854289.jpg

Elevator

http://aes-shreveport.com/http://aes-shreveport.com/wp-content/uploads/2010/03/elevator1.jpg

MacBook Pro

http://store.storeimages.cdn-apple.com/2911/as-images.apple.com/is/image/AppleInc/mbp2012-step0-macbookpro-lh?wid=341&hei=218&fmt=png-alpha&qlt=95

Ferrari NetBook

http://www.conceivablytech.com/wp-content/uploads/2010/04/ferrari12.jpg

Hypermedia avatar

https://si0.twimg.com/profile_images/1480823070/twitter.jpg

Storytelling

http://yarnstorytellers.files.wordpress.com/2012/05/kidsstorytelling.jpg

Back to the Future

http://www.thenoobnews.com/uploads/2012/01/Marty-doc-remote.jpg

Ouya

http://cf.shacknews.com/images/20120727/ouya_22884.nphd.jpg

Samsung SmartTV

http://4.bp.blogspot.com/-DJYVeNjOxVA/T14mh5NVA5I/AAAAAAAAABU/Re1oXspmx1o/s1600/Samsung.jpg

Mike Amundsen

http://b.vimeocdn.com/ts/185/530/185530962_640.jpg

Hipster Pabst Blue Ribbon

http://www.nbclosangeles.com/blogs/press-here/Start-Up-Recruits-with-10000-and-Lifetime-Pabst-Blue-Ribbon-123126508.html

Juggling monkey

http://media.smashingmagazine.com/wp-content/uploads/2012/07/juggling-monkey.jpg

Unity

http://www.unitylakeorion.org/wp-content/uploads/unity.jpg

Kindle

http://www.blogcdn.com/www.engadget.com/media/2011/09/amazon-official-kindle-touch.jpg

iPad in sofa

http://www.itouch-magazine.eu/wp-content/uploads/2010/05/iPad-Lapdesk-Render-3-1024x797.jpg

laptop on train

http://medmondtech.files.wordpress.com/2011/06/080910090104-laptop-train-travel-man.jpg

Razor

http://4.bp.blogspot.com/-UJsfWWvWgbk/Tb2RS3iFDoI/AAAAAAAAD0k/4XCA3sgsP3A/s1600/Occams-Razor_1896-l.jpg


Related Documents