SlideShare a Scribd company logo
cocktail d’expérience informatiques
             Genève 3 & 4 octobre 2011
                    Seconde édition
                      soft-shake.ch




Auteur    Sascha P. CORTI
  Track   Microsoft
Session   HTML5 An
          Introduction
soft-shake.ch - Introduction to HTML5
HTML5
An Introduction
Sascha P Corti
       .
Developer Evangelist, Microsoft Switzerland
sascha.corti@microsoft.com | blog | twitter
What is HTML5?
HTML5…
   Is a draft specification from the W3C
   with over 1100 (printed) pages

   Adds new elements
   (canvas, video, audio, inline SVG…)

   Changes and removes some older
   elements and attributes (center, font…)

   Is NOT done yet!
   Keeps evolving.

   Is NOT (only) a Marketing Message
HTML5 Markup                      <div id=mainContent>

New Markup Elements
  Article, Section, Nav
  Aside, Hgroup, Header,
  Footer
  Figure, Figcaption
  Address                  <article>

<Canvas>
<Audio>                           …article text…
<Video>
The Map of HTML5
W3C HTML WG
Chair
   Sam Ruby (IBM)
   Paul Cotton (Microsoft)
                                                        www.w3.org/html/wg
   Maciej Stachowiak (Apple)
40 Member Organizations, 411 Participants, 280 Invited Experts
   16 people from Microsoft Teams
8 Publications
   HTML5
   HTML Canvas 2D Context
   HTML: The Markup
   HTML5 diffs from HTML4
   Polyglot Markup
Meetings over IRC, Phone, Face-to-face
Recommendations produced under Royalty-Free basis
Specification Status
                       May
                       2011                              2014

                                   HTML5
                                   Today


  First Public                  Candidate     Proposed
                 Working                                 Recommen-
   Working                     Recommen-     Recommen-
                  Draft                                    dation
     Draft                       dation        dation



                       Last call       Call to
                       (feature      implement
                      complete)
http://www.w3.org/2011/02/htmlwg-pr.html
The Map of HTML5
http://www.w3.org/News/2011




                                              Candidate
  First Public                                            Recommen-
                 Working Draft   Last Call   Recommen-
 Working Draft                                              dation
                                               dation
HTML5: “Same Mark-Up”

         9




http://ie.microsoft.com/testdrive/HTML5/BorderRadius/Default.html
Dive into HTML5
HTML5 <video>
  Video can be composited with anything else on the page
     HTML content, images, SVG graphics
     IE9: Hardware accelerated, GPU-based decoding
  Attributes
     src – specifies the location to pull the source file
     autoplay – if present starts playing as soon as it’s ready
     controls – if present displays controls
     preload – if present loads source at page load
     loop – if present loops back to the beginning of the video
     height & width – specifies the height & width of the player
<video src="video.mp4" id="videoTag" width="640px" height="360px">
  <!-- Only shown when browser doesn’t support video -->
  <!-- You Could Embed Flash or Silverlight Video Here -->
</video>
HTML5 <video> Format Support
     Ogg Theora                      H.264            VP8 (WebM)
                                                     Using Codec installed
        Manual Install                                   by Chrome /
                                        9.0
       (OpenCodecs)                                 WebM Components for
                                                         IE9 (Preview)
                                      No
             3.5                                             4.0
                                 (Removed at 11)
                             Windows Media Player
             3.0             HTML5 Extension for             6.0
                               Chrome in Win7
        Manual Install
                                                    Google announced a
    (Xiph.org QuickTime                 3.1
                                                    WebM plugin for Safari
        Components)

            10.50                       No                  10.60

  http://en.wikipedia.org/wiki/HTML5_video
Converting Videos
       Expression Media        VLC Media Player
       Encoder 4 Pro           (free download)
 Transcoding Project      Media  Convert/Save
 Output Format: MP4         Video: H.264 + AAC (MP4)”
                            “Video: VP8 + Vorbis (Webm)”
demo
<video>
http://www.youtube.com/watch?v=RfMSxf6P_AM
HTML5 <canvas>
  A block element that allows
  developers to draw 2d graphics
  using JavaScript.
     Methods for drawing include: paths, boxes, circles, text and
     rasterized images
