SlideShare une entreprise Scribd logo
1  sur  45
Télécharger pour lire hors ligne
HTML5 in Real World Applications
#12NTChtml5




 Frank Livaudais
 #franklivaudais
Evaluate This Session!
Each entry is a chance to win an NTEN engraved iPad!




    or Online using #12NTChtml5 at www.nten.org/ntc/eval




                       #franklivaudais                     Slide 1
                       #12NTChtml5
HTML5




#franklivaudais   Slide 2
#12NTChtml5
Rough Timeline of Web Technologies


                 CSS 1 +                                    Tableless
HTML            JavaScript                CSS 2            Web Design          HTML 5


        1994                  1997                  2000                2005

1991              1996                    1998               2002              2009


       HTML 2                HTML 4                XHTML 1              AJAX




                                 #franklivaudais                                 Slide 3
                                 #12NTChtml5
1991 - HTML




First Web Page – Tim Berners-Lee -1991

           #franklivaudais               Slide 4
           #12NTChtml5
1994 – HTML2




AOL -1994   Apple eWorld - 1994      Amazon-1994




                   #franklivaudais                 Slide 5
                   #12NTChtml5
1996 – CSS, JavaScript




Yahoo - 1996                     AltaVista - 1996




               #franklivaudais                      Slide 6
               #12NTChtml5
1998-2001 – HTML4, CSS2




eBay- 1998                     Wikipedia- 2001




             #franklivaudais                     Slide 7
             #12NTChtml5
2000 – XHTML




Nike - 2000                       Yahoo - 2000



                #franklivaudais                  Slide 8
                #12NTChtml5
2002-2003 – Tableless Design




 Microsoft - 2002                     Dell- 2003




                    #franklivaudais                Slide 9
                    #12NTChtml5
2004-2005 – DHTML




MySpace 2004                     Facebook 2005




               #franklivaudais                   Slide 10
               #12NTChtml5
2006 - AJAX




Twitter - 2006                      iGoogle - 2006




                  #franklivaudais                    Slide 11
                  #12NTChtml5
2009-Present – HTML5




Blogger - 2009                     Good Housekeeping - Today




                 #franklivaudais                               Slide 12
                 #12NTChtml5
Mobile




ESPN                       Today
       American Airlines



       #franklivaudais             Slide 13
       #12NTChtml5
What is HTML5?




+              +      =


    #franklivaudais       Slide 14
    #12NTChtml5
New APIs and Tags




    #franklivaudais   Slide 15
    #12NTChtml5
HTML5 APIs

                       Messaging
                    Server Events
Geolocation
                                    Local Storage
   History
                                    Offline Apps




   Canvas                           Drag & Drop
Video & Audio                       Inline Editing

                     Web Sockets
                     Web Workers



                 #franklivaudais                     Slide 16
                 #12NTChtml5
Geolocation
if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(function(position) {
    var latLng = new google.maps.LatLng(
       position.coords.latitude, position.coords.longitude);
    var marker = new google.maps.Marker({position: latLng, map: map});
    map.setCenter(latLng);
  }, errorHandler);
}




                                              #franklivaudais            Slide 17
                                              #12NTChtml5
Markup for Applications
<input id="donor-input" placeholder="You should see an autocomplete menu as you type"
list="amounts" />
<datalist id="amounts">
  <option value="10" />
  <option value=“100" />
  <option value="1000" />
  <option value="10000" />
</datalist>


Animated Progress bar:
<progress>working...</progress>

Donation Goal tracking:
<progress value="75" max="100”/>




                                      #franklivaudais                                   Slide 18
                                      #12NTChtml5
Rich Snippets

Some supported formats:

•   Reviews                                        •   Recipes
•   People                                         •   Events
•   Products                                       •   Music
•   Business and organizations




                                 #franklivaudais                 Slide 19
                                 #12NTChtml5
Rich Snippets
<div>
My name is Bob Smith but people call me Smithy. Here is my home page: <a
href="http://www.example.com">www.example.com</a>
I live in Albuquerque, NM and work as an engineer at ACME Corp.
</div>

