SlideShare a Scribd company logo
Upgrade Your Website to HTML5

                             Raj Lal
                  Senior Engineer, Nokia
                         Level: Intermediate
Story of a
Web Guy
Story of a Web Guy




  About      Tools   Upgrade
1. About




              About
           Requirements
             Concerns
About the Web Guy

1.   Develop & design websites

2.   Manage multiple websites

3.   Knows Web stuff
Web Stuff
                               <T AB L E >

                 CS S            S il e r l h t
                                    v     ig      a ja x
                                                  Cl n t
                                                   ie      Se r ve r
     Va l a t io n
        id            c o o k ie s
                      RI A                                    P l g - in s
                                                                u

   HT M L 4    H T M L w id g e t s                           Br o w s e r w ar s
                     s an d b o x     jq u e r y
                                                   X HT M L       f l sh
                                                                    a
   w e b 2 .0
                             M e d ia p l y e r
              We b a p p l a t io n
                         ic
                                        a
                                                                 AS P / P HP
                                J a v a S c r ip t
Web 2.0

           Web
           Application

Old HTML
HTML5
                         Web 2.0
           Web
           Application
Old HTML
HTML5
                      Of f l ein
            S t o r a g eAp p C a c h T h r e a d s
                                      e
   We b    worke r

           id
                 C a n v a s An im a t io n AP I s
 HT M L Va l a t io n                         P l g - in s
                                                u
                    v ie w p o r t
         a r t ic l
                  e                  CS S 3          W3 C
 Au d io / v id e o                   We b s o c k e t       T r a n s it io n
                                              Cr o s s b r o w s e r
    w e b d b S VG
                         We b Ap p          @ f o n t -f ac e

                         Ge o l c a t io n
                              o
How do I upgrade?
Requirements

1.   User Experience

2.   Availability

3.   Accessibility

4.   Cutting edge
Concerns

 1.   How do I upgrade to HTML5

 2.   New Website ?

 3.   Compatibility with old website?

 4.   Break existing websites ?
2. Tools




           Information
              Tools
2. Tools
Tools 1: Progressive Enhancement
Tools 2: Understand CSS


     1. CSS is parsed sequentially
     2. The last style is the final style
     3. Browser ignore unknown syntax
Tools 2: Understand CSS

   .style
   {
    background-color: rgb(100,214,120)
    background-color: rgba(100,214,120, .5)
   }
Tools 2: Understand CSS

    Advanced Styles with CSS3
     •   Background
     •   Border Radius
     •   Drag and Drop
     •   Opacity
     •   Transformation
     •   …
Tools 2: Understand CSS


  Prefix
  •-ms-
  •-moz-
  •-o-
  •-webkit-
Tools 2: Understand CSS

    .style
    {
    -moz-border-radius: 1em;
    -ms-border-radius: 1em;
    -o-border-radius: 1em;
    -webkit-border-radius: 1em;
    border-radius: 1em;
    }
Tools 2: Understand CSS
 HTML                            CSS
                 #style
                 {
                 Width:800px;
<body>           Height:640px;
<div             }
id=“enhanced”
class=“Style”>   Body [id=enhanced] #style
</div>           {
</body>          Width:100%;
                 Height:640px;
                 }
Tools 3: Feature Detection




     Old method   New method
Tools 3: Feature Detection
Tools 3: Feature Detection

 Use libraries
 • Modernizr
 • jQuery.support
Tools 3: Feature Detection


<script src="modernizr-1.7.js“/>
Modernizr.canvas ? "Canvas" : “Nocanvas";

<script src="jquery-latest.js“/>
jQuery.support.ajax ? "Ajax" : “No Ajax";
Tools 3: Feature Detection
Modernizr
Canvas           SVG             Cross Window Msg
Audio            InlineSVG       Web Workers
Video            WebGL           Web SQL database
Animation        Websockets      Touch
Transformation   Geolocation
Drag and Drop    Local Storage
Tools 3: Feature Detection

    jQuery.Support
    Ajax
    Cross Domain Resource Sharing (CORS)
    Fixed Position
    CSS Opacity
    CSS Float
    htmlNormalize
Tools 3: Feature Detection



  http://widgets-gadgets.com/html5/


              Demo
3. Upgrade




             Upgrade
Requirements of Web Guy