<canvas id="myCanvas" width="200" height="200">
  Your browser doesn’t support the HTML5 canvas, sorry.
</canvas>

<script type="text/javascript">
  var example = document.getElementById("myCanvas");
  var context = example.getContext("2d");
  context.fillStyle = "rgb(255,0,0)";
  context.fillRect(30, 30, 50, 50);
</script>
demo
<canvas>
http://www.thekillersmusic.com/HTML5
Scalable Vector Graphics
  Create and draw 2D vector graphics using XML
      Vector images are composed of shapes instead of pixels
      Based on the SVG 1.1 2nd Edition Full specification

  Support for
      Full DOM access to SVG elements
      Document structure, scripting, styling, paths,
      shapes, colors, transforms, gradients, patterns,
      masking, clipping, markers, linking and views
<svg width="400" height="200" xmlns="http://www.w3.org/2000/svg">
  <rect fill="red" x="20" y="20" width="100" height="75" />
  <rect fill="blue" x="50" y="50" width="100" height="75" />
</svg>
                                                                    1
CSS3 Media Queries
  Selectively style page based on properties of the
  media
<link href="DoNotDisplay.css" rel="stylesheet"
  media="screen and (max-width:1199px)" type="text/css" />

<link href="DoNotDisplay.css" rel="stylesheet"
  media="screen and (min-width:1301px)" type="text/css" />

<link href="Presentation.css" rel="stylesheet"
  media="screen and (min-width:1200px) and (max-width:
  1300px)" type="text/css" />


      Maxdesign: CSS3 Media Queries (SlideShare)
New: @font-face & WOFF Fonts
  No longer limited to the “web safe” font list!
  Web Open Font Format allows you to package and
  deliver fonts as needed, per site
     Designed for web use with the @font-face declaration
     A simple repackaging of OpenType or TrueType font data
     From the W3C Fonts Working Group
<style type="text/css">
  @font-face {
    font-family:MyFontName;
    src: url('FontFile.woff');
 }
</style>

<div style="font: 24pt MyFontName, sans-serif;">
  This will render using the font in FontFile.woff
</div>
demo
<CSS>
http://www.nevermindthebullets.com/
HTML5 Tools & Frameworks
 Modernizr Feature Detection JavaScript library
    HTML5 or CSS3 features.
    Feature missing: Modernizr creates Fallback.
 jQuery JavaScript library for DOM Manipulation
    Event Handling, Animation, Document Traversing.
    Supported in Visual Studio.
 Easel.js JavaScript Library for building Canvas-Based Apps.
    Example: Pirates Love Daisies.
    includes concepts such as sprites, graphics, sparkles and game
    semantics.
 Ai2Canvas Export Adobe Illustrator Vector and Bitmap
 Artwork directly to HTML5 Canvas.
    Provides Drawing, Animation and Coding Options such as Events
Internet Explorer & HTML5
What about the other Specs?
http://html5labs.interoperabilitybridges.com
                                         IndexedDB:
                                         W3C draft Web specification for the
                                         storage of large amounts of
                                         structured data in the browser, using
                                         indexes that allow for high
                                         performance searches on this data.

                                         WebSockets:
                                         Technology designed to simplify
                                         much of the complexity around bi-
                                         directional, full-duplex
                                         communications channels, over a
                                         single Transmission ControlProtocol
                                         (TCP) socket.
                                         Implemented in web browsers, web
                                         servers as well as used by any client
                                         or server application.
Internet Explorer: Two Flavors
IE 10: Platform Preview           IE9: Stable Release
    Frequent Releases (8 weeks)      Full Browser
    Side-by-Side installation        No Side-by-Side
    Only Chakra & Trident            Site Mode & Developer Tools
“Chakra” JavaScript Engine
                      JSZap: Compressing JavaScript Source Code



Foreground (UI Thread)
       Source                                        ByteCode                            Machine
                          Parser                                      Interpreter
        Code                                         Generator                         Instructions

        Core #1                                                                Exec Loop


        Background Thread                                         Background          Native
                                                                   Compiler           Code
                Core #2

  PDC 2010 Sessions:
    Unlocking JavaScript Opportunity with Internet Explorer 9
    Inside Internet Explorer Performance
  25