<div itemscope itemtype="http://data-vocabulary.org/Person">
My name is <span itemprop="name">Bob Smith</span>
but people call me <span itemprop="nickname">Smithy</span>.
Here is my home page:
<a href="http://www.example.com" itemprop="url">www.example.com</a>
I live in
<span itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address">
<span itemprop="locality">Albuquerque</span>,
<span itemprop="region">NM</span> </span>and work as an
<span itemprop="title">engineer</span> at
<span itemprop="affiliation">ACME Corp</span>.
</div>


                                      #franklivaudais                               Slide 20
                                      #12NTChtml5
Rich Snippets
http://www.google.com/webmasters/tools/richsnippets
<div itemscope itemtype="http://schema.org/Movie">
<p>Movie Title: <span itemprop="name">Inception</span>.</p>
<p>Average Rating: <span itemprop=”rating">8.8</span>.</p>
<p># of Reviews: <span itemprop=”reviewCount">34,331</span>.</p>
</div>




                                   #franklivaudais                 Slide 21
                                   #12NTChtml5
New Form Types
                                 •   email                              •   tel
                                 •   date                               •   color
                                 •   range                              •   number
                                 •   search


<input type="text" required />

<input type="email" value="some@email.com" />

<input type="date" min="2010-08-14" max="2011-08-14" value="2010-08-14"/>

<input type="range" min="0" max="50" value="10" />

<input type="search" results="10" placeholder="Search..." />

<input type="tel" placeholder="(555) 555-5555”
  pattern="^(?d{3})?[-s]d{3}[-s]d{4}.*?$" />

<input type="color" placeholder="e.g. #bbbbbb" />

<input type="number" step="1" min="-5" max="10" value="0" />




                                                      #franklivaudais                Slide 22
                                                      #12NTChtml5
Form Types on Mobile
type=“text”    type=“number”              type=“email”   type=“tel”




 Android          Android                    iPhone       iPhone




                        #franklivaudais                            Slide 23
                        #12NTChtml5
Canvas 2D Drawing




     #franklivaudais   Slide 24
     #12NTChtml5
Offline Data
•   sessionStorage
         •   One session per tab/window
         •   Temporary key/value pairs
         •   Replaces cookies for session tracking
         •   Extensive javascript methods and events
•   localStorage
         • Global
         • Persistent



    sessionStorage.setItem(key, value);
    sessionStorage.getItem(key);


    localStorage.setItem(key, value);
    localStorage.getItem(key);

                                   #franklivaudais     Slide 25
                                   #12NTChtml5
Offline Data
• Client Side Databases
     • SQLite – structured / relational data
     • Asynchronous / call back based
     • Fast
• Application Cache
     • Store whole app offline (HTML, CSS, JS)
     • Atomic updating
     • Manifest file




                               #franklivaudais   Slide 26
                               #12NTChtml5
Video and Audio

•    Standardized way of embedding media
•    Fallback when not supported
•    Multiple streams in one element
•    Full JavaScript API: errors, network state, controls, readyState, events
•    Attributes for controls, poster, autoplay




    <video width="320" height="240" controls="controls">
     <source src="movie.mp4" type="video/mp4" />
     <source src="movie.ogg" type="video/ogg" />
     Your browser does not support the video tag.
    </video>




                                  #franklivaudais                               Slide 27
                                  #12NTChtml5
versus




#franklivaudais   Slide 28
#12NTChtml5
Where is the traffic coming from?

Side Door: Google, Facebook, Bing, Twitter
Direct but intermittent
Direct: Bookmark or URL


 Type of Traffic                               Technology to Use

 Side Door: Search/Social                      HTML5 Mobile Web

 Direct                                        Native App

 50/50                                         Both




                             #franklivaudais                       Slide 29
                             #12NTChtml5
Native Apps: The Good

User experience
  – Better swipe events
  – Multi-touch support

Access to device hardware
  – GPS/Compass
  – Camera/Microphone
  – Accelerometer/Gyroscope

Background APIs
  – Audio/VOIP
  – Push notifications

High-performance 3D graphics (OpenGL)
Webserver not required


                              #franklivaudais   Slide 30
                              #12NTChtml5
Native Apps: The Bad

Rigid advertising model (iAds)
Apple’s 30% in-app purchase tax
Apple doesn’t share subscriber data
App Store approval process
   – Required for app updates
   – Rejection for non-compliance

Managing deployment configurations
Esoteric tool set (Xcode/Objective-C)
Content accessibility
   – Searchable on Google?
   – Can I share a link to your content?




                                    #franklivaudais   Slide 31
                                    #12NTChtml5
