SlideShare uma empresa Scribd logo
1 de 75
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

Mais conteúdo relacionado

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

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 DesignFawzia Essa
 
User interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutionsUser interface-ui-training-by-ruchiwebsolutions
User interface-ui-training-by-ruchiwebsolutionsphp2ranjan
 
User interface ui training hyderabad
User interface ui training hyderabadUser interface ui training hyderabad
User interface ui training hyderabadRuchiwebsolutions
 
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 DevelopmentDaryll Chu
 
High quality Front-End
High quality Front-EndHigh quality Front-End
High quality Front-EndDavid 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 HBaseHBaseCon
 
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.0Dinis 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 DevelopmentEvan 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 UpdatePatrick 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_presentationnoelportilloj
 
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 WebEmily Lewis
 
Developing accessible experiences - Alison Walden
Developing accessible experiences - Alison WaldenDeveloping accessible experiences - Alison Walden
Developing accessible experiences - Alison WaldenWeb à 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 & CSS3Darren Wood
 
Accessibility - A feature you can build
Accessibility - A feature you can buildAccessibility - A feature you can build
Accessibility - A feature you can buildMonika Piotrowicz
 

Semelhante a 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
 

Mais de Raj Lal

Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0Teamcalendar.AI presskit 1.0
Teamcalendar.AI presskit 1.0Raj 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 experienceRaj 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 optimizationRaj 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 fishermanRaj 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 - @iRajLalRaj Lal
 
Html5 Whats around the bend
Html5 Whats around the bendHtml5 Whats around the bend
Html5 Whats around the bendRaj 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 @iRajLalRaj 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 @iRajLalRaj Lal
 
Honeycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLalHoneycomb User Interface Design @iRajLal
Honeycomb User Interface Design @iRajLalRaj Lal
 
Two thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLalTwo thumbs User Interface @iRajLal
Two thumbs User Interface @iRajLalRaj 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 @iRajLalRaj 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
 

Mais de 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...
 

Último

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 

Último (20)

2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 

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

Notas do Editor

  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.