1.   Better User Experience

2.   Available Everywhere

3.   Make it Accessible

4.   Cutting edge Graphics and Animation
Upgrade 1:
Deliver Richer UX
1: Deliver Richer UX

  I.    Enhance you Homepage

  II.   Add Media
Rich UX to Homepage

       What is common?

        http://micrsoft.com

        http://amazon.com

        http://linkedin.com
Answer: Slideshow
Upgrade 1: Add a slideshow




    Responsive CSS3 Slider
        By Ian Hansson
Upgrade 1: Add a slideshow

HTML

<input type="radio" name="slider"
id="slide1">
<input type="radio" name="slider"
id="slide2">



                      Ian Hansson (@teapoted)
Upgrade 1: Add a slideshow

 HTML

<div id=‘s’>
<div class="inner">

<article><div class="info"></div>
</article>

<article><div class="info"></div>
</article>

</div></div>
Upgrade 1: Add a slideshow

    CSS

#s .inner { width: 200%; }
#s article {width: 50%;float: left;}

#slide1:checked   s.inner{ margin-left:0; }
#slide2:checked   s.inner{ margin-
left:-100%;}

                          Ian Hansson (@teapoted)
UP 2: Rich UX with Media
Upgrade 2:
Available Everywhere
Upgrade 2: Availability

I.       To all devices
     –    PC

     –    TV

     –    Mobile

     –    Tablet

•        All Screen size
All Devices: Layout Detection
        OPTIONS AVAILABLE
Layout Detection: Media Queries


Media-queries enable style sheets tailored for
different ’width’, ‘height’ and ‘color’
Layout Detection: Media Queries


<link rel="stylesheet" href="handheld.css"
media="only screen and (max-width: 480px),
handheld" />

<link rel="stylesheet" href="default.css"
media="screen" />

<link rel="stylesheet" href="wider.css"
media="only screen and (min-width: 1200px)" />
Layout Detection: Media Queries




handheld Default screen   Wider screen

        http://www.lancs.ac.uk/
Layout Detection: Media Queries

Media Query for device-aspect-ratio
@media screen and (device-aspect-ratio: 16/9)
@media screen and (device-aspect-ratio: 32/18)
@media screen and (device-aspect-ratio: 1280/720)
@media screen and (device-aspect-ratio: 2560/1440)
Layout Detection: Media Queries

 Media Query for Orientation

@media screen and (orientation:portrait) {
  /* Portrait styles */
}
@media screen and (orientation:landscape) {
  /* Landscape styles */
}
Layout Detection: ViewPort

Viewable area on the screen

<meta name="viewport" content="width=device-width,
initial-scale=1, maximum-scale=1">
Layout Detection: JavaScript

  jQuery.mediaqueries

 The script adds basic Media Query-Support (min-
 width and max-width in px units ) to all browsers

<script src="jquery.mediaqueries.js“>
</script>
Upgrade 3:
Make it Accessible
UP 3: Accessibility: Easier to Use

                            Search
                            Engines
              Limited
              Resources
Helps
Disabled
UP 3: Accessibility: Easier to Use


4 Key Areas for HTML5 Developers

    •   Hearing
    •   Mobility
    •   Cognitive
    •   Visual
UP 3: Accessibility: Easier to Use


W3C recommends POUR Principle

    •   Perceivable
    •   Operable
    •   Understandable
    •   Robust
UP 3: Accessibility: Easier to Use

1/4 Hearing

    •   Problem
        Cannot hear media
    •Solution
        Make it PERCEIVABLE
UP 3: Accessibility: Easier to Use

1/4 Hearing


PERCEIVABLE
   • Text alternative to all non-text content

   • Alternative for media using, subtitles,
     transcribed text

   • Semantic Markup with separation of, Style &
     Content
UP 3: Accessibility: Easier to Use


2/4 Mobility

    •   Problem
        Difficulty with Mouse
        Keyboard

    •Solution
       Make it OPERABLE
UP 3: Accessibility: Easier to Use
2/4 Mobility

OPERABLE
•All function accessible from keyboard alone

•No auto refresh, allow stop time based contents

•Navigate with proper use of Headings & Anchors

•Joysticks ,Voice recognition or audio feedback
UP 3: Accessibility: Easier to Use