HTML5 Apps: The Good

App update path: hit refresh
Small number of deployment configurations
Development costs
   – Similar skill set as traditional site
   – Often only a “mobile skin” required
   – Many developer tools + resources

Write once, publish once, view anywhere
Content accessibility
   – Indexed by Google
   – URLs may be shared




                                    #franklivaudais   Slide 32
                                    #12NTChtml5
HTML5 Apps: The Bad

Internet access is required
Performance can degrade quickly
Consistent cross-browser experience
   – Disparate Android resolutions
   – May require multiple stylesheets
   – Compatibility #1 source for bugs

Minimal access to device hardware
Requires permission for Geo location
Inconsistent adoption across devices
Webserver required



                                  #franklivaudais   Slide 33
                                  #12NTChtml5
Considerations



HTML5 offers APIs for offline storage, geolocation and
device orientation. New multimedia features make it easy
to include graphical content without proprietary plugins.



        <canvas>       <audio>        <video>




                    #franklivaudais                    Slide 34
                    #12NTChtml5
Real World Applications




       #franklivaudais    Slide 35
       #12NTChtml5
Financial Times

More than 700,000 people use
the Financial Times' Web-based
mobile application to access
news and other content, making
it more popular than the version
sold in Apple's App Store.

FT.com Managing Director Rob
Grimshaw, "People who are using
the app are spending much more
time with the content," he said. "They
are consuming about three times as
many pages through the app as they
are through the desktop in an
average visit."

                                #franklivaudais   Slide 36
                                #12NTChtml5
Amazon Cloud Reader




      #franklivaudais   Slide 37
      #12NTChtml5
Angry Birds




 #franklivaudais   Slide 38
 #12NTChtml5
Next Steps




        #franklivaudais   Slide 39
        #12NTChtml5
Considerations


PhoneGap is an HTML5 app platform that allows
you to author native applications with Web
technologies and get access to APIs and app
stores.




                  #franklivaudais               Slide 40
                  #12NTChtml5
Considerations


NimbleKit is an HTML5 app platform that allows
you to author native applications with Web
technologies and get access to APIs and app
stores.




                  #franklivaudais                Slide 41
                  #12NTChtml5
Considerations

Sencha Touch allows you to develop mobile Web
apps that look and feel native on iPhone, Android
and BlackBerry touch devices.




                   #franklivaudais                  Slide 42
                   #12NTChtml5
Questions
                Thanks

          Frank Livaudais
          #franklivaudais
    flivaudais@cds-global.com

HTML5 in Real World Applications
          #12NTChtml5




         #franklivaudais           Slide 43
         #12NTChtml5
Evaluate This Session!
Each entry is a chance to win an NTEN engraved iPad!




    or Online using #12NTChtml5 at www.nten.org/ntc/eval




                       #franklivaudais                     Slide 44
                       #12NTChtml5

Contenu connexe

Similaire à HTML5 in Real World Applications

Enjoying the full stack - Frontend 2010
Enjoying the full stack - Frontend 2010Enjoying the full stack - Frontend 2010
Enjoying the full stack - Frontend 2010Christian Heilmann
 
Silverlight vs HTML5 - Lessons learned from the real world...
Silverlight vs HTML5 - Lessons learned from the real world...Silverlight vs HTML5 - Lessons learned from the real world...
Silverlight vs HTML5 - Lessons learned from the real world...Peter Gfader
 
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...Wolf Loescher
 
Let's get accessible!
Let's get accessible!Let's get accessible!
Let's get accessible!Tady Walsh
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webPablo Garaizar
 
Making Your Site Vendor Agnostic via a Modern Data Layer
Making Your Site Vendor Agnostic via a Modern Data LayerMaking Your Site Vendor Agnostic via a Modern Data Layer
Making Your Site Vendor Agnostic via a Modern Data LayerEnsighten
 
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるSadaaki HIRAI
 
HTML5 History & Features
HTML5 History & FeaturesHTML5 History & Features
HTML5 History & FeaturesDave Ross
 
SW Drupal Summit: HTML5+Drupal
SW Drupal Summit: HTML5+DrupalSW Drupal Summit: HTML5+Drupal
SW Drupal Summit: HTML5+DrupalJen Simmons
 
Old code doesn't stink - Detroit
Old code doesn't stink - DetroitOld code doesn't stink - Detroit
Old code doesn't stink - DetroitMartin Gutenbrunner
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Sadaaki HIRAI
 
