SlideShare a Scribd company logo
brucel@opera.com, http://dev.opera.com

www.brucelawson.co.uk twitter.com/brucel
●
Evolution of HTML: monkey on
left becomes human in 4 stages
th
Evolution of HTML: 5 monkey
(HTML5) is human but dressed
       in pimp clothing
HTML5
“... extending the language to better support Web
  applications, since that is one of the directions the Web
  is going in and is one of the areas least well served by
  HTML so far.

This puts HTML in direct competition with other
  technologies intended for applications deployed over the
  Web, in particular Flash and Silverlight” - Ian Hickson
        http://lists.w3.org/Archives/Public/public-html/2009Jan/0215.html
More semantics for structure
Styling HTML 5
Good browsers just work, with a
hint or two:
header
{display:block;}
Naughty browsers
IE – needs JavaScript
 document.createElement('header')



http://html5doctor.com/how-to-get-html5-working-in-ie-and-
 firefox-2/
<section>
<h1>I'm a heading</h1>

<section>
<h1>And I'm a heading</h1>
   <section>
     <h1>I'm a heading too</h1>
       <article>
        <h1>And me! And me!</h1>
       </article>
   </section>
</section>
<figure>
●   “ to annotate illustrations, diagrams, photos, code listings, etc, that
    are referred to from the main content of the document”

      <figure>
       <img src=bruce.png alt=””>
       <figcaption>
        Bruce Lawson in summer dress
        <small>Photo copyright Bruce's mum</small>
       </figcaption>
      </figure>
Example of <figure>




     Bruce Lawson in summer dress
             Photo copyright Bruce's mum

•
HTML5 forms (“Webforms 2”)

Do what people want to do without scripting, so

●   Easier to write
●   Controls look the same across sites, so better UX
●   Built-in validation
●   Less to download
                        Demonstration
Canvas

Immediate graphics mode without plugins

Retro-specced, hence accessibility concerns

Native support in Opera, Safari, Firefox and Chrome

                          Demonstration
What does this code do?
<object width="425" height="344">
<param name="movie"
  value="http://www.example.com/v/LtfQg4KkR88&hl=en
  &fs=1"></param>
<param name="allowFullScreen" value="true"></param>
<embed
  src="http://www.example.com/v/LtfQg4KkR88&hl=en&f
  s=1" type="application/x-shockwave-flash"
allowfullscreen="true" width="425"
  height="344"></embed>
</object>
Video (future)

<video src=video.ogv>
    <p>You've got a legacy browser, so
      <a href="video.ogv">Download movie</a>
    </p>
</video>

•
Advantages of native <video>
●   Keyboard accessible out of the box (potentially)
●   Is part of the page – can be styled by CSS
●   Can script own controls (show code!)
●   Can draw on the video
●   Can manipulate video data (SVG/ copy to canvas)
Video (accessibility)
●   Captions/ subtitles – no standardised way (yet).
●   Bruce hack:
    <video></video>
    <div class=transcript>
     <p>Hello, Good Evening and Welcome</p>
     <p>Tonight on the Jeremy Kyle show ...</p>
       ....
    </div>
Video (accessibility)
<div class=”transcript”>
  <p><span>Hello, Good Evening</span>
   <span> and Welcome.</span></p>
  <p><span>Tonight on the Jeremy Kyle show …
 </span>
  </p>
     ....
 </div>
Video (accessibility)
<p>
  <span data-begin=1 data-end=2.4>Hello, Good
  Evening</span>
 <span data-begin=3 data-end=3.6> and Welcome.</span>
</p>
Video (accessibility)

function timeupdate() {
 var v = document.querySelector('video');
 var now = v.currentTime; …}

<video width=600 src=synergy.ogv
  ontimeupdate=timeupdate()>
                 Demonstrate captions
          Demonstrate simultaneous translation
Disadvantage with video: codecs

<video width=320 height=240 controls>
  <source src="../videos/turkish.ogv" type="video/ogg">
  <source src="../videos/turkish.mp4" type="video/mp4">
  <p> Download the <a href=turkish.ogv>Turkish dancing
  masterclass video</a></p>
