SlideShare a Scribd company logo
 
Name : Romin Irani Official Title : Principal Architect @ Xoriant Unofficial Title : Jack Of All Trades Vital Stats : Mobile Applications Cloud  Web APIs Writer & Reviewer for various publications from Wrox, O’Reilly & Addison Wesley Freelance writer covering Web 2.0 APIs at ProgrammableWeb  ( http://programmableweb.com )
HTML5 – A Brief History HTML5 Browser Support HTML5 Features/Demos/HandsOn The Road Ahead
WHAT : Next generation HTML WHO : WHATG, W3C, IETF WHEN : 2004, 2008, July 2014 All vendors support it ! (Is that true?)
Semantics Graphics Multimedia Device Access Offline Connectivity Performance/Integration CSS3
Keep it simple (Example doctype) Structural meaning Richer Set of Tags Eliminated Several Tags too
<header> <nav> <section> <article> <footer> <aside>
Aims to make development and usage of forms easier. 13 New Types introduced for user input. Additional attributes like :  placeholder ,  required ,  autofocus. Coding for  validations  is made easier.  Support varies across browsers but is compatible.
Input Types email phone url  date, datetime, month, week, time, datetime-local) color search number and range
<input type=“email” placeholder=“Enter email address”  required  autofocus/> <input type=“phone”/> <input type=“search” placeholder=“Type your search here”/> <input type=“url” /> <input type=“date” />
Screenshots : Courtesy – Mark Pilgrim,  http://diveintohtml5.org
Canvas API SVG WebGL CSS3 3D
2D Drawing API Functions : line, arcs, rectangle, fills Allows styling via CSS Allows control via Javascript Can be used for: Charts, Animation, Images and other complex rendering.
Audio and video are first class citizens in the HTML5 web A plug-in free world
Simple tags : <video>, <audio> Even Simpler usage:  <video src=“demo.mp4”></video> <audio src=“song.mp3”></audio> Control via APIs Play Pause Stop
Different browsers support different containers and Audio/Video formats. Containers : H264 and Ogg Codecs: Audio :  AAC, MP3, Vorbis Video: H264, VP8, Thedora
Need to provide more than 1 format. Browser will play the one that it supports. This situation is not likely to change. <video controls>   <source src=&quot;mov1.ogg&quot; type=&quot;video/ogg&quot; />   <source src=&quot;mov2.mp4&quot; type=&quot;video/mp4&quot; /> </video>
Currently - Geolocation API  Coming soon Audio/Video input access to microphones and cameras Local data such as contacts & events, and even tilt orientation.
Determine where the device is. Find it right in the browser. Useful for providing location based services. User should be allowed to opt in. API allows for both : one time location and continuous location.
n avigator.geolocation.getCurrentPosition (showCurrentLocation,  errorHandler, {enableHighAccuracy:  true}); function showCurrentLocation(position){ //position.coords.latitude   //position.coords.longitude; }
Web Apps can start faster and work even if there is no internet connection, thanks to the HTML5 App Cache, as well as the Local Storage, Indexed DB, and the File API specifications.
Allows local storage of application data on the device. 5MB per domain. Key component to Offline usage. Types of Storage options:
S imple API for storing values in easily retrievable JavaScript objects which persist across page loads window.localStorage getItem(key) setItem(key,value)
interface Storage {  readonly attribute unsigned long  length ;  getter  DOMString  key (in unsigned long index);  getter any  getItem (in DOMString key);  setter  creator void  setItem (in DOMString key, in any data);  deleter  void  removeItem (in DOMString key);  void  clear ();  };
Network is not available all the time. The application must be available even if the server is done.  Application Cache to the rescue. Stores the specified resources (HTML,CSS,JS) on the client. Combine Application Cache with Offline Storage to provide availability.
3 Steps to implementing AppCache Define manifest CACHE  + NETWORK + FALLBACK Reference manifest Specify right manifest MIME Type in Server Demo
Performance & Integration Web Workers ,  XMLHttpRequest 2 CONNECTIVITY  : WEB SOCKETS CSS3 IndexedDB
Indic Mobile Conference application Mobile Web application Works well with Webkit browsers Lets go !
Drag and Drop Content Editable Audio / Video CSS 3
Differing browser support & behaviour Use sites like HTML5Test.com, CanIUse.com to understand Browser support for HTML5 Fallback behaviour is important Great time to get started today! Be prepared for changes All vendors are supporting it
 
W3C :  http://dev.w3.org/html5/spec/Overview.html HTML5 Rocks:   http://www.html5rocks.com Mark Pilgrim :  http://diveintohtml5.org Remy Sharp :  http://html5demos.com   HTML5 Tech Spec :  http://developers.whatwg.org   Modernizr :  http://www.modernizr.com/ Caniuse :  http://www.caniuse.com HTML5Test :  http://www.html5test.com   https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills
Q & A romin.k.irani @ gmail.com iRomin
Ad

Recommended

WebRTC Integration from Tim Panton
WebRTC Integration from Tim Panton
Alan Quayle
 
Westhawk integration
Westhawk integration
Tim Panton
 
WebRTC Reborn - Cloud Expo / WebRTC Summit
WebRTC Reborn - Cloud Expo / WebRTC Summit
Dan Jenkins
 
.NET Drop 4
.NET Drop 4
guest63e8f8
 
Visual studio code
Visual studio code
MVP Microsoft
 
Visual Studio Code Can Do That: Tips & Tricks
Visual Studio Code Can Do That: Tips & Tricks
Microsoft Tech Community
 
Web development tool
Web development tool
Deep Bhavsar
 
IPhone Web Development With Grails from CodeMash 2009
IPhone Web Development With Grails from CodeMash 2009
Christopher Judd
 
SDK Hackery
SDK Hackery
Brian Deitte
 
Titanium Workshop - [Sainté Mobile Days]
Titanium Workshop - [Sainté Mobile Days]
Christian Brousseau
 
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Muhammad Hakim A
 
Easy form creation and validation with Formjack
Easy form creation and validation with Formjack
slicejack
 
WebRTC Reborn Hackference
WebRTC Reborn Hackference
Dan Jenkins
 
Android chat in the cloud
Android chat in the cloud
firenze-gtug
 
What's new in flutter and dart in 2020
What's new in flutter and dart in 2020
Ahmed Abu Eldahab
 
Google cloud endpoints
Google cloud endpoints
Dimitar Danailov
 
Intro Angular Ionic
Intro Angular Ionic
Gianvito Siciliano
 
Html5
Html5
Jetti Chowdary
 
Common platform-for-mobile-applications- thorsignia
Common platform-for-mobile-applications- thorsignia
charan Teja
 
Mobile HTML Hybrid Apps
Mobile HTML Hybrid Apps
Maryan Kacharaba
 
Mobile HTML Hybrid Apps
Mobile HTML Hybrid Apps
ABTO Software
 
PHP in a mobile ecosystem
PHP in a mobile ecosystem
Ivo Jansch
 
Flutter state management from zero to hero
Flutter state management from zero to hero
Ahmed Abu Eldahab
 
How to implement internationalization (i18n) in angular application(multiple ...
How to implement internationalization (i18n) in angular application(multiple ...
Katy Slemon
 
Bdd and Behat
Bdd and Behat
Adam Englander
 
HTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm Software
Romin Irani
 
The year of the peer-to-peer web
The year of the peer-to-peer web
Thomas Gorissen
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
Steve Drucker
 
Spelarenkät 2010
Spelarenkät 2010
Jan By
 
Föräldraenkät 2010
Föräldraenkät 2010
Jan By
 

More Related Content

What's hot (20)

SDK Hackery
SDK Hackery
Brian Deitte
 
Titanium Workshop - [Sainté Mobile Days]
Titanium Workshop - [Sainté Mobile Days]
Christian Brousseau
 
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Muhammad Hakim A
 
Easy form creation and validation with Formjack
Easy form creation and validation with Formjack
slicejack
 
WebRTC Reborn Hackference
WebRTC Reborn Hackference
Dan Jenkins
 
Android chat in the cloud
Android chat in the cloud
firenze-gtug
 
What's new in flutter and dart in 2020
What's new in flutter and dart in 2020
Ahmed Abu Eldahab
 
Google cloud endpoints
Google cloud endpoints
Dimitar Danailov
 
Intro Angular Ionic
Intro Angular Ionic
Gianvito Siciliano
 
Html5
Html5
Jetti Chowdary
 
Common platform-for-mobile-applications- thorsignia
Common platform-for-mobile-applications- thorsignia
charan Teja
 
Mobile HTML Hybrid Apps
Mobile HTML Hybrid Apps
Maryan Kacharaba
 
Mobile HTML Hybrid Apps
Mobile HTML Hybrid Apps
ABTO Software
 
PHP in a mobile ecosystem
PHP in a mobile ecosystem
Ivo Jansch
 
Flutter state management from zero to hero
Flutter state management from zero to hero
Ahmed Abu Eldahab
 
How to implement internationalization (i18n) in angular application(multiple ...
How to implement internationalization (i18n) in angular application(multiple ...
Katy Slemon
 
Bdd and Behat
Bdd and Behat
Adam Englander
 
HTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm Software
Romin Irani
 
The year of the peer-to-peer web
The year of the peer-to-peer web
Thomas Gorissen
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
Steve Drucker
 
Titanium Workshop - [Sainté Mobile Days]
Titanium Workshop - [Sainté Mobile Days]
Christian Brousseau
 
Phonegap/Cordova vs Native Application
Phonegap/Cordova vs Native Application
Muhammad Hakim A
 
Easy form creation and validation with Formjack
Easy form creation and validation with Formjack
slicejack
 
WebRTC Reborn Hackference
WebRTC Reborn Hackference
Dan Jenkins
 
Android chat in the cloud
Android chat in the cloud
firenze-gtug
 
What's new in flutter and dart in 2020
What's new in flutter and dart in 2020
Ahmed Abu Eldahab
 
Common platform-for-mobile-applications- thorsignia
Common platform-for-mobile-applications- thorsignia
charan Teja
 
Mobile HTML Hybrid Apps
Mobile HTML Hybrid Apps
ABTO Software
 
PHP in a mobile ecosystem
PHP in a mobile ecosystem
Ivo Jansch
 
Flutter state management from zero to hero
Flutter state management from zero to hero
Ahmed Abu Eldahab
 
How to implement internationalization (i18n) in angular application(multiple ...
How to implement internationalization (i18n) in angular application(multiple ...
Katy Slemon
 
HTML5 Webinar - Mind Storm Software
HTML5 Webinar - Mind Storm Software
Romin Irani
 
The year of the peer-to-peer web
The year of the peer-to-peer web
Thomas Gorissen
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
Steve Drucker
 

Viewers also liked (7)

Spelarenkät 2010
Spelarenkät 2010
Jan By
 
Föräldraenkät 2010
Föräldraenkät 2010
Jan By
 
InfoTalk#17 1st
InfoTalk#17 1st
Wakasa Masao
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
Romin Irani
 
Rockin' HTML5 With Drupal
Rockin' HTML5 With Drupal
Jen Simmons
 
tb presentation av vbc
tb presentation av vbc
Jan By
 
Wearables Interaction Design
Wearables Interaction Design
Markiyan Matsekh
 
Spelarenkät 2010
Spelarenkät 2010
Jan By
 
Föräldraenkät 2010
Föräldraenkät 2010
Jan By
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
Romin Irani
 
Rockin' HTML5 With Drupal
Rockin' HTML5 With Drupal
Jen Simmons
 
tb presentation av vbc
tb presentation av vbc
Jan By
 
Wearables Interaction Design
Wearables Interaction Design
Markiyan Matsekh
 
Ad

Similar to Thadomal IEEE-HTML5-Workshop (20)

Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
IndicThreads
 
Html5
Html5
Zahin Omar Alwa
 
Html5 workshop part 1
Html5 workshop part 1
NAILBITER
 
Speak the Web 15.02.2010
Speak the Web 15.02.2010
Patrick Lauke
 
HTML5 features & JavaScript APIs
HTML5 features & JavaScript APIs
Fisnik Doko
 
HTML5 - Future of Web
HTML5 - Future of Web
Mirza Asif
 
DevChatt: The Wonderful World Of Html5
DevChatt: The Wonderful World Of Html5
Cameron Kilgore
 
HTML5 Introduction
HTML5 Introduction
beforeach
 
Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta
Commit University
 
HTML5: An Overview
HTML5: An Overview
Nagendra Um
 
HTML5 Technical Executive Summary
HTML5 Technical Executive Summary
Gilad Khen
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
Tilak Joshi
 
Html5(2)
Html5(2)
Carol Maughan
 
Html5(2)
Html5(2)
CMaughan
 
Html5 Future of WEB
Html5 Future of WEB
Amit Choudhary
 
HTML 5
HTML 5
Karthik Madhavan
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
Tilak Joshi
 
HTML5 introduction for beginners
HTML5 introduction for beginners
Vineeth N Krishnan
 
A brief introduction on HTML5 and responsive layouts
A brief introduction on HTML5 and responsive layouts
Tim Wray
 
HTML5 and CSS3 refresher
HTML5 and CSS3 refresher
Ivano Malavolta
 
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
Mobile Web Applications using HTML5 [IndicThreads Mobile Application Develop...
IndicThreads
 
Html5 workshop part 1
Html5 workshop part 1
NAILBITER
 
Speak the Web 15.02.2010
Speak the Web 15.02.2010
Patrick Lauke
 
HTML5 features & JavaScript APIs
HTML5 features & JavaScript APIs
Fisnik Doko
 
HTML5 - Future of Web
HTML5 - Future of Web
Mirza Asif
 
DevChatt: The Wonderful World Of Html5
DevChatt: The Wonderful World Of Html5
Cameron Kilgore
 
HTML5 Introduction
HTML5 Introduction
beforeach
 
Workshop HTML5+PhoneGap by Ivano Malavolta
Workshop HTML5+PhoneGap by Ivano Malavolta
Commit University
 
HTML5: An Overview
HTML5: An Overview
Nagendra Um
 
HTML5 Technical Executive Summary
HTML5 Technical Executive Summary
Gilad Khen
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
Tilak Joshi
 
HTML5: An Introduction To Next Generation Web Development
HTML5: An Introduction To Next Generation Web Development
Tilak Joshi
 
HTML5 introduction for beginners
HTML5 introduction for beginners
Vineeth N Krishnan
 
A brief introduction on HTML5 and responsive layouts
A brief introduction on HTML5 and responsive layouts
Tim Wray
 
HTML5 and CSS3 refresher
HTML5 and CSS3 refresher
Ivano Malavolta
 
Ad

More from Romin Irani (14)

Google Cloud Platform Update - NEXT 2017
Google Cloud Platform Update - NEXT 2017
Romin Irani
 
Introduction to Google Cloud Machine Learning APIs
Introduction to Google Cloud Machine Learning APIs
Romin Irani
 
The Journey to conversational interfaces
The Journey to conversational interfaces
Romin Irani
 
Blogging Tips - A guide to why you should blog
Blogging Tips - A guide to why you should blog
Romin Irani
 
How to Contribute to your Project
How to Contribute to your Project
Romin Irani
 
Go Language Hands-on Workshop Material
Go Language Hands-on Workshop Material
Romin Irani
 
Google Cloud Platform Updates
Google Cloud Platform Updates
Romin Irani
 
Internet of Things Overview
Internet of Things Overview
Romin Irani
 
Gradle and Android Studio : Best of Friends
Gradle and Android Studio : Best of Friends
Romin Irani
 
Powering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud Platform
Romin Irani
 
How to get business ready for Wearables: GDayX Mumbai 2014
How to get business ready for Wearables: GDayX Mumbai 2014
Romin Irani
 
Talk on Future of Enterprise Mobile App Development
Talk on Future of Enterprise Mobile App Development
Romin Irani
 
Android developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftware
Romin Irani
 
Smart Computing : Cloud + Mobile + Social
Smart Computing : Cloud + Mobile + Social
Romin Irani
 
Google Cloud Platform Update - NEXT 2017
Google Cloud Platform Update - NEXT 2017
Romin Irani
 
Introduction to Google Cloud Machine Learning APIs
Introduction to Google Cloud Machine Learning APIs
Romin Irani
 
The Journey to conversational interfaces
The Journey to conversational interfaces
Romin Irani
 
Blogging Tips - A guide to why you should blog
Blogging Tips - A guide to why you should blog
Romin Irani
 
How to Contribute to your Project
How to Contribute to your Project
Romin Irani
 
Go Language Hands-on Workshop Material
Go Language Hands-on Workshop Material
Romin Irani
 
Google Cloud Platform Updates
Google Cloud Platform Updates
Romin Irani
 
Internet of Things Overview
Internet of Things Overview
Romin Irani
 
Gradle and Android Studio : Best of Friends
Gradle and Android Studio : Best of Friends
Romin Irani
 
Powering your Apps via Google Cloud Platform
Powering your Apps via Google Cloud Platform
Romin Irani
 
How to get business ready for Wearables: GDayX Mumbai 2014
How to get business ready for Wearables: GDayX Mumbai 2014
Romin Irani
 
Talk on Future of Enterprise Mobile App Development
Talk on Future of Enterprise Mobile App Development
Romin Irani
 
Android developer webinar-march-2012-mindstormsoftware
Android developer webinar-march-2012-mindstormsoftware
Romin Irani
 
Smart Computing : Cloud + Mobile + Social
Smart Computing : Cloud + Mobile + Social
Romin Irani
 

Recently uploaded (20)

FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
 
"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
 
Connecting Data and Intelligence: The Role of FME in Machine Learning
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
cnc-processing-centers-centateq-p-110-en.pdf
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
FIDO Alliance
 
Techniques for Automatic Device Identification and Network Assignment.pdf
Techniques for Automatic Device Identification and Network Assignment.pdf
Priyanka Aash
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
Powering Multi-Page Web Applications Using Flow Apps and FME Data Streaming
Powering Multi-Page Web Applications Using Flow Apps and FME Data Streaming
Safe Software
 
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance Seminar State of Passkeys.pptx
FIDO Alliance
 
MuleSoft for AgentForce : Topic Center and API Catalog
MuleSoft for AgentForce : Topic Center and API Catalog
shyamraj55
 
"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
 
Connecting Data and Intelligence: The Role of FME in Machine Learning
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
cnc-processing-centers-centateq-p-110-en.pdf
cnc-processing-centers-centateq-p-110-en.pdf
AmirStern2
 
You are not excused! How to avoid security blind spots on the way to production
You are not excused! How to avoid security blind spots on the way to production
Michele Leroux Bustamante
 
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
FIDO Seminar: Perspectives on Passkeys & Consumer Adoption.pptx
FIDO Alliance
 
Techniques for Automatic Device Identification and Network Assignment.pdf
Techniques for Automatic Device Identification and Network Assignment.pdf
Priyanka Aash
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
OpenPOWER Foundation & Open-Source Core Innovations
OpenPOWER Foundation & Open-Source Core Innovations
IBM
 
2025_06_18 - OpenMetadata Community Meeting.pdf
2025_06_18 - OpenMetadata Community Meeting.pdf
OpenMetadata
 
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
War_And_Cyber_3_Years_Of_Struggle_And_Lessons_For_Global_Security.pdf
biswajitbanerjee38
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
Tech-ASan: Two-stage check for Address Sanitizer - Yixuan Cao.pdf
caoyixuan2019
 
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Seminar: Targeting Trust: The Future of Identity in the Workforce.pptx
FIDO Alliance
 
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Seminar: New Data: Passkey Adoption in the Workforce.pptx
FIDO Alliance
 
Powering Multi-Page Web Applications Using Flow Apps and FME Data Streaming
Powering Multi-Page Web Applications Using Flow Apps and FME Data Streaming
Safe Software
 

Thadomal IEEE-HTML5-Workshop

  • 1.  
  • 2. Name : Romin Irani Official Title : Principal Architect @ Xoriant Unofficial Title : Jack Of All Trades Vital Stats : Mobile Applications Cloud Web APIs Writer & Reviewer for various publications from Wrox, O’Reilly & Addison Wesley Freelance writer covering Web 2.0 APIs at ProgrammableWeb ( http://programmableweb.com )
  • 3. HTML5 – A Brief History HTML5 Browser Support HTML5 Features/Demos/HandsOn The Road Ahead
  • 4. WHAT : Next generation HTML WHO : WHATG, W3C, IETF WHEN : 2004, 2008, July 2014 All vendors support it ! (Is that true?)
  • 5. Semantics Graphics Multimedia Device Access Offline Connectivity Performance/Integration CSS3
  • 6. Keep it simple (Example doctype) Structural meaning Richer Set of Tags Eliminated Several Tags too
  • 7. <header> <nav> <section> <article> <footer> <aside>
  • 8. Aims to make development and usage of forms easier. 13 New Types introduced for user input. Additional attributes like : placeholder , required , autofocus. Coding for validations is made easier. Support varies across browsers but is compatible.
  • 9. Input Types email phone url date, datetime, month, week, time, datetime-local) color search number and range
  • 10. <input type=“email” placeholder=“Enter email address” required autofocus/> <input type=“phone”/> <input type=“search” placeholder=“Type your search here”/> <input type=“url” /> <input type=“date” />
  • 11. Screenshots : Courtesy – Mark Pilgrim, http://diveintohtml5.org
  • 12. Canvas API SVG WebGL CSS3 3D
  • 13. 2D Drawing API Functions : line, arcs, rectangle, fills Allows styling via CSS Allows control via Javascript Can be used for: Charts, Animation, Images and other complex rendering.
  • 14. Audio and video are first class citizens in the HTML5 web A plug-in free world
  • 15. Simple tags : <video>, <audio> Even Simpler usage: <video src=“demo.mp4”></video> <audio src=“song.mp3”></audio> Control via APIs Play Pause Stop
  • 16. Different browsers support different containers and Audio/Video formats. Containers : H264 and Ogg Codecs: Audio : AAC, MP3, Vorbis Video: H264, VP8, Thedora
  • 17. Need to provide more than 1 format. Browser will play the one that it supports. This situation is not likely to change. <video controls>   <source src=&quot;mov1.ogg&quot; type=&quot;video/ogg&quot; />   <source src=&quot;mov2.mp4&quot; type=&quot;video/mp4&quot; /> </video>
  • 18. Currently - Geolocation API Coming soon Audio/Video input access to microphones and cameras Local data such as contacts & events, and even tilt orientation.
  • 19. Determine where the device is. Find it right in the browser. Useful for providing location based services. User should be allowed to opt in. API allows for both : one time location and continuous location.
  • 20. n avigator.geolocation.getCurrentPosition (showCurrentLocation, errorHandler, {enableHighAccuracy: true}); function showCurrentLocation(position){ //position.coords.latitude //position.coords.longitude; }
  • 21. Web Apps can start faster and work even if there is no internet connection, thanks to the HTML5 App Cache, as well as the Local Storage, Indexed DB, and the File API specifications.
  • 22. Allows local storage of application data on the device. 5MB per domain. Key component to Offline usage. Types of Storage options:
  • 23. S imple API for storing values in easily retrievable JavaScript objects which persist across page loads window.localStorage getItem(key) setItem(key,value)
  • 24. interface Storage { readonly attribute unsigned long length ; getter DOMString key (in unsigned long index); getter any getItem (in DOMString key); setter creator void setItem (in DOMString key, in any data); deleter void removeItem (in DOMString key); void clear (); };
  • 25. Network is not available all the time. The application must be available even if the server is done. Application Cache to the rescue. Stores the specified resources (HTML,CSS,JS) on the client. Combine Application Cache with Offline Storage to provide availability.
  • 26. 3 Steps to implementing AppCache Define manifest CACHE + NETWORK + FALLBACK Reference manifest Specify right manifest MIME Type in Server Demo
  • 27. Performance & Integration Web Workers , XMLHttpRequest 2 CONNECTIVITY : WEB SOCKETS CSS3 IndexedDB
  • 28. Indic Mobile Conference application Mobile Web application Works well with Webkit browsers Lets go !
  • 29. Drag and Drop Content Editable Audio / Video CSS 3
  • 30. Differing browser support & behaviour Use sites like HTML5Test.com, CanIUse.com to understand Browser support for HTML5 Fallback behaviour is important Great time to get started today! Be prepared for changes All vendors are supporting it
  • 31.  
  • 32. W3C : http://dev.w3.org/html5/spec/Overview.html HTML5 Rocks: http://www.html5rocks.com Mark Pilgrim : http://diveintohtml5.org Remy Sharp : http://html5demos.com HTML5 Tech Spec : http://developers.whatwg.org Modernizr : http://www.modernizr.com/ Caniuse : http://www.caniuse.com HTML5Test : http://www.html5test.com https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills
  • 33. Q & A romin.k.irani @ gmail.com iRomin

Editor's Notes

  • #5: IE9 Beta has started supporting some parts HTML5 Guiding Principles: Compatibility : Utility : Interoperability: Universal Access : Languages support, Abilities Simplicity : Simpler DOCTYPE, Meta Tags. Plugin Free paradigm : Flash
  • #8: New Elements that bring structure to your documents. These elements are based on studies conducted looking at the markups from thousands of sites. E.g. Most people have a “nav” class to indicate navigation, so why not have a “nav” tag.
  • #10: Normal form elements are still available like checkbox, text, button, radiobutton, password, textarea
  • #11: Mention that browsers render it differently. For e.g. in the Safari Mobile browser, if the input type is phone, then only a numeric keypad is shown.
  • #12: Mention that browsers render it differently. For e.g. in the Safari Mobile browser, if the input type is phone, then only a numeric keypad is shown.
  • #14: Previously possible with Flash, VML, Silverlight Very complex to do in JavaScript without plugins (for example, rounded corners or diagonal lines) Provide native drawing functionality on the Web Completely integrated into HTML5 documents (part of DOM) Can be styled with CSS Can be controlled with JavaScript
  • #16: &lt;Video&gt; element dissection Supports fallback Autoplay Preload Controls Poster Height and Width Src
  • #21: navigator.geolocation getCurrentPosition watchPosition Both the methods take same parameters success function error function options
  • #23: Allows application to store data locally on the device. Good for speeding up applications, avoiding repeated server side calls and also to provide different views locally.
  • #24: Allows application to store data locally on the device. Good for speeding up applications, avoiding repeated server side calls and also to provide different views locally.
  • #25: Allows application to store data locally on the device. Good for speeding up applications, avoiding repeated server side calls and also to provide different views locally.
  • #26: Native applicatons have a big advantage of being installed on the device and available if network is not possible. Yes – not all functionality can be available but the user can use the application. Mobile applications if they want to be touted as good as native apps must support offline availability.
  • #27: navigator.on/off events are only supported by few browsers : Firefox, Opera, IE
  • #28: Make your Web Apps and dynamic web content faster with a variety of techniques and technologies such as Web Workers and XMLHttpRequest 2. No user should ever wait on your watch. More efficient connectivity means more real-time chats, faster games, and better communication. Web Sockets and Server-Sent Events are pushing (pun intended) CSS3 delivers a wide range of stylization and effects, enhancing the web app without sacrificing your semantic structure or performance. Additionally Web Open Font Format (WOFF) provides typographic flexibility and control far beyond anything the web has offered before. data between client and server more efficiently than ever before.