IE9 “Pinned Site”
 Brand Browser in your Site’s
 Colors & Logo
   Disable 3rd Party Add-Ons

 Integrate in Windows 7 Taskbar
    Add custom Menus
    Show Dynamic Overlay Icons
Internet Explorer 9
Pinned Site
http://www.nevermindthebullets.com/
Conclusion
Mobile: HTML5 or App?
 HTML5 a Solution to Homogenize Mobile Space?
 Users mostly still decide Pro App
   Added Interactivity
   Faster Start-Up
   More Network Independent

                      Interation
Data
                         Intense
Intense
HTML5 or Plug-In based RIA?
                                            Plug-In based




Today, Browsers should not   Today, Line-of-Business
require a Plug-In to play    Applications with lots of
Multimedia Content.          Logic are very hard to write
                             in JavaScript.
Resources
 W3C                    Microsoft
  HTML5 Working Group     IE Blog
  HTML5 T Suite
         est              IE T Drive
                              est
  Conformance Results     IE T Center
                              est
                          HTML5 Gallery
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
     conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
                                        MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Ad

Recommended

soft-shake.ch - Windows Phone 7 „Mango“ – what’s new for Developers?
soft-shake.ch - Windows Phone 7 „Mango“ – what’s new for Developers?
soft-shake.ch
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
Sascha Corti
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
George Kanellopoulos
 
Word camp nextweb
Word camp nextweb
Panagiotis Grigoropoulos
 
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
HTML5 Real Time and WebSocket Code Lab (SFHTML5, GTUGSF)
Peter Lubbers
 
Developing High Performance Web Apps
Developing High Performance Web Apps
Timothy Fisher
 
Tuning Web Performance
Tuning Web Performance
Eric ShangKuan
 
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Extending JMS to Web Devices over HTML5 WebSockets - JavaOne 2011
Peter Moskovits
 
Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014
Arun Gupta
 
WebSocket protocol
WebSocket protocol
Kensaku Komatsu
 
Introduction to WebSockets
Introduction to WebSockets
Gunnar Hillert
 
HTML5 WebSocket Introduction
HTML5 WebSocket Introduction
Marcelo Jabali
 
Building a Next Generation Mobile Browser using Web technologies
Building a Next Generation Mobile Browser using Web technologies
n_adam_stanley
 
Performance Of Web Applications On Client Machines
Performance Of Web Applications On Client Machines
Curelet Marius
 
Sencha touchonbb10 bootcamp
Sencha touchonbb10 bootcamp
n_adam_stanley
 
Php push notifications
Php push notifications
Mohammed Shurrab
 
Up to Speed on HTML 5 and CSS 3
Up to Speed on HTML 5 and CSS 3
M. Jackson Wilkinson
 
Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)
AOE
 
Jetty 9 – The Next Generation Servlet Container
Jetty 9 – The Next Generation Servlet Container
Codemotion
 
Sg conference multiplatform_apps_adam_stanley
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
HTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
brucelawson
 
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
Paul Withers
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Ulrich Krause
 
Html5 features: location, history and offline apps
Html5 features: location, history and offline apps
Konstantin Delchev
 
Pushing the web — WebSockets
Pushing the web — WebSockets
Roland M
 
Building Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSockets
Peter Moskovits
 
Transforming the web into a real application platform
Transforming the web into a real application platform
Mohanadarshan Vivekanandalingam
 
Presentation IDC Green IT
Presentation IDC Green IT
AIR-LYNX
 
Démonstrateur Btr Cloud par EasyVirt
Démonstrateur Btr Cloud par EasyVirt
GreenLabCenter
 
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch
 

More Related Content

What's hot (19)

Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014
Arun Gupta
 
WebSocket protocol
WebSocket protocol
Kensaku Komatsu
 
Introduction to WebSockets
Introduction to WebSockets
Gunnar Hillert
 
HTML5 WebSocket Introduction
HTML5 WebSocket Introduction
Marcelo Jabali
 
Building a Next Generation Mobile Browser using Web technologies
Building a Next Generation Mobile Browser using Web technologies
n_adam_stanley
 