The Joys of Clean Data with Matt Dowle
The Joys of Clean Data with Matt DowleThe Joys of Clean Data with Matt Dowle
The Joys of Clean Data with Matt DowleSri Ambati
 
Drupal 8 HTML5 Initiative
Drupal 8 HTML5 InitiativeDrupal 8 HTML5 Initiative
Drupal 8 HTML5 InitiativeJacine Luisi
 

Similaire à HTML5 in Real World Applications (20)

Introduccion a HTML5
Introduccion a HTML5Introduccion a HTML5
Introduccion a HTML5
 
html5
html5html5
html5
 
Html5
Html5Html5
Html5
 
Enjoying the full stack - Frontend 2010
Enjoying the full stack - Frontend 2010Enjoying the full stack - Frontend 2010
Enjoying the full stack - Frontend 2010
 
Silverlight vs HTML5 - Lessons learned from the real world...
Silverlight vs HTML5 - Lessons learned from the real world...Silverlight vs HTML5 - Lessons learned from the real world...
Silverlight vs HTML5 - Lessons learned from the real world...
 
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...
This Old Website: : Applying HTML5, CSS3, and Responsive Design to An Existin...
 
HTML 5 - Overview
HTML 5 - OverviewHTML 5 - Overview
HTML 5 - Overview
 
Let's get accessible!
Let's get accessible!Let's get accessible!
Let's get accessible!
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
 
Making Your Site Vendor Agnostic via a Modern Data Layer
Making Your Site Vendor Agnostic via a Modern Data LayerMaking Your Site Vendor Agnostic via a Modern Data Layer
Making Your Site Vendor Agnostic via a Modern Data Layer
 
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
 
HTML5 History & Features
HTML5 History & FeaturesHTML5 History & Features
HTML5 History & Features
 
Echo HTML5
Echo HTML5Echo HTML5
Echo HTML5
 
SW Drupal Summit: HTML5+Drupal
SW Drupal Summit: HTML5+DrupalSW Drupal Summit: HTML5+Drupal
SW Drupal Summit: HTML5+Drupal
 
Old code doesn't stink - Detroit
Old code doesn't stink - DetroitOld code doesn't stink - Detroit
Old code doesn't stink - Detroit
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
 
Webapps mobiles html5
Webapps mobiles html5Webapps mobiles html5
Webapps mobiles html5
 
WHAT IS HTML5?(20100510)
WHAT IS HTML5?(20100510)WHAT IS HTML5?(20100510)
WHAT IS HTML5?(20100510)
 
The Joys of Clean Data with Matt Dowle
The Joys of Clean Data with Matt DowleThe Joys of Clean Data with Matt Dowle
The Joys of Clean Data with Matt Dowle
 
Drupal 8 HTML5 Initiative
Drupal 8 HTML5 InitiativeDrupal 8 HTML5 Initiative
Drupal 8 HTML5 Initiative
 

Plus de NTEN

17NTC Overall Speaker Timelines
17NTC Overall Speaker Timelines17NTC Overall Speaker Timelines
17NTC Overall Speaker TimelinesNTEN
 
17NTC Speaker Orientation Call
17NTC Speaker Orientation Call17NTC Speaker Orientation Call
17NTC Speaker Orientation CallNTEN
 
Call for 17NTC Session Proposals
Call for 17NTC Session ProposalsCall for 17NTC Session Proposals
Call for 17NTC Session ProposalsNTEN
 
2015 Leading Change Summit: Making the Most of LCS
2015 Leading Change Summit: Making the Most of LCS2015 Leading Change Summit: Making the Most of LCS
2015 Leading Change Summit: Making the Most of LCSNTEN
 
Community Organizing Tools from the Experts Webinar
Community Organizing Tools from the Experts WebinarCommunity Organizing Tools from the Experts Webinar
Community Organizing Tools from the Experts WebinarNTEN
 
2013 Nonprofit Engagement Data Management Study: A Graphic Report
2013 Nonprofit Engagement Data Management Study: A Graphic Report2013 Nonprofit Engagement Data Management Study: A Graphic Report
2013 Nonprofit Engagement Data Management Study: A Graphic ReportNTEN
 
2012 State of Nonprofit Data Report
2012 State of Nonprofit Data Report2012 State of Nonprofit Data Report
2012 State of Nonprofit Data ReportNTEN
 