3/4 Cognitive

    •   Problem
        Difficulty with Text content

    • Solution
        Make it UNDERSTANDABLE
UP 3: Accessibility: Easier to Use
MAKE IT UNDERSTANDABLE
  • High contrast between front and background

  • Allow san serif fonts and custom resizable font size

  • Avoid auto-play animation, auto refresh, flashy
    images

  • Important info, error not by color only

  • Use multiple visual cues, std. icons,
UP 3: Accessibility: Easier to Use

4/4 Visual

    •   Problem
        Cannot see the content
        Differentiate color
    • Solution
        Make it ROBUST
4/4 Visual
ROBUST
 • Broken HTML tag cause difficulty in screen reader

 • Follow HTML standard specifications

 • Use syntactically correct HTML & validate web page

 • Proper “lang” attributes in the markup

 • Use “acronym” and “abbr” tag with proper usage
UP 3: Accessibility: Easier to Use
Use Semantic Markup
UP 3: Accessibility: Easier to Use
Use HTML5 Elements

       ARIA Roles

       <nav role=”navigation”>

       CSS: No Fixed Font size
Upgrade 4:
Cutting Edge
UPGRADE 4: Cutting Edge

I.        Advanced graphics and animation

II.       HTML5 APIs
      –    Geolocation

      –    Communication APIs

      –    Web Socket

      –    Etc.
Requirement 4 : CSS3 Animation
Animation: SVG

•   2D vector graphics using XML
•   Object retained in the memory
•   Full DOM support
•   SVG elements can be styled
•   Check Modernizr.svg Modernizr.inlinesvg

Perform better when smaller
number of elements and large surface
HTML CODE                Animation: SVG
<svg id="svgElement"
width="800px" height="600px"
viewBox="0 0 800 600">

<rect x="0" y="0" width="100%"
  height="100%" rx="10" ry="10"
  style="fill: white; stroke:
black;" />

<circle id="circle0" cx="40"
cy="40" r="40" style="fill:
orange; stroke: black; stroke-
width: 1;" />
</svg>
Animation: Canvas: Context 2D

•   Bitmap drawing area
•   Rectangles, lines, arcs, paths
•   Stateless
•   No DOM support, single element
•   Check Modernizr.canvas

Perform better when large number of objects and
  surface is small
Animation: CSS3

•   Styles for Individual elements
•   Use CSS3 animation if available
•   Better than JavaScript based animation
•   Check Modernizr.csstransitions