</video>
Nastiest slide in the world
1 <video width="640" height="360" poster="__POSTER__.jpg" controls="controls">
2 <source src="__VIDEO__.ogv" type="video/ogg" />
3 <source src="__VIDEO__.mp4" type="video/mp4" /><!--[if gt IE 6]>
4 <object width="640" height="375" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"><!
5 [endif]--><!--[if !IE]><!-->
6 <object width="640" height="375" type="video/quicktime" data="__VIDEO__.mp4"><!--<![endif]-->
7 <param name="src" value="__VIDEO__.mp4" />
8 <param name="autoplay" value="false" />
9 <param name="showlogo" value="false" />
10 <object width="640" height="380" type="application/x-shockwave-flash"
11       data="__FLASH__.swf?image=__POSTER__.jpg&amp;file=__VIDEO__.mp4">
12       <param name="movie" value="__FLASH__.swf?image=__POSTER__.jpg&amp;file=__VIDEO__.mp4" />
13       <img src="__POSTER__.jpg" width="640" height="360" />
14       <p>
15              <strong>No video playback capabilities detected.</strong>
16              Why not try to download the file instead?<br />
17              <a href="__VIDEO__.mp4">MPEG4 / H.264 “.mp4” (Windows / Mac)</a> |
18              <a href="__VIDEO__.ogv">Ogg Theora &amp; Vorbis “.ogv” (Linux)</a>
19       </p>
20 </object><!--[if gt IE 6]><!-->
21 </object><!--<![endif]-->
22 </video>
HTML5 goodies
●   Drag and drop
●   Cross-window, Cross-domain messaging
●   Web workers
●   Adding toolbars <menu>, <command>
●   WebStorage
●   Register protocol handler, content type handlers
●   Server-sent events <eventsource>
●   (Geolocation)
Mwah! mwah!
  brucel@opera.com, http://dev.opera.com

 www.brucelawson.co.uk, twitter.com/brucel

www.html5doctor.com, www.html5demos.com

More Related Content

What's hot

How to Issue and Activate Free SSL using Let's Encrypt
How to Issue and Activate Free SSL using Let's EncryptHow to Issue and Activate Free SSL using Let's Encrypt
How to Issue and Activate Free SSL using Let's Encrypt
Mayeenul Islam
 
Fronteers 2012 - Lessons learned from building a SAAS app
Fronteers 2012 - Lessons learned from building a SAAS appFronteers 2012 - Lessons learned from building a SAAS app
Fronteers 2012 - Lessons learned from building a SAAS app
Goodbytes
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSS
Todd Anglin
 
Squeeze Maximum Performance From Your Joomla Website
Squeeze Maximum Performance From Your Joomla WebsiteSqueeze Maximum Performance From Your Joomla Website
Squeeze Maximum Performance From Your Joomla Website
SiteGround.com
 
Bruce Lawson: Progressive Web Apps: the future of Apps
Bruce Lawson: Progressive Web Apps: the future of AppsBruce Lawson: Progressive Web Apps: the future of Apps
Bruce Lawson: Progressive Web Apps: the future of Apps
brucelawson
 
20 Tips to Improving WordPress Website - for Beginners-Aus-2017
20 Tips to Improving WordPress Website - for Beginners-Aus-201720 Tips to Improving WordPress Website - for Beginners-Aus-2017
20 Tips to Improving WordPress Website - for Beginners-Aus-2017
TRB Design, Inc.
 
AEM responsive
AEM responsiveAEM responsive
AEM responsive
Damien Antipa
 
Plone for python programmers
Plone for python programmersPlone for python programmers
Plone for python programmers
Dylan Jay
 
Don't Over-React - just use Vue!
Don't Over-React - just use Vue!Don't Over-React - just use Vue!
Don't Over-React - just use Vue!
Raymond Camden
 
Speed up Your Joomla Site for Ultimate Performance
Speed up Your Joomla Site for Ultimate PerformanceSpeed up Your Joomla Site for Ultimate Performance
Speed up Your Joomla Site for Ultimate Performance
JoomlaDay Australia
 
Polymer
PolymerPolymer
Polymer
qureshiomar
 
Movie trailer 1
Movie trailer 1Movie trailer 1
Movie trailer 1salderton
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?
Andy Melichar
 
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
beyond tellerrand
 
Testable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascriptTestable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascript
Timothy Oxley
 
Investigacion exposicion
Investigacion exposicionInvestigacion exposicion
Investigacion exposicionMadapa123
 
HTML5: Markup Evolved
HTML5: Markup EvolvedHTML5: Markup Evolved
HTML5: Markup Evolved
Billy Hylton
 
BOOM Performance
BOOM PerformanceBOOM Performance
BOOM Performance
dapulse
 
Wordpress To Go Democamp Mtl2009
Wordpress To Go Democamp Mtl2009Wordpress To Go Democamp Mtl2009
Wordpress To Go Democamp Mtl2009
Brendan Sera-Shriar
 

What's hot (19)

How to Issue and Activate Free SSL using Let's Encrypt
How to Issue and Activate Free SSL using Let's EncryptHow to Issue and Activate Free SSL using Let's Encrypt
How to Issue and Activate Free SSL using Let's Encrypt
 