Smart Technology Investment for Nonprofits
Smart Technology Investment for NonprofitsSmart Technology Investment for Nonprofits
Smart Technology Investment for NonprofitsNTEN
 
Social Media for Social Good - NCVS Pre-Con Workshp
Social Media for Social Good - NCVS Pre-Con WorkshpSocial Media for Social Good - NCVS Pre-Con Workshp
Social Media for Social Good - NCVS Pre-Con WorkshpNTEN
 
Ready, Fire, Aim
Ready, Fire, AimReady, Fire, Aim
Ready, Fire, AimNTEN
 
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...NTEN
 
The Story of Stuff: How an Environmental Campaigner to New Media Mogul
The Story of Stuff: How an Environmental Campaigner to New Media MogulThe Story of Stuff: How an Environmental Campaigner to New Media Mogul
The Story of Stuff: How an Environmental Campaigner to New Media MogulNTEN
 
Better Nonprofit Websites: 52 Tweaks in 52 Weeks
Better Nonprofit Websites: 52 Tweaks in 52 WeeksBetter Nonprofit Websites: 52 Tweaks in 52 Weeks
Better Nonprofit Websites: 52 Tweaks in 52 WeeksNTEN
 
Practical Problem Solving Using Mobile Technology
Practical Problem Solving Using Mobile TechnologyPractical Problem Solving Using Mobile Technology
Practical Problem Solving Using Mobile TechnologyNTEN
 
Zen and Art of Workflow Development
Zen and Art of Workflow DevelopmentZen and Art of Workflow Development
Zen and Art of Workflow DevelopmentNTEN
 
12 nt cviz
12 nt cviz12 nt cviz
12 nt cvizNTEN
 
Tips and Tools for Technology Planning
Tips and Tools for Technology PlanningTips and Tools for Technology Planning
Tips and Tools for Technology PlanningNTEN
 
Technology Governance: Smart, Sexy and Simple in Seven Steps
Technology Governance: Smart, Sexy and Simple in Seven StepsTechnology Governance: Smart, Sexy and Simple in Seven Steps
Technology Governance: Smart, Sexy and Simple in Seven StepsNTEN
 
Social Network Fundraising: Facts, Myths, and Strategies that Work
Social Network Fundraising: Facts, Myths, and Strategies that WorkSocial Network Fundraising: Facts, Myths, and Strategies that Work
Social Network Fundraising: Facts, Myths, and Strategies that WorkNTEN
 
Maturing Your Organization's Social Culture... by Creating a Policy?
Maturing Your Organization's Social Culture... by Creating a Policy?Maturing Your Organization's Social Culture... by Creating a Policy?
Maturing Your Organization's Social Culture... by Creating a Policy?NTEN
 

Plus de NTEN (20)

17NTC Overall Speaker Timelines
17NTC Overall Speaker Timelines17NTC Overall Speaker Timelines
17NTC Overall Speaker Timelines
 
17NTC Speaker Orientation Call
17NTC Speaker Orientation Call17NTC Speaker Orientation Call
17NTC Speaker Orientation Call
 
Call for 17NTC Session Proposals
Call for 17NTC Session ProposalsCall for 17NTC Session Proposals
Call for 17NTC Session Proposals
 
2015 Leading Change Summit: Making the Most of LCS
2015 Leading Change Summit: Making the Most of LCS2015 Leading Change Summit: Making the Most of LCS
2015 Leading Change Summit: Making the Most of LCS
 
Community Organizing Tools from the Experts Webinar
Community Organizing Tools from the Experts WebinarCommunity Organizing Tools from the Experts Webinar
Community Organizing Tools from the Experts Webinar
 
2013 Nonprofit Engagement Data Management Study: A Graphic Report
2013 Nonprofit Engagement Data Management Study: A Graphic Report2013 Nonprofit Engagement Data Management Study: A Graphic Report
2013 Nonprofit Engagement Data Management Study: A Graphic Report
 
2012 State of Nonprofit Data Report
2012 State of Nonprofit Data Report2012 State of Nonprofit Data Report
2012 State of Nonprofit Data Report
 
Smart Technology Investment for Nonprofits
Smart Technology Investment for NonprofitsSmart Technology Investment for Nonprofits
Smart Technology Investment for Nonprofits
 
