Internet Explorer 9 and
       HTML5 for Developers



Presented By: Mahmoud Ghoz
About Me


• My name is Mahmoud Ghoz
• My Current Position is Project Leader at
  ITWorx
• Cofounder for Qhat.NET
• MCPD (Distributed Systems) and MCT
Agenda




• What do we mean by HTML 5?
• HTML 5 History
• HTML 5 new tags
What do we mean by HTML 5?




Add all new web technology into a box labeled
HTML 5
          SVG (Scalable Vector Graphics) 6 years old.




 Web Forms 2.0                                XMLHttp-Request (XHR)
                         HTML 5
History




• It will help you understand why some aspects
  of HTML5 are as they are.
• And hopefully pre-empt some of those “EIH?
  Why did they design it like that?” moments
History




• In 1998, the W3C decided that they would not
  continue to evolve HTML.
• HTML was frozen at version 4.01.
• WHATWG (Web Hypertext Application
  Technology Working Group) see otherwise.
• WHATWG is working since 2004.
• In 2006 the W3C decided that they had perhaps
  been over-optimistic in expecting the world to
  move to XML.
History




• The W3C voted to use the WHATWG’s Web
  Applications spec as the basis for the new
  version of HTML.
Main Aims




• Specifying current browser behaviors that are
  interoperable.

• Defining error handling for the first time.
Main Aims




• Evolving the language for easier authoring of
  web applications.
   – DOM APIs for drag and drop
   – Server-sent events
   – Drawing
   – Video
Demo 1




Simple HTML 5 Page
Demo 2




HTML 5 can help you with wrong syntax
Demo 3




Let’s See what HTML 5 Can do
Demo 3
Demo 4




The new in the <a> tag
Demo 5




<ol start=5>
New Keywords




• embed
• KeyGen
• Progress
Forms




•   <input type=email>
•   <input type=url>
•   <input type=date>
•   <input type=time>
•   <input type=month>
•   <input type=tel>
Forms




• <input type=email required>
• <input type=email multiple>
• <input pattern=“[0-9][A-Z]{3}”>
Forms




NO JAVA SCRIPT REQUIRED
Multimedia




No need for plugin to play video and audio
        HTML 5 will do it for you
Demo 6




Play my ogv file
Canvas




•   2D drawing
•   3D drawing
•   Playing with pictures
•   Animate objects
Demo 7




Canvas
Demo 8




Canvas 3D
Demo 9




local storage
Demo 10




Session storage
Demo 11




Drag and Drop
Things not covered




• Offline
• Geolocation
• Messages, worker and sockets
Is HTML5 Right for You?




Are you planning to develop an application with
              limited resources?
Is HTML5 Right for You?




Are you planning to reach your audience on the
   go with devices such as smartphones and
                    tablets?
Is HTML5 Right for You?




Are you looking to reach mobile audiences, but
without having to go through mobile app store
                 ecosystems?
Questions
Thank You

Html5

Editor's Notes

  • #9 Document the undocumentedUnambiguously define how browsers and other user agents should deal with invalid markup.
  • #11 &lt;meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8”&gt;
  • #12 http://html5.validator.nu Open developer tool
  • #14 In 2004, the editor of the HTML5 spec, Ian Hickson, mined 1 billion web pages via the Google index, looking to see what the “real” web is made of. One of the analyses he subsequentlypublished (http://code.google.com/webstats/2005-12/classes.html) was a list of the most popular class names in those HTML documents. More recently, in 2009 the Opera MAMA crawler (see http://devfiles.myopera.com/articles/572/idlist-url.htm) looked againat class attributes in 2,148,723 randomly chosen URLs and alsoids given to elements (which the Google dataset didn’t include) in 1,806,424 URLs.
  • #17 Embed: is used to embed plugin … HTML 5 supposed to replace all the plugin but not over nightKeyGen: where you form need to send a public KeyProgress: is used to represent a progress meter to indicate the completion of a task
  • #18 There is no standard how every browser will render the controlsBrowser now is responsible to validate the input
  • #19 Attribute:Required:We also have required attribute to mark this field as mandatory. Multiple: allows the user to enter multiple email addresses.Pattern: custom validate, A part number is a digit followed by three uppercase letters.
  • #25 Let’s Play Game
  • #26 Let’s Play Game
  • #27 Let’s Play Game
  • #28 Let’s Play Game
  • #29 Geolocation: W3C, not HTML5, API that works with maps, mobile phones can locate you on the mapMessages: allow you to send message from one domain to anotherWeb workers: Threads, is a way of running a discrete block of JavaScript in a background process to the main browser.Web Sockets: is not HTML 5, -Comet- Web Sockets give you a bi-directional connection between your server and the client, the browser. This connection is also real-time and is permanently open until explicitly closed. This means that when the server wants to send your client something, that message is pushed to your browser immediately.
  • #30 HTML5 is a good fit; HTML is human readable, and there are over ten million web developers (compared to much fewer native and plug-in developers).
  • #31 HTML5 is a good fit; with HTML web-based mobile applications, your application consistently displays across mobile web browsers, including future devices.
  • #32 HTML5 is a good fit; with HTML web-based mobile applications, you don’t even need the approval of a app store to reach your audience.