Fronteers 2012 - Lessons learned from building a SAAS app
Fronteers 2012 - Lessons learned from building a SAAS appFronteers 2012 - Lessons learned from building a SAAS app
Fronteers 2012 - Lessons learned from building a SAAS app
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSS
 
Squeeze Maximum Performance From Your Joomla Website
Squeeze Maximum Performance From Your Joomla WebsiteSqueeze Maximum Performance From Your Joomla Website
Squeeze Maximum Performance From Your Joomla Website
 
Bruce Lawson: Progressive Web Apps: the future of Apps
Bruce Lawson: Progressive Web Apps: the future of AppsBruce Lawson: Progressive Web Apps: the future of Apps
Bruce Lawson: Progressive Web Apps: the future of Apps
 
20 Tips to Improving WordPress Website - for Beginners-Aus-2017
20 Tips to Improving WordPress Website - for Beginners-Aus-201720 Tips to Improving WordPress Website - for Beginners-Aus-2017
20 Tips to Improving WordPress Website - for Beginners-Aus-2017
 
AEM responsive
AEM responsiveAEM responsive
AEM responsive
 
Plone for python programmers
Plone for python programmersPlone for python programmers
Plone for python programmers
 
Don't Over-React - just use Vue!
Don't Over-React - just use Vue!Don't Over-React - just use Vue!
Don't Over-React - just use Vue!
 
Speed up Your Joomla Site for Ultimate Performance
Speed up Your Joomla Site for Ultimate PerformanceSpeed up Your Joomla Site for Ultimate Performance
Speed up Your Joomla Site for Ultimate Performance
 
Polymer
PolymerPolymer
Polymer
 
Movie trailer 1
Movie trailer 1Movie trailer 1
Movie trailer 1
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?
 
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
Scott Jehl - Delivering Responsibly - beyond tellerrand Düsseldorf 2015
 
Testable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascriptTestable client side_mvc_apps_in_javascript
Testable client side_mvc_apps_in_javascript
 
Investigacion exposicion
Investigacion exposicionInvestigacion exposicion
Investigacion exposicion
 
HTML5: Markup Evolved
HTML5: Markup EvolvedHTML5: Markup Evolved
HTML5: Markup Evolved
 
BOOM Performance
BOOM PerformanceBOOM Performance
BOOM Performance
 
Wordpress To Go Democamp Mtl2009
Wordpress To Go Democamp Mtl2009Wordpress To Go Democamp Mtl2009
Wordpress To Go Democamp Mtl2009
 

Viewers also liked

Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx
Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx
Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx yeshiye
 
Applications of click chemistry in drug discovery
Applications of click chemistry in drug discoveryApplications of click chemistry in drug discovery
Applications of click chemistry in drug discovery
rita martin
 
Anthony crasto presentation of biginelli reaction
Anthony crasto presentation of biginelli reactionAnthony crasto presentation of biginelli reaction
Anthony crasto presentation of biginelli reaction
Anthony Melvin Crasto Ph.D
 
Click chemistry appliations in polymer science
Click chemistry appliations in polymer scienceClick chemistry appliations in polymer science
Click chemistry appliations in polymer science
Sasidhar Kantheti
 
Click Chemistry Presentation - for Department of Chemistry, University of Mi...
Click Chemistry Presentation - for  Department of Chemistry, University of Mi...Click Chemistry Presentation - for  Department of Chemistry, University of Mi...
Click Chemistry Presentation - for Department of Chemistry, University of Mi...
Aswin Garimalla
 
Drug discovery and development
Drug discovery and developmentDrug discovery and development
Drug discovery and development
rahul_pharma
 

Viewers also liked (6)

Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx
Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx
Click Chemistry Biomolecular Engineering - Presentation - Yeshitila.pptx
 
Applications of click chemistry in drug discovery
Applications of click chemistry in drug discoveryApplications of click chemistry in drug discovery
Applications of click chemistry in drug discovery
 
Anthony crasto presentation of biginelli reaction
Anthony crasto presentation of biginelli reactionAnthony crasto presentation of biginelli reaction
Anthony crasto presentation of biginelli reaction
 
Click chemistry appliations in polymer science
Click chemistry appliations in polymer scienceClick chemistry appliations in polymer science
Click chemistry appliations in polymer science
 
Click Chemistry Presentation - for Department of Chemistry, University of Mi...
Click Chemistry Presentation - for  Department of Chemistry, University of Mi...Click Chemistry Presentation - for  Department of Chemistry, University of Mi...
Click Chemistry Presentation - for Department of Chemistry, University of Mi...
 