Social Media for Social Good - NCVS Pre-Con Workshp
Social Media for Social Good - NCVS Pre-Con WorkshpSocial Media for Social Good - NCVS Pre-Con Workshp
Social Media for Social Good - NCVS Pre-Con Workshp
 
Ready, Fire, Aim
Ready, Fire, AimReady, Fire, Aim
Ready, Fire, Aim
 
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...
But What Do You Actually Do?: Communicating Your Nonprofit's Work in Ways You...
 
The Story of Stuff: How an Environmental Campaigner to New Media Mogul
The Story of Stuff: How an Environmental Campaigner to New Media MogulThe Story of Stuff: How an Environmental Campaigner to New Media Mogul
The Story of Stuff: How an Environmental Campaigner to New Media Mogul
 
Better Nonprofit Websites: 52 Tweaks in 52 Weeks
Better Nonprofit Websites: 52 Tweaks in 52 WeeksBetter Nonprofit Websites: 52 Tweaks in 52 Weeks
Better Nonprofit Websites: 52 Tweaks in 52 Weeks
 
Practical Problem Solving Using Mobile Technology
Practical Problem Solving Using Mobile TechnologyPractical Problem Solving Using Mobile Technology
Practical Problem Solving Using Mobile Technology
 
Zen and Art of Workflow Development
Zen and Art of Workflow DevelopmentZen and Art of Workflow Development
Zen and Art of Workflow Development
 
12 nt cviz
12 nt cviz12 nt cviz
12 nt cviz
 
Tips and Tools for Technology Planning
Tips and Tools for Technology PlanningTips and Tools for Technology Planning
Tips and Tools for Technology Planning
 
Technology Governance: Smart, Sexy and Simple in Seven Steps
Technology Governance: Smart, Sexy and Simple in Seven StepsTechnology Governance: Smart, Sexy and Simple in Seven Steps
Technology Governance: Smart, Sexy and Simple in Seven Steps
 
Social Network Fundraising: Facts, Myths, and Strategies that Work
Social Network Fundraising: Facts, Myths, and Strategies that WorkSocial Network Fundraising: Facts, Myths, and Strategies that Work
Social Network Fundraising: Facts, Myths, and Strategies that Work
 
Maturing Your Organization's Social Culture... by Creating a Policy?
Maturing Your Organization's Social Culture... by Creating a Policy?Maturing Your Organization's Social Culture... by Creating a Policy?
Maturing Your Organization's Social Culture... by Creating a Policy?
 