Performance Of Web Applications On Client Machines
Performance Of Web Applications On Client Machines
Curelet Marius
 
Sencha touchonbb10 bootcamp
Sencha touchonbb10 bootcamp
n_adam_stanley
 
Php push notifications
Php push notifications
Mohammed Shurrab
 
Up to Speed on HTML 5 and CSS 3
Up to Speed on HTML 5 and CSS 3
M. Jackson Wilkinson
 
Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)
AOE
 
Jetty 9 – The Next Generation Servlet Container
Jetty 9 – The Next Generation Servlet Container
Codemotion
 
Sg conference multiplatform_apps_adam_stanley
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
HTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
brucelawson
 
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
Paul Withers
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Ulrich Krause
 
Html5 features: location, history and offline apps
Html5 features: location, history and offline apps
Konstantin Delchev
 
Pushing the web — WebSockets
Pushing the web — WebSockets
Roland M
 
Building Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSockets
Peter Moskovits
 
Transforming the web into a real application platform
Transforming the web into a real application platform
Mohanadarshan Vivekanandalingam
 
Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014
Arun Gupta
 
Introduction to WebSockets
Introduction to WebSockets
Gunnar Hillert
 
HTML5 WebSocket Introduction
HTML5 WebSocket Introduction
Marcelo Jabali
 
Building a Next Generation Mobile Browser using Web technologies
Building a Next Generation Mobile Browser using Web technologies
n_adam_stanley
 
Performance Of Web Applications On Client Machines
Performance Of Web Applications On Client Machines
Curelet Marius
 
Sencha touchonbb10 bootcamp
Sencha touchonbb10 bootcamp
n_adam_stanley
 
Rock-solid Magento Deployments (and Development)
Rock-solid Magento Deployments (and Development)
AOE
 
Jetty 9 – The Next Generation Servlet Container
Jetty 9 – The Next Generation Servlet Container
Codemotion
 
Sg conference multiplatform_apps_adam_stanley
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
HTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
brucelawson
 
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
IBM Connect 2014 BP204: It's Not Infernal: Dante's Nine Circles of XPages Heaven
Paul Withers
 
Dr. Strangelove, or how I learned to love plugin development
Dr. Strangelove, or how I learned to love plugin development
Ulrich Krause
 
Html5 features: location, history and offline apps
Html5 features: location, history and offline apps
Konstantin Delchev
 
Pushing the web — WebSockets
Pushing the web — WebSockets
Roland M
 
Building Living Web Applications with HTML5 WebSockets
Building Living Web Applications with HTML5 WebSockets
Peter Moskovits
 

Viewers also liked (6)

Presentation IDC Green IT
Presentation IDC Green IT
AIR-LYNX
 
Démonstrateur Btr Cloud par EasyVirt
Démonstrateur Btr Cloud par EasyVirt
GreenLabCenter
 
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch
 
Green-computing
Green-computing
alg2801
 
soft-shake.ch - Le développement durable
soft-shake.ch - Le développement durable
soft-shake.ch
 
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch
 
Presentation IDC Green IT
Presentation IDC Green IT
AIR-LYNX
 
Démonstrateur Btr Cloud par EasyVirt
Démonstrateur Btr Cloud par EasyVirt
GreenLabCenter
 
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch - WebMatrix: Your Web Made Easy
soft-shake.ch
 
Green-computing
Green-computing
alg2801
 
soft-shake.ch - Le développement durable
soft-shake.ch - Le développement durable
soft-shake.ch
 
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
soft-shake.ch
 
Ad

Similar to soft-shake.ch - Introduction to HTML5 (20)

Word camp nextweb
Word camp nextweb
GreekTuts Ελληνικά Βοηθήματα
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
George Kanellopoulos
 
HTML5 History & Features
HTML5 History & Features
Dave Ross
 
Jsf2 html5-jazoon
Jsf2 html5-jazoon
Roger Kitain
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
Shumpei Shiraishi
 
Html 5
Html 5
Nguyen Quang
 
Html5
Html5
mikusuraj
 
Html5 more than just html5 v final
Html5 more than just html5 v final
Lohith Goudagere Nagaraj
 