Drug discovery and development
Drug discovery and developmentDrug discovery and development
Drug discovery and development
 

Similar to Speak The Web: The HTML5 Experiments

HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...
HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...
HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...Patrick Lauke
 
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
Patrick Lauke
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Web Apps
Web AppsWeb Apps
Web Apps
Tim Wray
 
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010Patrick Lauke
 
Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?
brucelawson
 
HTML5 and friends - standards>next Manchester 24.11.2010
HTML5 and friends - standards>next Manchester 24.11.2010HTML5 and friends - standards>next Manchester 24.11.2010
HTML5 and friends - standards>next Manchester 24.11.2010Patrick Lauke
 
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010Patrick Lauke
 
Web Directions @media 2010
Web Directions @media 2010Web Directions @media 2010
Web Directions @media 2010Patrick Lauke
 
Leave No One Behind with HTML5 - FFWD.PRO, Croatia
Leave No One Behind with HTML5 - FFWD.PRO, CroatiaLeave No One Behind with HTML5 - FFWD.PRO, Croatia
Leave No One Behind with HTML5 - FFWD.PRO, CroatiaRobert Nyman
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5
Todd Anglin
 
[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
What you need to know bout html5
What you need to know bout html5What you need to know bout html5
What you need to know bout html5
Kevin DeRudder
 
HTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranHTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranRobert Nyman
 
Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~
Sho Ito
 
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...Patrick Lauke
 
[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWDChristopher Schmitt
 

Similar to Speak The Web: The HTML5 Experiments (20)

HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...
HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...
HTML5 APIs - native multimedia support and beyond - University of Leeds 05.05...
 
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
audio, video and canvas in HTML5 - standards>next Manchester 29.09.2010
 
HTML5
HTML5HTML5
HTML5
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
Web Apps
Web AppsWeb Apps
Web Apps
 
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010
HTML5 and friends - JISC CETIS Conference 2010 Nottingham 15.11.2010
 
Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?Standards.next: HTML - Are you mything the point?
Standards.next: HTML - Are you mything the point?
 
HTML5 and friends - standards>next Manchester 24.11.2010
HTML5 and friends - standards>next Manchester 24.11.2010HTML5 and friends - standards>next Manchester 24.11.2010
HTML5 and friends - standards>next Manchester 24.11.2010
 
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010
Brave new world of HTML5 - WebTech 2010 Milano 09.11.2010
 
Web Directions @media 2010
Web Directions @media 2010Web Directions @media 2010
Web Directions @media 2010
 
Leave No One Behind with HTML5 - FFWD.PRO, Croatia
Leave No One Behind with HTML5 - FFWD.PRO, CroatiaLeave No One Behind with HTML5 - FFWD.PRO, Croatia
Leave No One Behind with HTML5 - FFWD.PRO, Croatia
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5
 
[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design
 
What you need to know bout html5
What you need to know bout html5What you need to know bout html5
What you need to know bout html5
 
HTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - AltranHTML5, The Open Web, and what it means for you - Altran
HTML5, The Open Web, and what it means for you - Altran
 
Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~Attractive HTML5~開発者の視点から~
Attractive HTML5~開発者の視点から~
 
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...
HTML5 multimedia - browser-native video and audio - DevUp HTML5 / Barcelona /...
 
HTML5 Design
HTML5 DesignHTML5 Design
HTML5 Design
 
[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD
 

Recently uploaded

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 

Recently uploaded (20)

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 

Speak The Web: The HTML5 Experiments

  • 2.
  • 3. Evolution of HTML: monkey on left becomes human in 4 stages
  • 4. th Evolution of HTML: 5 monkey (HTML5) is human but dressed in pimp clothing
  • 5. HTML5 “... extending the language to better support Web applications, since that is one of the directions the Web is going in and is one of the areas least well served by HTML so far. This puts HTML in direct competition with other technologies intended for applications deployed over the Web, in particular Flash and Silverlight” - Ian Hickson http://lists.w3.org/Archives/Public/public-html/2009Jan/0215.html
  • 6. More semantics for structure
  • 7. Styling HTML 5 Good browsers just work, with a hint or two: header {display:block;}
  • 8.
  • 9. Naughty browsers IE – needs JavaScript document.createElement('header') http://html5doctor.com/how-to-get-html5-working-in-ie-and- firefox-2/
  • 10.
  • 11. <section> <h1>I'm a heading</h1> <section> <h1>And I'm a heading</h1> <section> <h1>I'm a heading too</h1> <article> <h1>And me! And me!</h1> </article> </section> </section>
  • 12. <figure> ● “ to annotate illustrations, diagrams, photos, code listings, etc, that are referred to from the main content of the document” <figure> <img src=bruce.png alt=””> <figcaption> Bruce Lawson in summer dress <small>Photo copyright Bruce's mum</small> </figcaption> </figure>
  • 13. Example of <figure> Bruce Lawson in summer dress Photo copyright Bruce's mum •
  • 14. HTML5 forms (“Webforms 2”) Do what people want to do without scripting, so ● Easier to write ● Controls look the same across sites, so better UX ● Built-in validation ● Less to download Demonstration
  • 15. Canvas Immediate graphics mode without plugins Retro-specced, hence accessibility concerns Native support in Opera, Safari, Firefox and Chrome Demonstration
  • 16. What does this code do? <object width="425" height="344"> <param name="movie" value="http://www.example.com/v/LtfQg4KkR88&hl=en &fs=1"></param> <param name="allowFullScreen" value="true"></param> <embed src="http://www.example.com/v/LtfQg4KkR88&hl=en&f s=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed> </object>
  • 17. Video (future) <video src=video.ogv> <p>You've got a legacy browser, so <a href="video.ogv">Download movie</a> </p> </video> •
  • 18. Advantages of native <video> ● Keyboard accessible out of the box (potentially) ● Is part of the page – can be styled by CSS ● Can script own controls (show code!) ● Can draw on the video ● Can manipulate video data (SVG/ copy to canvas)
  • 19. Video (accessibility) ● Captions/ subtitles – no standardised way (yet). ● Bruce hack: <video></video> <div class=transcript> <p>Hello, Good Evening and Welcome</p> <p>Tonight on the Jeremy Kyle show ...</p> .... </div>
  • 20. Video (accessibility) <div class=”transcript”> <p><span>Hello, Good Evening</span> <span> and Welcome.</span></p> <p><span>Tonight on the Jeremy Kyle show … </span> </p> .... </div>
  • 21. Video (accessibility) <p> <span data-begin=1 data-end=2.4>Hello, Good Evening</span> <span data-begin=3 data-end=3.6> and Welcome.</span> </p>
  • 22. Video (accessibility) function timeupdate() { var v = document.querySelector('video'); var now = v.currentTime; …} <video width=600 src=synergy.ogv ontimeupdate=timeupdate()> Demonstrate captions Demonstrate simultaneous translation
  • 23. Disadvantage with video: codecs <video width=320 height=240 controls> <source src="../videos/turkish.ogv" type="video/ogg"> <source src="../videos/turkish.mp4" type="video/mp4"> <p> Download the <a href=turkish.ogv>Turkish dancing masterclass video</a></p> </video>
  • 24. Nastiest slide in the world 1 <video width="640" height="360" poster="__POSTER__.jpg" controls="controls"> 2 <source src="__VIDEO__.ogv" type="video/ogg" /> 3 <source src="__VIDEO__.mp4" type="video/mp4" /><!--[if gt IE 6]> 4 <object width="640" height="375" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"><! 5 [endif]--><!--[if !IE]><!--> 6 <object width="640" height="375" type="video/quicktime" data="__VIDEO__.mp4"><!--<![endif]--> 7 <param name="src" value="__VIDEO__.mp4" /> 8 <param name="autoplay" value="false" /> 9 <param name="showlogo" value="false" /> 10 <object width="640" height="380" type="application/x-shockwave-flash" 11 data="__FLASH__.swf?image=__POSTER__.jpg&amp;file=__VIDEO__.mp4"> 12 <param name="movie" value="__FLASH__.swf?image=__POSTER__.jpg&amp;file=__VIDEO__.mp4" /> 13 <img src="__POSTER__.jpg" width="640" height="360" /> 14 <p> 15 <strong>No video playback capabilities detected.</strong> 16 Why not try to download the file instead?<br /> 17 <a href="__VIDEO__.mp4">MPEG4 / H.264 “.mp4” (Windows / Mac)</a> | 18 <a href="__VIDEO__.ogv">Ogg Theora &amp; Vorbis “.ogv” (Linux)</a> 19 </p> 20 </object><!--[if gt IE 6]><!--> 21 </object><!--<![endif]--> 22 </video>
  • 25.
  • 26. HTML5 goodies ● Drag and drop ● Cross-window, Cross-domain messaging ● Web workers ● Adding toolbars <menu>, <command> ● WebStorage ● Register protocol handler, content type handlers ● Server-sent events <eventsource> ● (Geolocation)
  • 27. Mwah! mwah! brucel@opera.com, http://dev.opera.com www.brucelawson.co.uk, twitter.com/brucel www.html5doctor.com, www.html5demos.com