Dernier

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Dernier (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

HTML5 in Real World Applications

  • 1. HTML5 in Real World Applications #12NTChtml5 Frank Livaudais #franklivaudais
  • 2. Evaluate This Session! Each entry is a chance to win an NTEN engraved iPad! or Online using #12NTChtml5 at www.nten.org/ntc/eval #franklivaudais Slide 1 #12NTChtml5
  • 3. HTML5 #franklivaudais Slide 2 #12NTChtml5
  • 4. Rough Timeline of Web Technologies CSS 1 + Tableless HTML JavaScript CSS 2 Web Design HTML 5 1994 1997 2000 2005 1991 1996 1998 2002 2009 HTML 2 HTML 4 XHTML 1 AJAX #franklivaudais Slide 3 #12NTChtml5
  • 5. 1991 - HTML First Web Page – Tim Berners-Lee -1991 #franklivaudais Slide 4 #12NTChtml5
  • 6. 1994 – HTML2 AOL -1994 Apple eWorld - 1994 Amazon-1994 #franklivaudais Slide 5 #12NTChtml5
  • 7. 1996 – CSS, JavaScript Yahoo - 1996 AltaVista - 1996 #franklivaudais Slide 6 #12NTChtml5
  • 8. 1998-2001 – HTML4, CSS2 eBay- 1998 Wikipedia- 2001 #franklivaudais Slide 7 #12NTChtml5
  • 9. 2000 – XHTML Nike - 2000 Yahoo - 2000 #franklivaudais Slide 8 #12NTChtml5
  • 10. 2002-2003 – Tableless Design Microsoft - 2002 Dell- 2003 #franklivaudais Slide 9 #12NTChtml5
  • 11. 2004-2005 – DHTML MySpace 2004 Facebook 2005 #franklivaudais Slide 10 #12NTChtml5
  • 12. 2006 - AJAX Twitter - 2006 iGoogle - 2006 #franklivaudais Slide 11 #12NTChtml5
  • 13. 2009-Present – HTML5 Blogger - 2009 Good Housekeeping - Today #franklivaudais Slide 12 #12NTChtml5
  • 14. Mobile ESPN Today American Airlines #franklivaudais Slide 13 #12NTChtml5
  • 15. What is HTML5? + + = #franklivaudais Slide 14 #12NTChtml5
  • 16. New APIs and Tags #franklivaudais Slide 15 #12NTChtml5
  • 17. HTML5 APIs Messaging Server Events Geolocation Local Storage History Offline Apps Canvas Drag & Drop Video & Audio Inline Editing Web Sockets Web Workers #franklivaudais Slide 16 #12NTChtml5
  • 18. Geolocation if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(position) { var latLng = new google.maps.LatLng( position.coords.latitude, position.coords.longitude); var marker = new google.maps.Marker({position: latLng, map: map}); map.setCenter(latLng); }, errorHandler); } #franklivaudais Slide 17 #12NTChtml5
  • 19. Markup for Applications <input id="donor-input" placeholder="You should see an autocomplete menu as you type" list="amounts" /> <datalist id="amounts"> <option value="10" /> <option value=“100" /> <option value="1000" /> <option value="10000" /> </datalist> Animated Progress bar: <progress>working...</progress> Donation Goal tracking: <progress value="75" max="100”/> #franklivaudais Slide 18 #12NTChtml5
  • 20. Rich Snippets Some supported formats: • Reviews • Recipes • People • Events • Products • Music • Business and organizations #franklivaudais Slide 19 #12NTChtml5
  • 21. Rich Snippets <div> My name is Bob Smith but people call me Smithy. Here is my home page: <a href="http://www.example.com">www.example.com</a> I live in Albuquerque, NM and work as an engineer at ACME Corp. </div> <div itemscope itemtype="http://data-vocabulary.org/Person"> My name is <span itemprop="name">Bob Smith</span> but people call me <span itemprop="nickname">Smithy</span>. Here is my home page: <a href="http://www.example.com" itemprop="url">www.example.com</a> I live in <span itemprop="address" itemscope itemtype="http://data-vocabulary.org/Address"> <span itemprop="locality">Albuquerque</span>, <span itemprop="region">NM</span> </span>and work as an <span itemprop="title">engineer</span> at <span itemprop="affiliation">ACME Corp</span>. </div> #franklivaudais Slide 20 #12NTChtml5
  • 22. Rich Snippets http://www.google.com/webmasters/tools/richsnippets <div itemscope itemtype="http://schema.org/Movie"> <p>Movie Title: <span itemprop="name">Inception</span>.</p> <p>Average Rating: <span itemprop=”rating">8.8</span>.</p> <p># of Reviews: <span itemprop=”reviewCount">34,331</span>.</p> </div> #franklivaudais Slide 21 #12NTChtml5
  • 23. New Form Types • email • tel • date • color • range • number • search <input type="text" required /> <input type="email" value="some@email.com" /> <input type="date" min="2010-08-14" max="2011-08-14" value="2010-08-14"/> <input type="range" min="0" max="50" value="10" /> <input type="search" results="10" placeholder="Search..." /> <input type="tel" placeholder="(555) 555-5555” pattern="^(?d{3})?[-s]d{3}[-s]d{4}.*?$" /> <input type="color" placeholder="e.g. #bbbbbb" /> <input type="number" step="1" min="-5" max="10" value="0" /> #franklivaudais Slide 22 #12NTChtml5
  • 24. Form Types on Mobile type=“text” type=“number” type=“email” type=“tel” Android Android iPhone iPhone #franklivaudais Slide 23 #12NTChtml5
  • 25. Canvas 2D Drawing #franklivaudais Slide 24 #12NTChtml5
  • 26. Offline Data • sessionStorage • One session per tab/window • Temporary key/value pairs • Replaces cookies for session tracking • Extensive javascript methods and events • localStorage • Global • Persistent sessionStorage.setItem(key, value); sessionStorage.getItem(key); localStorage.setItem(key, value); localStorage.getItem(key); #franklivaudais Slide 25 #12NTChtml5
  • 27. Offline Data • Client Side Databases • SQLite – structured / relational data • Asynchronous / call back based • Fast • Application Cache • Store whole app offline (HTML, CSS, JS) • Atomic updating • Manifest file #franklivaudais Slide 26 #12NTChtml5
  • 28. Video and Audio • Standardized way of embedding media • Fallback when not supported • Multiple streams in one element • Full JavaScript API: errors, network state, controls, readyState, events • Attributes for controls, poster, autoplay <video width="320" height="240" controls="controls"> <source src="movie.mp4" type="video/mp4" /> <source src="movie.ogg" type="video/ogg" /> Your browser does not support the video tag. </video> #franklivaudais Slide 27 #12NTChtml5
  • 29. versus #franklivaudais Slide 28 #12NTChtml5
  • 30. Where is the traffic coming from? Side Door: Google, Facebook, Bing, Twitter Direct but intermittent Direct: Bookmark or URL Type of Traffic Technology to Use Side Door: Search/Social HTML5 Mobile Web Direct Native App 50/50 Both #franklivaudais Slide 29 #12NTChtml5
  • 31. Native Apps: The Good User experience – Better swipe events – Multi-touch support Access to device hardware – GPS/Compass – Camera/Microphone – Accelerometer/Gyroscope Background APIs – Audio/VOIP – Push notifications High-performance 3D graphics (OpenGL) Webserver not required #franklivaudais Slide 30 #12NTChtml5
  • 32. Native Apps: The Bad Rigid advertising model (iAds) Apple’s 30% in-app purchase tax Apple doesn’t share subscriber data App Store approval process – Required for app updates – Rejection for non-compliance Managing deployment configurations Esoteric tool set (Xcode/Objective-C) Content accessibility – Searchable on Google? – Can I share a link to your content? #franklivaudais Slide 31 #12NTChtml5
  • 33. HTML5 Apps: The Good App update path: hit refresh Small number of deployment configurations Development costs – Similar skill set as traditional site – Often only a “mobile skin” required – Many developer tools + resources Write once, publish once, view anywhere Content accessibility – Indexed by Google – URLs may be shared #franklivaudais Slide 32 #12NTChtml5
  • 34. HTML5 Apps: The Bad Internet access is required Performance can degrade quickly Consistent cross-browser experience – Disparate Android resolutions – May require multiple stylesheets – Compatibility #1 source for bugs Minimal access to device hardware Requires permission for Geo location Inconsistent adoption across devices Webserver required #franklivaudais Slide 33 #12NTChtml5
  • 35. Considerations HTML5 offers APIs for offline storage, geolocation and device orientation. New multimedia features make it easy to include graphical content without proprietary plugins. <canvas> <audio> <video> #franklivaudais Slide 34 #12NTChtml5
  • 36. Real World Applications #franklivaudais Slide 35 #12NTChtml5
  • 37. Financial Times More than 700,000 people use the Financial Times' Web-based mobile application to access news and other content, making it more popular than the version sold in Apple's App Store. FT.com Managing Director Rob Grimshaw, "People who are using the app are spending much more time with the content," he said. "They are consuming about three times as many pages through the app as they are through the desktop in an average visit." #franklivaudais Slide 36 #12NTChtml5
  • 38. Amazon Cloud Reader #franklivaudais Slide 37 #12NTChtml5
  • 39. Angry Birds #franklivaudais Slide 38 #12NTChtml5
  • 40. Next Steps #franklivaudais Slide 39 #12NTChtml5
  • 41. Considerations PhoneGap is an HTML5 app platform that allows you to author native applications with Web technologies and get access to APIs and app stores. #franklivaudais Slide 40 #12NTChtml5
  • 42. Considerations NimbleKit is an HTML5 app platform that allows you to author native applications with Web technologies and get access to APIs and app stores. #franklivaudais Slide 41 #12NTChtml5
  • 43. Considerations Sencha Touch allows you to develop mobile Web apps that look and feel native on iPhone, Android and BlackBerry touch devices. #franklivaudais Slide 42 #12NTChtml5
  • 44. Questions Thanks Frank Livaudais #franklivaudais flivaudais@cds-global.com HTML5 in Real World Applications #12NTChtml5 #franklivaudais Slide 43 #12NTChtml5
  • 45. Evaluate This Session! Each entry is a chance to win an NTEN engraved iPad! or Online using #12NTChtml5 at www.nten.org/ntc/eval #franklivaudais Slide 44 #12NTChtml5