JS Days HTML5 Flash and the Battle for Faster Cat Videos
JS Days HTML5 Flash and the Battle for Faster Cat Videos
Greg Schechter
 
GDD HTML5, Flash, and the Battle for Faster Cat Videos
GDD HTML5, Flash, and the Battle for Faster Cat Videos
Greg Schechter
 
HTML5 - A Whirlwind tour
HTML5 - A Whirlwind tour
Lohith Goudagere Nagaraj
 
HTML5 Presentation
HTML5 Presentation
vs4vijay
 
Html5 Primer
Html5 Primer
Graeme Bryan
 
Everything you need to know about HTML5 in 15 min
Everything you need to know about HTML5 in 15 min
Edgar Parada
 
HTML5 Technical Executive Summary
HTML5 Technical Executive Summary
Gilad Khen
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3
Karambir Singh Nain
 
I Love HTML5
I Love HTML5
Shravan Kumar Kasagoni
 
HTML5
HTML5
Ana AbdElzaher
 
HTML5 & Web Platform
HTML5 & Web Platform
SwapSkills
 
Dive Into HTML5
Dive Into HTML5
Doris Chen
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
George Kanellopoulos
 
HTML5 History & Features
HTML5 History & Features
Dave Ross
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
Shumpei Shiraishi
 
JS Days HTML5 Flash and the Battle for Faster Cat Videos
JS Days HTML5 Flash and the Battle for Faster Cat Videos
Greg Schechter
 
GDD HTML5, Flash, and the Battle for Faster Cat Videos
GDD HTML5, Flash, and the Battle for Faster Cat Videos
Greg Schechter
 
HTML5 Presentation
HTML5 Presentation
vs4vijay
 
Everything you need to know about HTML5 in 15 min
Everything you need to know about HTML5 in 15 min
Edgar Parada
 
HTML5 Technical Executive Summary
HTML5 Technical Executive Summary
Gilad Khen
 
Building a Better Web with HTML5 and CSS3
Building a Better Web with HTML5 and CSS3
Karambir Singh Nain
 
HTML5 & Web Platform
HTML5 & Web Platform
SwapSkills
 
Dive Into HTML5
Dive Into HTML5
Doris Chen
 
Ad

More from soft-shake.ch (20)

soft-shake.ch - Clojure Values
soft-shake.ch - Clojure Values
soft-shake.ch
 
soft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Grids
soft-shake.ch
 
soft-shake.ch - Data grids and Data Caching
soft-shake.ch - Data grids and Data Caching
soft-shake.ch
 
soft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch
 
soft-shake.ch - Java SE 7: The Fork/Join Framework and Project Coin
soft-shake.ch - Java SE 7: The Fork/Join Framework and Project Coin
soft-shake.ch
 
soft-shake.ch - Tests d'intégration JavaEE avec Arquillian
soft-shake.ch - Tests d'intégration JavaEE avec Arquillian
soft-shake.ch
 
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch
 
soft-shake.ch - Déploiement continu sur le cloud avec SlipStream
soft-shake.ch - Déploiement continu sur le cloud avec SlipStream
soft-shake.ch
 
soft-shake.ch - An introduction to social architecture
soft-shake.ch - An introduction to social architecture
soft-shake.ch
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
soft-shake.ch
 
soft-shake.ch - De Hermes RUP à Hermes Scrum
soft-shake.ch - De Hermes RUP à Hermes Scrum
soft-shake.ch
 
soft-shake.ch - Stewardship et motivation
soft-shake.ch - Stewardship et motivation
soft-shake.ch
 
soft-shake.ch - Agile qu'es aco : scrum xp lean
soft-shake.ch - Agile qu'es aco : scrum xp lean
soft-shake.ch
 
soft-shake.ch - Documentation et agilité
soft-shake.ch - Documentation et agilité
soft-shake.ch
 
soft-shake.ch - Agilité = discipline et rigueur ?
soft-shake.ch - Agilité = discipline et rigueur ?
soft-shake.ch
 
soft-shake.ch - Transition agile & Accompagnement au changement
soft-shake.ch - Transition agile & Accompagnement au changement
soft-shake.ch
 
