Top Banner
the design of HTML5
53

the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Mar 13, 2018

Download

Documents

dinhtu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

the designof HTML5

Page 2: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

the designof HTML5

Page 3: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

the designof HTML5

Page 4: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

designprinciples

Page 5: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

We hold these Truths to be self-evident,that all Men are created equal,that they are endowed by their Creator withcertain unalienable Rights,that among these areLife, Liberty and the pursuit of Happiness.

—e Declaration Of Independence, 1776-07-04

Page 6: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

From each according to his ability,to each according to his need.

—Karl Marx, 1875

Page 7: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Do unto others as you would have them do unto you.

—Jesus of Nazareth, ~30AD

Page 8: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Four legs good, two legs bad.

—George Orwell, Animal Farm

Page 9: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

A robot may not injure a human being or, through inaction, allow a human being to come to harm.

A robot must obey any orders given to it by human beings, except where such orders would conflict with the First Law.

A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.

—Isaac Asimov, I, Robot

Page 10: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Principles such as simplicity and modularityare the stuff of soware engineering; decentralisation and toleranceare the life and breath of Internet.

—Tim Berners-Lee, Principles of Design

Page 11: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

HTML 2.0HTML 3.2HTML 4.0HTML 4.01

1995199719971999

Page 12: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

XHTML 1.0XHTML 1.1XHTML 2

20002001

Page 13: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Be conservative in what you send;be liberal in what you accept.

—Jon Postel, e Robustness Principle

Page 14: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

WHATWGW3C

HTML5

20042007

Page 15: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

the designof HTML5

Page 16: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

is document describes the set of guiding principles used by the HTML Working Group for the development of HTML5. e principles offer guidance for the design of HTML in the areas of compatibility, utility and interoperability.

—HTML Design Principles w3.org/TR/html-design-principles

Page 17: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

avoid needlesscomplexitySimple solutions are preferred to complex ones, when possible.

Page 18: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01

XHTML 1.0<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

HTML5 <!DOCTYPE html>

Page 19: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<meta http-equiv="Content-Type"content="text/html; charset=utf-8">

HTML 4.01

XHTML 1.0<?xml version="1.0" encoding="UTF-8"?><meta http-equiv="Content-Type"content="text/html; charset=utf-8" />

HTML5 <meta charset="utf-8">

Page 20: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

HTML5

<link rel="stylesheet" type="text/css" href="file.css">

<script type="text/javascript"></script>

Page 21: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

support existingcontentExisting content oen relies upon expected user agent processing and behaviour to function as intended.

Page 22: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<img src="foo" alt="bar" /> <p class="foo">Hello world</p>

<img src="foo" alt="bar"><p class="foo">Hello world

<IMG SRC="foo" ALT="bar"><P CLASS="foo">Hello world</P>

<img src=foo alt=bar><p class=foo>Hello world</p>

Page 23: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Be conservative in what you send;be liberal in what you accept.

—Jon Postel, e Robustness Principle

Page 24: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

solve real problemsAbstract architectures that don’t address an existing need are less favoured than pragmatic solutions to problems that web content faces today.

Page 25: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<h2><a href="/path/to/resource">Headline text</a></h2><p><a href="/path/to/resource">Paragraph text.</a></p>

(X)HTML

HTML5<a href="/path/to/resource"><h2>Headline text</h2><p>Paragraph text.</p></a>

Page 26: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

pave the cowpaths

Page 27: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

sectionarticleasidenav

headerfooterdetailsfigure

Page 28: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<body><div id="header">...</div><div id="navigation">...</div><div id="main">...</div><div id="sidebar">...</div><div id="footer">...</div></body>

Page 29: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<body><header>...</header><nav>...</nav><div id="main">...</div><aside>...</aside><footer>...</footer></body>

Page 30: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

sectionarticleasidenav

headerfooterdetailsfigure

Page 31: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<div class="item"><h2>...</h2><div class="meta">...</div><div class="content">...</div><div class="links">...</div></div>

Page 32: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<section class="item"><header><h1>...</h1></header><footer class="meta">...</footer><div class="content">...</div><nav class="links">...</nav></section>

Page 33: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<section class="item"><header><h1>...</h1></header><footer class="meta">...</footer><div class="content">...</div><nav class="links">...</nav></section>

Page 34: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

I would in fact prefer, instead of <H1>, <H2> etc for headings to have a nestable <SECTION>..</SECTION> element, and a generic <H>..</H> which at any level within the sections would produce the required level of heading.

—Tim Berners-Lee, 1991

Page 35: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

degrade gracefullyHTML 5 document conformance requirements should be designed so that Web content can degrade gracefully in older or less capable user agents, even when making use of new elements, attributes, APIs and content models.

Page 36: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

input type="number"input type="search"input type="range"input type="email"input type="date"input type="url"

Page 37: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

input type="number"

Page 38: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

input type="search"

Page 39: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

input type="search"placeholder="e.g. salad or fish"

Page 40: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

FlashHTML5objectvideo

Page 41: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<video src="movie.mp4">

</video>

<!-- fallback content -->

Page 42: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<video src="movie.mp4">

</video>

<object data="movie.swf"><!-- fallback content --></object>

Page 43: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<video src="movie.mp4">

</video>

<object data="movie.swf"><a href="movie.mp4">download</a></object>

Page 44: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<video><source src="movie.mp4"><source src="movie.ogv">

</video>

<object data="movie.swf"><a href="movie.mp4">download</a></object>

Page 45: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

<video><source src="movie.mp4"><source src="movie.ogv">

</video>

<object data="movie.swf"><a href="movie.mp4">download</a></object>

1234

Page 46: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

e value of a network is proportional to the square of the number of connected users of the system (n2).

—Robert Metcalfe

Page 47: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

priority of constituenciesIn case of conflict, consider users over authors over implementors over specifiers over theoretical purity.

Page 48: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Soware, like all technologies, is inherently political.Code inevitably reflects the choices, biases and desires of its creators.

—Jamais Cascio

Page 49: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

1. Make the most equent tasks easy and less equent tasks achievable.

2. Design for the 80%.

3. Privilege the Content Creator.

4. Make the default settings smart.—Mark Boulton, Leisa Reichelt,

d7ux.org

Page 50: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Design for humans first, machines second.

—Microformats.org,e microformats principles

Page 51: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

e effectiveness of the Internet as a public resource depends upon interoperability (protocols, data formats, content), innoation and decentralised participation worldwide.

Transparent community-based processes promote participation, accountability, and trust.

—e Mozilla Foundation,e Mozilla Manifesto

Page 52: the design of HTML5 - Adactioadactio.com/extras/slides/designofhtml5.pdf · the design of HTML5. design principles. ... Animal Farm. A robot may not injure a human being or, through

Rough consensus and running code.

—e Tao of IETF