Can perform better with GPU acceleration
Animation: CSS3
var elem = $(‘myelement');    JS CODE

elem.addEventListener('click',
function loop() {
elem.style.left = ‘100px';}, false);


#myelement                     CSS
{
…
-ms-transition: opacity 1s ease;
transition: opacity 1s ease;
}
Advanced HTML5 APIs
HTML5 API: Polyfills and Shims?

  Provide support for missing features.

  • Polyfills: Replicate standard feature API

  • Shims: Own API with useful features
Summary

• Upgrade to a Rich User Experience
  • Adding slideshow, rich media and advanced css
• Available to All devices
  • Using Viewport, MediaQueries, Orientations
• Upgrade to accessible Website
  • Ensuring 4 key accessible areas

• Upgrade to CSS3 Animation & Adv. HTML5 APIs
Thank You




            Raj Lal
 Senior Engineer, Nokia
         Twitter @ iRajLal

More Related Content

Similar to Upgrade Your Website to HTML5 - VSLive Conference New York @iRajLal

We are Digital Puppets
We are Digital PuppetsWe are Digital Puppets
We are Digital Puppets
Secpro - Security Professionals
 
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your design
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your designSCREENS - 2012-09-28 - Responsive Web Design, get the best from your design
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your designFrédéric Harper
 
HTML5, CSS3 & Responsive Design
HTML5, CSS3 & Responsive DesignHTML5, CSS3 & Responsive Design
HTML5, CSS3 & Responsive Design
Fawzia Essa
 
User interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutionsUser interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutions
php2ranjan
 
User interface ui training hyderabad
User interface ui training hyderabadUser interface ui training hyderabad
User interface ui training hyderabad
Ruchiwebsolutions
 
Implementing Acessibility in Liferay 6.1
Implementing Acessibility in Liferay 6.1Implementing Acessibility in Liferay 6.1
Implementing Acessibility in Liferay 6.1Julio Camarero
 
Curtin University Frontend Web Development
Curtin University Frontend Web DevelopmentCurtin University Frontend Web Development
Curtin University Frontend Web Development
Daryll Chu
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-End
David Simons
 
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBaseHBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon
 
New Era of Software with modern Application Security v1.0
New Era of Software with modern Application Security v1.0New Era of Software with modern Application Security v1.0
New Era of Software with modern Application Security v1.0
Dinis Cruz
 
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to DevelopmentWordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
Evan Mullins
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social Update
Patrick Chanezon
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
Denise Jacobs
 
Portillo josue mobile_presentation
Portillo josue mobile_presentationPortillo josue mobile_presentation
Portillo josue mobile_presentation
noelportilloj
 
Microformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic WebMicroformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic Web
Emily Lewis
 
Developing accessible experiences - Alison Walden
Developing accessible experiences - Alison WaldenDeveloping accessible experiences - Alison Walden
Developing accessible experiences - Alison Walden
Web à Québec
 
The DiSo Project and the Open Web
The DiSo Project and the Open WebThe DiSo Project and the Open Web
The DiSo Project and the Open WebChris Messina
 
A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3
Darren Wood
 
Accessibility - A feature you can build
Accessibility - A feature you can buildAccessibility - A feature you can build
Accessibility - A feature you can build
Monika Piotrowicz
 

Similar to Upgrade Your Website to HTML5 - VSLive Conference New York @iRajLal (20)

We are Digital Puppets
We are Digital PuppetsWe are Digital Puppets
We are Digital Puppets
 
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your design
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your designSCREENS - 2012-09-28 - Responsive Web Design, get the best from your design
SCREENS - 2012-09-28 - Responsive Web Design, get the best from your design
 
HTML5, CSS3 & Responsive Design
HTML5, CSS3 & Responsive DesignHTML5, CSS3 & Responsive Design
HTML5, CSS3 & Responsive Design
 
User interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutionsUser interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutions
 
User interface ui training hyderabad
User interface ui training hyderabadUser interface ui training hyderabad
User interface ui training hyderabad
 
Implementing Acessibility in Liferay 6.1
Implementing Acessibility in Liferay 6.1Implementing Acessibility in Liferay 6.1
Implementing Acessibility in Liferay 6.1
 
Walter api
Walter apiWalter api
Walter api
 
Curtin University Frontend Web Development
Curtin University Frontend Web DevelopmentCurtin University Frontend Web Development
Curtin University Frontend Web Development
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-End
 
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBaseHBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
HBaseCon 2015: S2Graph - A Large-scale Graph Database with HBase
 
New Era of Software with modern Application Security v1.0
New Era of Software with modern Application Security v1.0New Era of Software with modern Application Security v1.0
New Era of Software with modern Application Security v1.0
 
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to DevelopmentWordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
WordCamp Greenville 2018 - Beware the Dark Side, or an Intro to Development
 
Goodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social UpdateGoodle Developer Days Munich 2008 - Open Social Update
Goodle Developer Days Munich 2008 - Open Social Update
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
 
Portillo josue mobile_presentation
Portillo josue mobile_presentationPortillo josue mobile_presentation
Portillo josue mobile_presentation
 
Microformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic WebMicroformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic Web
 
Developing accessible experiences - Alison Walden
Developing accessible experiences - Alison WaldenDeveloping accessible experiences - Alison Walden
Developing accessible experiences - Alison Walden
 
The DiSo Project and the Open Web
The DiSo Project and the Open WebThe DiSo Project and the Open Web
The DiSo Project and the Open Web
 
A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3
 
Accessibility - A feature you can build
Accessibility - A feature you can buildAccessibility - A feature you can build
Accessibility - A feature you can build
 

More from Raj Lal

Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0
Raj Lal
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experience
Raj Lal
 
Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization  Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization
Raj Lal
 
The art and science of website optimization
The art and science of website optimizationThe art and science of website optimization
The art and science of website optimization
Raj Lal
 
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
Raj Lal
 
Why Toastmasters - The story of a fisherman
Why Toastmasters - The story of a fishermanWhy Toastmasters - The story of a fisherman
Why Toastmasters - The story of a fisherman
Raj Lal
 
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
Raj Lal
 
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
Raj Lal
 
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLalDesigning Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
Raj Lal
 
Html5 Whats around the bend
Html5 Whats around the bendHtml5 Whats around the bend
Html5 Whats around the bend
Raj Lal
 
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
Raj Lal
 
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
Raj Lal
 
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
Raj Lal
 
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
Raj Lal
 
Developing Apps for Nokia Windows Phone VSLiv Conference May 15, 2012 @iRajLal
Developing Apps for Nokia Windows Phone  VSLiv Conference May 15, 2012 @iRajLalDeveloping Apps for Nokia Windows Phone  VSLiv Conference May 15, 2012 @iRajLal
Developing Apps for Nokia Windows Phone VSLiv Conference May 15, 2012 @iRajLal
Raj Lal
 
Fun with silverlight4 Table of Content @iRajLal
Fun with silverlight4 Table of Content @iRajLalFun with silverlight4 Table of Content @iRajLal
Fun with silverlight4 Table of Content @iRajLal
Raj Lal
 
Honeycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLalHoneycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLal
Raj Lal
 
Two thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLalTwo thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLal
Raj Lal
 
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLalAngry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
Raj Lal
 
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
Raj Lal
 

More from Raj Lal (20)

Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0
 
UX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experienceUX Workshop: How to design a product with great user experience
UX Workshop: How to design a product with great user experience
 
Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization  Workshop Stanford University - 28th July 2018 on Website Optimization
Workshop Stanford University - 28th July 2018 on Website Optimization
 
The art and science of website optimization
The art and science of website optimizationThe art and science of website optimization
The art and science of website optimization
 
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
UX Workshop - Talent 2 Talent Conference, Ryerson University, Toronto Canada,...
 
Why Toastmasters - The story of a fisherman
Why Toastmasters - The story of a fishermanWhy Toastmasters - The story of a fisherman
Why Toastmasters - The story of a fisherman
 
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
Build Amazing Camera Apps for Superphones - Silicon Valley Code Camp, 6 Oct, ...
 
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
Evolution of User Interface - Digital Web & Design Innovation Summit SFO 20 S...
 
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLalDesigning Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
Designing Killer Apps for Mobile Devices ModevUX May 9 2013 mclean VA - @iRajLal
 
Html5 Whats around the bend
Html5 Whats around the bendHtml5 Whats around the bend
Html5 Whats around the bend
 
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
Accessible design with html5 JS Everywhere 2012 Oct 26 Fairmont Hotel San Jos...
 
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
Accessibility on Windows Phone - Windows Phone Meetup at Nokia - 16 October @...
 
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
Accessible design - HOW Interactive Design Conference Washington DC SEPT 27-2...
 
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
Accessible Design with HTML5 - HTML5DevConf.com May 21st San Francisco, 2012 ...
 
Developing Apps for Nokia Windows Phone VSLiv Conference May 15, 2012 @iRajLal
Developing Apps for Nokia Windows Phone  VSLiv Conference May 15, 2012 @iRajLalDeveloping Apps for Nokia Windows Phone  VSLiv Conference May 15, 2012 @iRajLal
Developing Apps for Nokia Windows Phone VSLiv Conference May 15, 2012 @iRajLal
 
Fun with silverlight4 Table of Content @iRajLal
Fun with silverlight4 Table of Content @iRajLalFun with silverlight4 Table of Content @iRajLal
Fun with silverlight4 Table of Content @iRajLal
 
Honeycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLalHoneycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLal
 
Two thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLalTwo thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLal
 
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLalAngry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
Angry Developer: Creating a Game in QML and JavaScript for MeeGo N9 @iRajLal
 
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
Fun with QML and JavaScript: Embedded Linux Conference 11th April 2011, Hotel...
 

Recently uploaded

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
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
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
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
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
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
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
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
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 

Recently uploaded (20)

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
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
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
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...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
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
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 

Upgrade Your Website to HTML5 - VSLive Conference New York @iRajLal

  • 1. Upgrade Your Website to HTML5 Raj Lal Senior Engineer, Nokia Level: Intermediate
  • 3. Story of a Web Guy About Tools Upgrade
  • 4. 1. About About Requirements Concerns
  • 5. About the Web Guy 1. Develop & design websites 2. Manage multiple websites 3. Knows Web stuff
  • 6. Web Stuff <T AB L E > CS S S il e r l h t v ig a ja x Cl n t ie Se r ve r Va l a t io n id c o o k ie s RI A P l g - in s u HT M L 4 H T M L w id g e t s Br o w s e r w ar s s an d b o x jq u e r y X HT M L f l sh a w e b 2 .0 M e d ia p l y e r We b a p p l a t io n ic a AS P / P HP J a v a S c r ip t
  • 7. Web 2.0 Web Application Old HTML
  • 8. HTML5 Web 2.0 Web Application Old HTML
  • 9. HTML5 Of f l ein S t o r a g eAp p C a c h T h r e a d s e We b worke r id C a n v a s An im a t io n AP I s HT M L Va l a t io n P l g - in s u v ie w p o r t a r t ic l e CS S 3 W3 C Au d io / v id e o We b s o c k e t T r a n s it io n Cr o s s b r o w s e r w e b d b S VG We b Ap p @ f o n t -f ac e Ge o l c a t io n o
  • 10. How do I upgrade?
  • 11. Requirements 1. User Experience 2. Availability 3. Accessibility 4. Cutting edge
  • 12. Concerns 1. How do I upgrade to HTML5 2. New Website ? 3. Compatibility with old website? 4. Break existing websites ?
  • 13. 2. Tools Information Tools
  • 15. Tools 1: Progressive Enhancement
  • 16. Tools 2: Understand CSS 1. CSS is parsed sequentially 2. The last style is the final style 3. Browser ignore unknown syntax
  • 17. Tools 2: Understand CSS .style { background-color: rgb(100,214,120) background-color: rgba(100,214,120, .5) }
  • 18. Tools 2: Understand CSS Advanced Styles with CSS3 • Background • Border Radius • Drag and Drop • Opacity • Transformation • …
  • 19. Tools 2: Understand CSS Prefix •-ms- •-moz- •-o- •-webkit-
  • 20. Tools 2: Understand CSS .style { -moz-border-radius: 1em; -ms-border-radius: 1em; -o-border-radius: 1em; -webkit-border-radius: 1em; border-radius: 1em; }
  • 21. Tools 2: Understand CSS HTML CSS #style { Width:800px; <body> Height:640px; <div } id=“enhanced” class=“Style”> Body [id=enhanced] #style </div> { </body> Width:100%; Height:640px; }
  • 22. Tools 3: Feature Detection Old method New method
  • 23. Tools 3: Feature Detection
  • 24. Tools 3: Feature Detection Use libraries • Modernizr • jQuery.support
  • 25. Tools 3: Feature Detection <script src="modernizr-1.7.js“/> Modernizr.canvas ? "Canvas" : “Nocanvas"; <script src="jquery-latest.js“/> jQuery.support.ajax ? "Ajax" : “No Ajax";
  • 26. Tools 3: Feature Detection Modernizr Canvas SVG Cross Window Msg Audio InlineSVG Web Workers Video WebGL Web SQL database Animation Websockets Touch Transformation Geolocation Drag and Drop Local Storage
  • 27. Tools 3: Feature Detection jQuery.Support Ajax Cross Domain Resource Sharing (CORS) Fixed Position CSS Opacity CSS Float htmlNormalize
  • 28. Tools 3: Feature Detection http://widgets-gadgets.com/html5/ Demo
  • 29. 3. Upgrade Upgrade
  • 30. Requirements of Web Guy 1. Better User Experience 2. Available Everywhere 3. Make it Accessible 4. Cutting edge Graphics and Animation
  • 32. 1: Deliver Richer UX I. Enhance you Homepage II. Add Media
  • 33. Rich UX to Homepage What is common? http://micrsoft.com http://amazon.com http://linkedin.com
  • 35. Upgrade 1: Add a slideshow Responsive CSS3 Slider By Ian Hansson
  • 36. Upgrade 1: Add a slideshow HTML <input type="radio" name="slider" id="slide1"> <input type="radio" name="slider" id="slide2"> Ian Hansson (@teapoted)
  • 37. Upgrade 1: Add a slideshow HTML <div id=‘s’> <div class="inner"> <article><div class="info"></div> </article> <article><div class="info"></div> </article> </div></div>
  • 38. Upgrade 1: Add a slideshow CSS #s .inner { width: 200%; } #s article {width: 50%;float: left;} #slide1:checked s.inner{ margin-left:0; } #slide2:checked s.inner{ margin- left:-100%;} Ian Hansson (@teapoted)
  • 39. UP 2: Rich UX with Media
  • 41. Upgrade 2: Availability I. To all devices – PC – TV – Mobile – Tablet • All Screen size
  • 42. All Devices: Layout Detection OPTIONS AVAILABLE
  • 43. Layout Detection: Media Queries Media-queries enable style sheets tailored for different ’width’, ‘height’ and ‘color’
  • 44. Layout Detection: Media Queries <link rel="stylesheet" href="handheld.css" media="only screen and (max-width: 480px), handheld" /> <link rel="stylesheet" href="default.css" media="screen" /> <link rel="stylesheet" href="wider.css" media="only screen and (min-width: 1200px)" />
  • 45. Layout Detection: Media Queries handheld Default screen Wider screen http://www.lancs.ac.uk/
  • 46. Layout Detection: Media Queries Media Query for device-aspect-ratio @media screen and (device-aspect-ratio: 16/9) @media screen and (device-aspect-ratio: 32/18) @media screen and (device-aspect-ratio: 1280/720) @media screen and (device-aspect-ratio: 2560/1440)
  • 47. Layout Detection: Media Queries Media Query for Orientation @media screen and (orientation:portrait) { /* Portrait styles */ } @media screen and (orientation:landscape) { /* Landscape styles */ }
  • 48. Layout Detection: ViewPort Viewable area on the screen <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  • 49. Layout Detection: JavaScript jQuery.mediaqueries The script adds basic Media Query-Support (min- width and max-width in px units ) to all browsers <script src="jquery.mediaqueries.js“> </script>
  • 50. Upgrade 3: Make it Accessible
  • 51. UP 3: Accessibility: Easier to Use Search Engines Limited Resources Helps Disabled
  • 52. UP 3: Accessibility: Easier to Use 4 Key Areas for HTML5 Developers • Hearing • Mobility • Cognitive • Visual
  • 53. UP 3: Accessibility: Easier to Use W3C recommends POUR Principle • Perceivable • Operable • Understandable • Robust
  • 54. UP 3: Accessibility: Easier to Use 1/4 Hearing • Problem Cannot hear media •Solution Make it PERCEIVABLE
  • 55. UP 3: Accessibility: Easier to Use 1/4 Hearing PERCEIVABLE • Text alternative to all non-text content • Alternative for media using, subtitles, transcribed text • Semantic Markup with separation of, Style & Content
  • 56. UP 3: Accessibility: Easier to Use 2/4 Mobility • Problem Difficulty with Mouse Keyboard •Solution Make it OPERABLE
  • 57. UP 3: Accessibility: Easier to Use 2/4 Mobility OPERABLE •All function accessible from keyboard alone •No auto refresh, allow stop time based contents •Navigate with proper use of Headings & Anchors •Joysticks ,Voice recognition or audio feedback
  • 58. UP 3: Accessibility: Easier to Use 3/4 Cognitive • Problem Difficulty with Text content • Solution Make it UNDERSTANDABLE
  • 59. UP 3: Accessibility: Easier to Use MAKE IT UNDERSTANDABLE • High contrast between front and background • Allow san serif fonts and custom resizable font size • Avoid auto-play animation, auto refresh, flashy images • Important info, error not by color only • Use multiple visual cues, std. icons,
  • 60. UP 3: Accessibility: Easier to Use 4/4 Visual • Problem Cannot see the content Differentiate color • Solution Make it ROBUST
  • 61. 4/4 Visual ROBUST • Broken HTML tag cause difficulty in screen reader • Follow HTML standard specifications • Use syntactically correct HTML & validate web page • Proper “lang” attributes in the markup • Use “acronym” and “abbr” tag with proper usage
  • 62. UP 3: Accessibility: Easier to Use Use Semantic Markup
  • 63. UP 3: Accessibility: Easier to Use Use HTML5 Elements ARIA Roles <nav role=”navigation”> CSS: No Fixed Font size
  • 65. UPGRADE 4: Cutting Edge I. Advanced graphics and animation II. HTML5 APIs – Geolocation – Communication APIs – Web Socket – Etc.
  • 66. Requirement 4 : CSS3 Animation
  • 67. Animation: SVG • 2D vector graphics using XML • Object retained in the memory • Full DOM support • SVG elements can be styled • Check Modernizr.svg Modernizr.inlinesvg Perform better when smaller number of elements and large surface
  • 68. HTML CODE Animation: SVG <svg id="svgElement" width="800px" height="600px" viewBox="0 0 800 600"> <rect x="0" y="0" width="100%" height="100%" rx="10" ry="10" style="fill: white; stroke: black;" /> <circle id="circle0" cx="40" cy="40" r="40" style="fill: orange; stroke: black; stroke- width: 1;" /> </svg>
  • 69. Animation: Canvas: Context 2D • Bitmap drawing area • Rectangles, lines, arcs, paths • Stateless • No DOM support, single element • Check Modernizr.canvas Perform better when large number of objects and surface is small
  • 70. Animation: CSS3 • Styles for Individual elements • Use CSS3 animation if available • Better than JavaScript based animation • Check Modernizr.csstransitions Can perform better with GPU acceleration
  • 71. Animation: CSS3 var elem = $(‘myelement'); JS CODE elem.addEventListener('click', function loop() { elem.style.left = ‘100px';}, false); #myelement CSS { … -ms-transition: opacity 1s ease; transition: opacity 1s ease; }
  • 73. HTML5 API: Polyfills and Shims? Provide support for missing features. • Polyfills: Replicate standard feature API • Shims: Own API with useful features
  • 74. Summary • Upgrade to a Rich User Experience • Adding slideshow, rich media and advanced css • Available to All devices • Using Viewport, MediaQueries, Orientations • Upgrade to accessible Website • Ensuring 4 key accessible areas • Upgrade to CSS3 Animation & Adv. HTML5 APIs
  • 75. Thank You Raj Lal Senior Engineer, Nokia Twitter @ iRajLal

Editor's Notes

  1. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. I am going to tell you a story about a developer, who knows web designing, even some development HTML ASP/ PHP NET a web master or even a blogger . He got involved with web pages very early , he is now web master of multiple websites, some of them he manages some them is his own website. Family wesite, personal blog, portfolio. Fantastic ! He is riding the wave of web 2.0 flash and silverlight, now he starts hearing this new thing, the solution for all problems, OMG is that possible, the funny little language which he used for validation is now getting compiled in thelcient side, there is MVP pattern in JS OMG And CSS “style” can now create 3d animations , HTML5 is like the superman from another planet, who can do everything. Or can he ?
  2. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  3. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  4. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  5. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  6. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  7. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Old School HTML Late 90’s Web Applications Y2K+ 2005+ Web 2.0
  8. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Old School HTML Late 90’s Web Applications Y2K+ 2005+ Web 2.0
  9. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. April 2010 – Steve Jobs mentioned HTML5 better than Flash January 2011- Officially the HTML5 logo was introduced
  10. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Make it available to everyone, all the time, everywhere Deliver better richer User Experience without worrying about browser support Simplify your website and make it usable, make it easy to use Make it faster to load, and reload Add cutting edge graphics, animations and effects
  11. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Do I need to create a New Website ? HTML5 compatible with old website? I don’t want to break existing websites
  12. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  13. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  14. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  15. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  16. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  17. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  18. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  19. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  20. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  21. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  22. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  23. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  24. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  25. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  26. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  27. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Least common denominator should be Content in plain HTML The next layer is the style an CSS enhancements On top of CSS should come the JavaScript behavior
  28. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  29. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved. Make it available to everyone, all the time, everywhere Deliver better richer User Experience without worrying about browser support Simplify your website and make it usable, make it easy to use Make it faster to load, and reload Add cutting edge graphics, animations and effects
  30. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  31. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  32. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  33. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  34. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  35. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  36. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  37. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  38. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  39. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  40. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  41. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  42. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  43. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  44. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  45. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  46. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  47. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  48. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  49. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  50. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  51. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  52. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  53. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  54. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  55. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  56. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  57. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  58. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  59. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  60. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  61. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  62. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  63. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  64. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  65. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  66. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  67. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  68. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  69. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  70. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  71. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  72. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  73. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.
  74. Visual Studio Live! New York 2012 © 2012 Visual Studio Live! All rights reserved.