soft-shake.ch - Agilité et Testing: de l'intérêt d'une démarche structurée
soft-shake.ch - Agilité et Testing: de l'intérêt d'une démarche structurée
soft-shake.ch
 
soft-shake.ch - The feel of Scala
soft-shake.ch - The feel of Scala
soft-shake.ch
 
soft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agile
soft-shake.ch
 
soft-shake.ch - Recettes d’une passion
soft-shake.ch - Recettes d’une passion
soft-shake.ch
 
soft-shake.ch - Clojure Values
soft-shake.ch - Clojure Values
soft-shake.ch
 
soft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Grids
soft-shake.ch
 
soft-shake.ch - Data grids and Data Caching
soft-shake.ch - Data grids and Data Caching
soft-shake.ch
 
soft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch - JBoss AS 7, la révolution
soft-shake.ch
 
soft-shake.ch - Java SE 7: The Fork/Join Framework and Project Coin
soft-shake.ch - Java SE 7: The Fork/Join Framework and Project Coin
soft-shake.ch
 
soft-shake.ch - Tests d'intégration JavaEE avec Arquillian
soft-shake.ch - Tests d'intégration JavaEE avec Arquillian
soft-shake.ch
 
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch
 
soft-shake.ch - Déploiement continu sur le cloud avec SlipStream
soft-shake.ch - Déploiement continu sur le cloud avec SlipStream
soft-shake.ch
 
soft-shake.ch - An introduction to social architecture
soft-shake.ch - An introduction to social architecture
soft-shake.ch
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
soft-shake.ch
 
soft-shake.ch - De Hermes RUP à Hermes Scrum
soft-shake.ch - De Hermes RUP à Hermes Scrum
soft-shake.ch
 
soft-shake.ch - Stewardship et motivation
soft-shake.ch - Stewardship et motivation
soft-shake.ch
 
soft-shake.ch - Agile qu'es aco : scrum xp lean
soft-shake.ch - Agile qu'es aco : scrum xp lean
soft-shake.ch
 
soft-shake.ch - Documentation et agilité
soft-shake.ch - Documentation et agilité
soft-shake.ch
 
soft-shake.ch - Agilité = discipline et rigueur ?
soft-shake.ch - Agilité = discipline et rigueur ?
soft-shake.ch
 
soft-shake.ch - Transition agile & Accompagnement au changement
soft-shake.ch - Transition agile & Accompagnement au changement
soft-shake.ch
 
soft-shake.ch - Agilité et Testing: de l'intérêt d'une démarche structurée
soft-shake.ch - Agilité et Testing: de l'intérêt d'une démarche structurée
soft-shake.ch
 
soft-shake.ch - The feel of Scala
soft-shake.ch - The feel of Scala
soft-shake.ch
 
soft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agile
soft-shake.ch
 
soft-shake.ch - Recettes d’une passion
soft-shake.ch - Recettes d’une passion
soft-shake.ch
 

Recently uploaded (20)

“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
PyCon SG 25 - Firecracker Made Easy with Python.pdf
PyCon SG 25 - Firecracker Made Easy with Python.pdf
Muhammad Yuga Nugraha
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
OWASP Barcelona 2025 Threat Model Library
OWASP Barcelona 2025 Threat Model Library
PetraVukmirovic
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
Cyber Defense Matrix Workshop - RSA Conference
Cyber Defense Matrix Workshop - RSA Conference
Priyanka Aash
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
Safe Software
 
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Priyanka Aash
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
PyCon SG 25 - Firecracker Made Easy with Python.pdf
PyCon SG 25 - Firecracker Made Easy with Python.pdf
Muhammad Yuga Nugraha
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
OWASP Barcelona 2025 Threat Model Library
OWASP Barcelona 2025 Threat Model Library
PetraVukmirovic
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
Cyber Defense Matrix Workshop - RSA Conference
Cyber Defense Matrix Workshop - RSA Conference
Priyanka Aash
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
Safe Software
 
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Oh, the Possibilities - Balancing Innovation and Risk with Generative AI.pdf
Priyanka Aash
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Coordinated Disclosure for ML - What's Different and What's the Same.pdf
Priyanka Aash
 
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
"How to survive Black Friday: preparing e-commerce for a peak season", Yurii ...
Fwdays
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
A Constitutional Quagmire - Ethical Minefields of AI, Cyber, and Privacy.pdf
Priyanka Aash
 

soft-shake.ch - Introduction to HTML5

  • 1. cocktail d’expérience informatiques Genève 3 & 4 octobre 2011 Seconde édition soft-shake.ch Auteur Sascha P. CORTI Track Microsoft Session HTML5 An Introduction
  • 3. HTML5 An Introduction Sascha P Corti . Developer Evangelist, Microsoft Switzerland [email protected] | blog | twitter
  • 5. HTML5… Is a draft specification from the W3C with over 1100 (printed) pages Adds new elements (canvas, video, audio, inline SVG…) Changes and removes some older elements and attributes (center, font…) Is NOT done yet! Keeps evolving. Is NOT (only) a Marketing Message
  • 6. HTML5 Markup <div id=mainContent> New Markup Elements Article, Section, Nav Aside, Hgroup, Header, Footer Figure, Figcaption Address <article> <Canvas> <Audio> …article text… <Video>
  • 7. The Map of HTML5
  • 8. W3C HTML WG Chair Sam Ruby (IBM) Paul Cotton (Microsoft) www.w3.org/html/wg Maciej Stachowiak (Apple) 40 Member Organizations, 411 Participants, 280 Invited Experts 16 people from Microsoft Teams 8 Publications HTML5 HTML Canvas 2D Context HTML: The Markup HTML5 diffs from HTML4 Polyglot Markup Meetings over IRC, Phone, Face-to-face Recommendations produced under Royalty-Free basis
  • 9. Specification Status May 2011 2014 HTML5 Today First Public Candidate Proposed Working Recommen- Working Recommen- Recommen- Draft dation Draft dation dation Last call Call to (feature implement complete) http://www.w3.org/2011/02/htmlwg-pr.html
  • 10. The Map of HTML5 http://www.w3.org/News/2011 Candidate First Public Recommen- Working Draft Last Call Recommen- Working Draft dation dation
  • 11. HTML5: “Same Mark-Up” 9 http://ie.microsoft.com/testdrive/HTML5/BorderRadius/Default.html
  • 13. HTML5 <video> Video can be composited with anything else on the page HTML content, images, SVG graphics IE9: Hardware accelerated, GPU-based decoding Attributes src – specifies the location to pull the source file autoplay – if present starts playing as soon as it’s ready controls – if present displays controls preload – if present loads source at page load loop – if present loops back to the beginning of the video height & width – specifies the height & width of the player <video src="video.mp4" id="videoTag" width="640px" height="360px"> <!-- Only shown when browser doesn’t support video --> <!-- You Could Embed Flash or Silverlight Video Here --> </video>
  • 14. HTML5 <video> Format Support Ogg Theora H.264 VP8 (WebM) Using Codec installed Manual Install by Chrome / 9.0 (OpenCodecs) WebM Components for IE9 (Preview) No 3.5 4.0 (Removed at 11) Windows Media Player 3.0 HTML5 Extension for 6.0 Chrome in Win7 Manual Install Google announced a (Xiph.org QuickTime 3.1 WebM plugin for Safari Components) 10.50 No 10.60 http://en.wikipedia.org/wiki/HTML5_video
  • 15. Converting Videos Expression Media VLC Media Player Encoder 4 Pro (free download) Transcoding Project Media  Convert/Save Output Format: MP4 Video: H.264 + AAC (MP4)” “Video: VP8 + Vorbis (Webm)”
  • 17. HTML5 <canvas> A block element that allows developers to draw 2d graphics using JavaScript. Methods for drawing include: paths, boxes, circles, text and rasterized images <canvas id="myCanvas" width="200" height="200"> Your browser doesn’t support the HTML5 canvas, sorry. </canvas> <script type="text/javascript"> var example = document.getElementById("myCanvas"); var context = example.getContext("2d"); context.fillStyle = "rgb(255,0,0)"; context.fillRect(30, 30, 50, 50); </script>
  • 19. Scalable Vector Graphics Create and draw 2D vector graphics using XML Vector images are composed of shapes instead of pixels Based on the SVG 1.1 2nd Edition Full specification Support for Full DOM access to SVG elements Document structure, scripting, styling, paths, shapes, colors, transforms, gradients, patterns, masking, clipping, markers, linking and views <svg width="400" height="200" xmlns="http://www.w3.org/2000/svg"> <rect fill="red" x="20" y="20" width="100" height="75" /> <rect fill="blue" x="50" y="50" width="100" height="75" /> </svg> 1
  • 20. CSS3 Media Queries Selectively style page based on properties of the media <link href="DoNotDisplay.css" rel="stylesheet" media="screen and (max-width:1199px)" type="text/css" /> <link href="DoNotDisplay.css" rel="stylesheet" media="screen and (min-width:1301px)" type="text/css" /> <link href="Presentation.css" rel="stylesheet" media="screen and (min-width:1200px) and (max-width: 1300px)" type="text/css" /> Maxdesign: CSS3 Media Queries (SlideShare)
  • 21. New: @font-face & WOFF Fonts No longer limited to the “web safe” font list! Web Open Font Format allows you to package and deliver fonts as needed, per site Designed for web use with the @font-face declaration A simple repackaging of OpenType or TrueType font data From the W3C Fonts Working Group <style type="text/css"> @font-face { font-family:MyFontName; src: url('FontFile.woff'); } </style> <div style="font: 24pt MyFontName, sans-serif;"> This will render using the font in FontFile.woff </div>
  • 23. HTML5 Tools & Frameworks Modernizr Feature Detection JavaScript library HTML5 or CSS3 features. Feature missing: Modernizr creates Fallback. jQuery JavaScript library for DOM Manipulation Event Handling, Animation, Document Traversing. Supported in Visual Studio. Easel.js JavaScript Library for building Canvas-Based Apps. Example: Pirates Love Daisies. includes concepts such as sprites, graphics, sparkles and game semantics. Ai2Canvas Export Adobe Illustrator Vector and Bitmap Artwork directly to HTML5 Canvas. Provides Drawing, Animation and Coding Options such as Events
  • 25. What about the other Specs? http://html5labs.interoperabilitybridges.com IndexedDB: W3C draft Web specification for the storage of large amounts of structured data in the browser, using indexes that allow for high performance searches on this data. WebSockets: Technology designed to simplify much of the complexity around bi- directional, full-duplex communications channels, over a single Transmission ControlProtocol (TCP) socket. Implemented in web browsers, web servers as well as used by any client or server application.
  • 26. Internet Explorer: Two Flavors IE 10: Platform Preview IE9: Stable Release Frequent Releases (8 weeks) Full Browser Side-by-Side installation No Side-by-Side Only Chakra & Trident Site Mode & Developer Tools
  • 27. “Chakra” JavaScript Engine JSZap: Compressing JavaScript Source Code Foreground (UI Thread) Source ByteCode Machine Parser Interpreter Code Generator Instructions Core #1 Exec Loop Background Thread Background Native Compiler Code Core #2 PDC 2010 Sessions: Unlocking JavaScript Opportunity with Internet Explorer 9 Inside Internet Explorer Performance 25
  • 28. IE9 “Pinned Site” Brand Browser in your Site’s Colors & Logo Disable 3rd Party Add-Ons Integrate in Windows 7 Taskbar Add custom Menus Show Dynamic Overlay Icons
  • 29. Internet Explorer 9 Pinned Site http://www.nevermindthebullets.com/
  • 31. Mobile: HTML5 or App? HTML5 a Solution to Homogenize Mobile Space? Users mostly still decide Pro App Added Interactivity Faster Start-Up More Network Independent Interation Data Intense Intense
  • 32. HTML5 or Plug-In based RIA? Plug-In based Today, Browsers should not Today, Line-of-Business require a Plug-In to play Applications with lots of Multimedia Content. Logic are very hard to write in JavaScript.
  • 33. Resources W3C Microsoft HTML5 Working Group IE Blog HTML5 T Suite est IE T Drive est Conformance Results IE T Center est HTML5 Gallery
  • 34. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.