SlideShare uma empresa Scribd logo
1 de 83
Follow along!   http://njgeo.org/html5mobile/
Going mobile with




John Reiser
Geospatial Research Lab
http://gis.rowan.edu/
Overview
•   Introduction to & quick history of HTML5
•   Some mobile mapping inspiration
•   A look at the HTML5 mapping APIs
•   Locating your users using geolocation
•   Data formats used on the web
•   Map Tiles and the Web Mercator projection
•   Thoughts on designing for mobile
•   Questions
What is HTML5?
• HTML5 is the latest version of the structured
  document language of the Web.
• HTML5 is a set of specifications, dealing
  document structure as well as with
  component parts such as
  JavaScript, stylesheets, audiovisuals, and
  mobile-specific functionality.
• Broad support for HTML5 across desktop
  and mobile browsers.
Quick history of HTML
• Began as a means to cross-reference
  research.
• First web servers & browsers appear in the
  early 1990s.
• W3C formed in 1994 to define standards for
  HTML and HTTP.
• Standards ignored as commercial browsers
  race for new functionality.
• HTML 4 became the standard in 1998.
Rise of HTML5
• In response to high rate of errors in HTML
  pages, XHTML was defined.
• XHTML was adopted by browsers, but many
  pages “upgraded” by incorporating new
  features but not declaring themselves as
  XHTML.
• W3C continued work on XHTML2.
• A new group, WHATWG, formed to push for
  interoperable web applications.
• In 2006, W3C began working with WHATWG.
All about applications
• Subsequent progress on HTML5 worked
  toward developing Web Applications that
  would work across browsers.
  – New form fields
  – Greater, yet secure, access via browsers
  – Support for more media & functionality
  – Performance
  – Emphasis on mobile
HTML5 Trifecta

•HTML

•CSS

•JavaScrip
t
HTML5 for Mobile
• HTML5 support is nearly the same between
  desktop browsers and their mobile
  equivalents.
• Functionality differs due to the nature of the
  device; smaller form factor and varying levels
  of support across mobile platforms.
• Despite this, the majority of web pages
  written in HTML5 will appear and function in
  a similar fashion.
Why not Native apps?
• Native applications have their place in the
  mobile ecosystem.
• Device-specific functionality may be required
  of an application.
• HTML5 functionality is gaining support
  across mobile devices.
• The list of reasons why native apps are
  superior to HTML5 is shrinking.
Which is which?
Which is which?
What do you need to get started?
<!DOCTYPE html>
Mapping with HTML5
• The interactive nature of web maps are due
  to JavaScript.
• You can have an HTML5 map within minutes
  due to the multiple JS libraries available.
• There are also several general JS
  libraries, such as JQuery, which provide
  functions for cross platform capability and
  can aid you in your programming tasks.
• JQuery Mobile is what is behind the
  presentation companion site.
Inspiration
The Weather Channel
http://m.weather.com/mapcenter_local/08505
The Weather Channel
• Basic map, very little
  functionality.
• Temporal data;
  looped animation of
  previous weather
  conditions.
• Elegant, custom layer
  switcher.
• Experience using the
  map matches the rest
  of the website.
Texas Wildfire Risk Assessment
 http://www.texaswildfirerisk.com/
TxWRAP
• Access to the same
  data available via the
  Desktop version.
• Wildfires bring with
  the possibility of
  evacuations.
• Making this data
  available to the public
  & the emergency
  responders benefits
  both parties.
Rowan SpaceFinder!
http://gis.rowan.edu/projects/finder
Rowan SpaceFinder!
• Locates rooms on
  Rowan University’s
  Glassboro campus.
• Designed for
  mobile, but works on
  desktop.
• Provides access to a
  large amount of
  data, but still
  responsive.
Demo: Real-Time Hazard Console
     http://node.dtsagile.com/
Real-Time Hazards
• Demonstrates the
  networking
  capabilities of
  HTML5.
• Updates from any
  viewer are then
  pushed out to all
  other viewers.
• Uses Node.js and
  Socket.io to provide
  the real-time updates.
Which API is right for you?
ArcGIS JS API          Mapquest

 Bing Maps                           OpenLayers
                     Modest Maps


          HTML5 Mapping APIs

          Yahoo! Maps            Polymaps
Leaflet
                  Mapstraction
Nokia Maps                         Google Maps
Google Maps
Google Maps
• Google Maps is currently the most popular
  web mapping API.
• Provides base maps & imagery, geocoding
  services, XML-based data parsing.
• Free to use, usage fees for higher traffic
  users.
• Many, many resources available for
  implementing custom functionality.
Google Maps
• Pros
  – start quickly
  – a small set of data
  – services like
    geocoding, traffic, Stree
    tView, and elevation
    profiles
• Cons
  – Closed source
  – Free, to a point
OpenLayers
OpenLayers
• OpenLayers provides the most highest
  degree of support for different data formats
  and projections.
• Amazing amount of functionality out of the
  box.
• Is open source software.
• You must provide your own data; base maps
  not included.
• Largest in terms of library size.
OpenLayers
• Pros
  – Very powerful and
    extensible
  – Huge example library
    to help you get started
  – Supports projections
  – Editing tools built in
• Cons
  – Codebase is very
    large
  – Does not include any
    services or base
    maps; you provide the
    data
Leaflet
Leaflet
• Leaflet is developed by CloudMade.
• Leaflet is open source.
• OpenStreetMap derived basemaps available
  through CloudMade.
• Lightweight.
• Easy to understand.
• Several helper functions, but you may need
  to write your own code.
Leaflet
• Pros
  –   Very responsive
  –   Lightweight
  –   Basemaps available
  –   Geocoding and routing
      services available
• Cons
  – API does not include a
    nearly as much out-of-
    the-box functionality
    as either GMaps or
    OpenLayers
Mapping APIs Compared
Additional JS Libraries
• These additional JS
  libraries can aid in
  cross-browser
  support and quicker
  development times.
  – JQuery
  – Prototype
  – Dojo
• JQuery Mobile is
  used to power the
  companion site.
Geolocation




              http://datenform.de/mapeng.html
Geolocation
• HTML5 supports physical location of the
  device through the navigator.geolocation
  object.
• If it exists, you have some geolocation
  abilities.
• Three methods:
  – getCurrentPosition – get once
  – watchPosition – get continuously
  – clearWatch
• Methods called asynchronously, passing a
  Position object.
Position
• The Position object
  returned contains
  two components:
  – Coordinates object
     •   latitude
     •   longitude
     •   accuracy
     •   altitude
     •   altitudeAccuracy
     •   heading
     •   speed
  – Timestamp
Geolocation Demo
• Fields will continue to
  update as you move
  around (or as
  accuracy improves)
• watchPosition called
  on page load
• clearWatch called
  when Back button is
  pressed
Other Mobile Sensors
• HTML5 Device
  Access also exposes
  additional data in
  JavaScript
  – Compass/Magnetomet
    er
  – Accelerometer
  – Device Orientation
• These can be
  combined to provide a
  richer, location-based   http://flickr.com/photos/marcoarment/1955464307/
  mobile experience.
HTML5 and GIS Data
Web-friendly Formats
• Many traditional GIS formats are not ideal for
  transmission via the Internet.
  – Shapefiles and Coverages are composed of
    several different files with rigid relative structure.
  – Rasters come in common formats (JPEG) but
    are often far larger in size than commonly
    encountered.
  – Often, users only request a localized portion of
    the data. Location specific retrieval is not
    possible with most formats.
Accessing GIS via Web Services
• Requests using Web Services allows GIS
  servers to receive queries for specific
  data, filtering by location or attribute.
• The entire data set could be pushed back to
  the client, but this is not required.
• Making a request to OSM like so:
 http://www.openstreetmap.org/api/0.6/map?bbox=-
 75.120765,39.710157,-75.119697,39.710953
 returns data within the bounding box defined.
Data formats on the Web
eXtensible Markup Language
• XML is an open, text-
  based interchange
  format.
• Human readable, but
  greater emphasis on
  machine parsing.
• HTML and XML are
  closely related.
• Many Web GIS data
  formats based on
  XML.
JSON
• JavaScript Object
  Notation is a open
  data format based on
  how JavaScript
  objects are recorded.
• Great as a web-based
  data interchange
  format.
• Text based, human
  readable.
GeoJSON
• GeoJSON is JSON
  that is specifically
  structured to represent
  geographic
  information.
• Specific keys:
   – geometry
   – properties (attributes)
   – crs (projection info)
• Still text based &
  human readable.
AJAX
• Asynchronous JavaScript and XML is a
  technique by which web applications make
  additional requests for data.
• Typically, after the page is loaded within the
  browser, any open connections are closed
  until the user navigates to the next page.
• AJAX allows for additional data requests that
  occur in the background.
• Background connections allow the rest of the
  page to function and to not require user
  input.
AJAX
• While XML is in the name, JSON is often
  used.
• The browser can incorporate the data
  received into the currently displayed page.
• Data could be continuously updated and
  pushed back to the browser on a regular
  basis.
• The browser can also receive user feedback
  and send the data asynchronously back to
  the server.
These formats work for features,
    but what about rasters?
Projections
Web Mercator
• Yet another mark of
  Google’s influence on
  web mapping is the
  common projection that
  most web mapping
  applications use today.
• Based on a spherical
  model of the
  Earth, Web Mercator
  reprojects the planet
  (minus the poles) into a
  square.
Why Web Mercator?
• While cartographers might bemoan the
  distortion associated with Mercator, a
  projection that preserves shape allows for a
  fixed set of zoom levels.
• Pre-Google Maps, there were very few
  attempts to define an open structure for map
  tiling.
• Serving static map images from disk will
  always be faster than rendering images from
  GIS data.
Web Mercator
• This enables division of
  the planet into
  increasingly smaller
  squares.
• These square tiles can
  then be served using a
  static web server, using
  a defined directory
  structure.
• example.com/z/x/y.png
Uncached Web Maps
Cache Creation
• There are two predominate methods for
  populating a tile cache with map tiles.
  – Direct: using a desktop computer to generate the
    tiles from a GIS, storing them locally or remotely.
     • Arc2Earth, TileMill are two direct tile producers.
  – Intermediary: using middle-man software that
    passes on requests to a GIS server while
    creating and managing the cache.
     • TileCache and GeoWebCache are two intermediaries.
Number of Levels
• You want to render
  only the levels
  needed for your
  application.
• Number of tiles
  quadruple as the
  zoom level increases.
• Limit the zoom levels
  of your map to what is
  appropriate.
• Specify the tile
  ordering scheme.
Caching Schemes
• Precache – render the map tiles for a given
  extent or zoom level(s) before deployment.
• Cache on demand – only cache areas at
  high zoom levels when the first request is
  made.
  – Stamen’s Watercolor map tiles are cached to a
    certain level, then drawn as needed.
  – Using a CDN (like Amazon CloudFront) prevents
    you from handling on-demand requests.
• Cache only in your area of focus.
• Cache only areas with data.
Caching On Demand

 GIS      Caching                  Web
Server    Software                 Map


                     Map Tile does not exist:
           Cach
GDB                  Rendered then stored.
            e




 GIS      Caching                  Web
Server    Software                 Map


                     Map Tile does exist:
           Cach
GDB                  Pre-rendered tile returned.
            e
“Rendering the World”
 https://speakerdeck.com/u/yhahn
Stamen Watercolors
 http://maps.stamen.com
@kelsosCorner
      & @stamen
http://sta.mn/py6
I’ve got my map and my data,
          now what?
Design for Users
User Interface
• HTML5 comes with no required UI or human-
  interaction guidelines.
• Your applications can be designed however
  you see fit.
• With mapping applications, one might be
  tempted to look to the desktop for inspiration.
Don’t.
GUI Interaction Methods
• Desktop interfaces follow the WIMP model.
  – Windows, icons, menus, pointer
• Mobile devices break from this model.
• Touch changes the way we interact with
  devices.
• Our familiarity with WIMP interfaces is
  learned.
http://flickr.com/photos/panaromico/6896060374




http://flickr.com/photos/jswaby/3200137639
http://www.flickr.com/photos/ambros/6849368514
Desktop GIS UI
• Desktop GIS has
  been saddled with the
  same UI baggage.
• Initially command
  line, but then the
  WIMP interface came
  along and all GIS
  applications followed
  suit.
• Does not work for a
  mobile environment.
When designing your mobile
applications, throw out everything
  you know about Desktop GIS.
Moving your data online is about
 getting the broadest audience
            possible.
HTML5 can adapt to a variety of
 desktop and mobile devices.
Thank you!
John Reiser             Rowan University
Campus GIS Specialist   Geospatial Research
reiser@rowan.edu        Lab
856-256-4817            http://gis.rowan.edu/
@johnjreiser            856-256-4861
                        @rowangeolab

Mais conteúdo relacionado

Destaque

NJ MAP: Building a different kind of GIS platform using open source tools.
NJ MAP: Building a different kind of GIS platform using open source tools.NJ MAP: Building a different kind of GIS platform using open source tools.
NJ MAP: Building a different kind of GIS platform using open source tools.John Reiser
 
Russian Revolution Part 2
Russian Revolution Part 2Russian Revolution Part 2
Russian Revolution Part 2Joseph Fuertsch
 
Data Storage and Processing
Data Storage and ProcessingData Storage and Processing
Data Storage and ProcessingJohn Reiser
 
Building a semantic-based decision support system to optimize the energy use ...
Building a semantic-based decision support system to optimize the energy use ...Building a semantic-based decision support system to optimize the energy use ...
Building a semantic-based decision support system to optimize the energy use ...Gonçal Costa Jutglar
 
Processing and integrating soil map information from different regions into C...
Processing and integrating soil map information from different regions into C...Processing and integrating soil map information from different regions into C...
Processing and integrating soil map information from different regions into C...FAO
 
Photoshop tutorial
Photoshop tutorialPhotoshop tutorial
Photoshop tutorialMahidi Hasan
 
Image to sketch effect Step by Step Photoshop Tutorial
Image to sketch effect  Step by Step Photoshop Tutorial Image to sketch effect  Step by Step Photoshop Tutorial
Image to sketch effect Step by Step Photoshop Tutorial Web D School
 
MODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionMODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionLDBC council
 
New Jersey Land Change Viewer
New Jersey Land Change ViewerNew Jersey Land Change Viewer
New Jersey Land Change ViewerJohn Reiser
 
How to Install Fonts in Photoshop
How to Install Fonts in PhotoshopHow to Install Fonts in Photoshop
How to Install Fonts in PhotoshopMetrodesk
 
Ocean Globe, Ocean Geospatial Appliance
Ocean Globe, Ocean Geospatial ApplianceOcean Globe, Ocean Geospatial Appliance
Ocean Globe, Ocean Geospatial ApplianceHigh Tech Maui
 
6th Grade Social Studies Ancient Engineering
6th Grade Social Studies Ancient Engineering 6th Grade Social Studies Ancient Engineering
6th Grade Social Studies Ancient Engineering Aaron Maurer
 
How to Intensify Images in Photoshop
How to Intensify Images in PhotoshopHow to Intensify Images in Photoshop
How to Intensify Images in PhotoshopMetrodesk
 
Vietnam...how did we get there
Vietnam...how did we get thereVietnam...how did we get there
Vietnam...how did we get thereJoseph Fuertsch
 
Russian Revolution Part 3
Russian Revolution Part 3Russian Revolution Part 3
Russian Revolution Part 3Joseph Fuertsch
 

Destaque (20)

NJ MAP: Building a different kind of GIS platform using open source tools.
NJ MAP: Building a different kind of GIS platform using open source tools.NJ MAP: Building a different kind of GIS platform using open source tools.
NJ MAP: Building a different kind of GIS platform using open source tools.
 
Russian Revolution Part 2
Russian Revolution Part 2Russian Revolution Part 2
Russian Revolution Part 2
 
Data Storage and Processing
Data Storage and ProcessingData Storage and Processing
Data Storage and Processing
 
Building a semantic-based decision support system to optimize the energy use ...
Building a semantic-based decision support system to optimize the energy use ...Building a semantic-based decision support system to optimize the energy use ...
Building a semantic-based decision support system to optimize the energy use ...
 
The Great War
The Great WarThe Great War
The Great War
 
Nioxon to ford 2011
Nioxon to ford 2011Nioxon to ford 2011
Nioxon to ford 2011
 
Processing and integrating soil map information from different regions into C...
Processing and integrating soil map information from different regions into C...Processing and integrating soil map information from different regions into C...
Processing and integrating soil map information from different regions into C...
 
Photoshop tutorial
Photoshop tutorialPhotoshop tutorial
Photoshop tutorial
 
Image to sketch effect Step by Step Photoshop Tutorial
Image to sketch effect  Step by Step Photoshop Tutorial Image to sketch effect  Step by Step Photoshop Tutorial
Image to sketch effect Step by Step Photoshop Tutorial
 
MODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service SelectionMODAClouds Decision Support System for Cloud Service Selection
MODAClouds Decision Support System for Cloud Service Selection
 
Great depression 2010
Great depression 2010Great depression 2010
Great depression 2010
 
New Jersey Land Change Viewer
New Jersey Land Change ViewerNew Jersey Land Change Viewer
New Jersey Land Change Viewer
 
Week 2 base map
Week 2   base mapWeek 2   base map
Week 2 base map
 
How to Install Fonts in Photoshop
How to Install Fonts in PhotoshopHow to Install Fonts in Photoshop
How to Install Fonts in Photoshop
 
Ocean Globe, Ocean Geospatial Appliance
Ocean Globe, Ocean Geospatial ApplianceOcean Globe, Ocean Geospatial Appliance
Ocean Globe, Ocean Geospatial Appliance
 
6th Grade Social Studies Ancient Engineering
6th Grade Social Studies Ancient Engineering 6th Grade Social Studies Ancient Engineering
6th Grade Social Studies Ancient Engineering
 
How to Intensify Images in Photoshop
How to Intensify Images in PhotoshopHow to Intensify Images in Photoshop
How to Intensify Images in Photoshop
 
Vietnam...how did we get there
Vietnam...how did we get thereVietnam...how did we get there
Vietnam...how did we get there
 
Fist 2008
Fist 2008Fist 2008
Fist 2008
 
Russian Revolution Part 3
Russian Revolution Part 3Russian Revolution Part 3
Russian Revolution Part 3
 

Semelhante a Going Mobile with HTML5

2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush
2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush
2013 Vendor, MapQuest Plugins for Leaflet by Jonathan HarahushGIS in the Rockies
 
Saving Money with Open Source GIS
Saving Money with Open Source GISSaving Money with Open Source GIS
Saving Money with Open Source GISbryanluman
 
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...Esri Nederland
 
The Mobile Development Landscape
The Mobile Development LandscapeThe Mobile Development Landscape
The Mobile Development LandscapeAmbert Ho
 
The Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java DeveloperThe Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java Developerbalunasj
 
Coast gis talk
Coast gis talkCoast gis talk
Coast gis talkCarl Sack
 
Meetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech PeopleMeetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech PeopleIT Arena
 
Full stack development using javascript what and why - ajay chandravadiya
Full stack development using javascript   what and why - ajay chandravadiyaFull stack development using javascript   what and why - ajay chandravadiya
Full stack development using javascript what and why - ajay chandravadiyaajayrcgmail
 
Integrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsIntegrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsCommand Prompt., Inc
 
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesSXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesDaniel Appelquist
 
PEARC17: Live Integrated Visualization Environment: An Experiment in General...
PEARC17: Live Integrated Visualization Environment: An Experiment in General...PEARC17: Live Integrated Visualization Environment: An Experiment in General...
PEARC17: Live Integrated Visualization Environment: An Experiment in General...moneyjh
 
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)
Open web platform talk by daniel hladky at rif 2012 (19 april 2012   moscow)Open web platform talk by daniel hladky at rif 2012 (19 april 2012   moscow)
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)AI4BD GmbH
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Developing Efficient Web-based GIS Applications
Developing Efficient Web-based GIS ApplicationsDeveloping Efficient Web-based GIS Applications
Developing Efficient Web-based GIS ApplicationsSwetha A
 
State of the Map 2012 talk
State of the Map 2012 talkState of the Map 2012 talk
State of the Map 2012 talkWm Leler
 
NoSQL on the move
NoSQL on the moveNoSQL on the move
NoSQL on the moveCodemotion
 

Semelhante a Going Mobile with HTML5 (20)

2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush
2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush
2013 Vendor, MapQuest Plugins for Leaflet by Jonathan Harahush
 
Saving Money with Open Source GIS
Saving Money with Open Source GISSaving Money with Open Source GIS
Saving Money with Open Source GIS
 
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
Getting Started with the ArcGIS API for JavaScript, Esri, Julie Powell, Antoo...
 
The Mobile Development Landscape
The Mobile Development LandscapeThe Mobile Development Landscape
The Mobile Development Landscape
 
Mobile Web
Mobile WebMobile Web
Mobile Web
 
The Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java DeveloperThe Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java Developer
 
Coast gis talk
Coast gis talkCoast gis talk
Coast gis talk
 
Android quick talk
Android quick talkAndroid quick talk
Android quick talk
 
Meetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech PeopleMeetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech People
 
Full stack development using javascript what and why - ajay chandravadiya
Full stack development using javascript   what and why - ajay chandravadiyaFull stack development using javascript   what and why - ajay chandravadiya
Full stack development using javascript what and why - ajay chandravadiya
 
Integrating PostGIS in Web Applications
Integrating PostGIS in Web ApplicationsIntegrating PostGIS in Web Applications
Integrating PostGIS in Web Applications
 
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web RuntimesSXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
SXSW 2010 Future15 : Rise of Mobile, APIs and Web Runtimes
 
PEARC17: Live Integrated Visualization Environment: An Experiment in General...
PEARC17: Live Integrated Visualization Environment: An Experiment in General...PEARC17: Live Integrated Visualization Environment: An Experiment in General...
PEARC17: Live Integrated Visualization Environment: An Experiment in General...
 
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)
Open web platform talk by daniel hladky at rif 2012 (19 april 2012   moscow)Open web platform talk by daniel hladky at rif 2012 (19 april 2012   moscow)
Open web platform talk by daniel hladky at rif 2012 (19 april 2012 moscow)
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Web mapping
Web mappingWeb mapping
Web mapping
 
Developing Efficient Web-based GIS Applications
Developing Efficient Web-based GIS ApplicationsDeveloping Efficient Web-based GIS Applications
Developing Efficient Web-based GIS Applications
 
Node.js
Node.jsNode.js
Node.js
 
State of the Map 2012 talk
State of the Map 2012 talkState of the Map 2012 talk
State of the Map 2012 talk
 
NoSQL on the move
NoSQL on the moveNoSQL on the move
NoSQL on the move
 

Mais de John Reiser

Python and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowPython and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowJohn Reiser
 
Using Dashboards to Understand Spatial Data
Using Dashboards to Understand Spatial DataUsing Dashboards to Understand Spatial Data
Using Dashboards to Understand Spatial DataJohn Reiser
 
Python Programming and GIS
Python Programming and GISPython Programming and GIS
Python Programming and GISJohn Reiser
 
Portfolio Workshop
Portfolio WorkshopPortfolio Workshop
Portfolio WorkshopJohn Reiser
 
GIS Day at BCC 2012
GIS Day at BCC 2012GIS Day at BCC 2012
GIS Day at BCC 2012John Reiser
 
Introduction to 3D Data
Introduction to 3D DataIntroduction to 3D Data
Introduction to 3D DataJohn Reiser
 
Data Models - GIS I
Data Models - GIS IData Models - GIS I
Data Models - GIS IJohn Reiser
 
Network Analysis in ArcGIS
Network Analysis in ArcGISNetwork Analysis in ArcGIS
Network Analysis in ArcGISJohn Reiser
 
Classification Systems
Classification SystemsClassification Systems
Classification SystemsJohn Reiser
 
Measurement and Scale
Measurement and ScaleMeasurement and Scale
Measurement and ScaleJohn Reiser
 
Intro to GIS and Remote Sensing
Intro to GIS and Remote SensingIntro to GIS and Remote Sensing
Intro to GIS and Remote SensingJohn Reiser
 
Getting your Data Out There: An Introduction to Distributed GIS
Getting your Data Out There:An Introduction to Distributed GISGetting your Data Out There:An Introduction to Distributed GIS
Getting your Data Out There: An Introduction to Distributed GISJohn Reiser
 
IMGIS - Brief History of Mapping
IMGIS - Brief History of MappingIMGIS - Brief History of Mapping
IMGIS - Brief History of MappingJohn Reiser
 
Internet-enabled GIS - Spring 2011
Internet-enabled GIS - Spring 2011Internet-enabled GIS - Spring 2011
Internet-enabled GIS - Spring 2011John Reiser
 
Internet-enabled GIS for Planners
Internet-enabled GIS for PlannersInternet-enabled GIS for Planners
Internet-enabled GIS for PlannersJohn Reiser
 

Mais de John Reiser (20)

Python and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowPython and GIS: Improving Your Workflow
Python and GIS: Improving Your Workflow
 
Using Dashboards to Understand Spatial Data
Using Dashboards to Understand Spatial DataUsing Dashboards to Understand Spatial Data
Using Dashboards to Understand Spatial Data
 
Python Programming and GIS
Python Programming and GISPython Programming and GIS
Python Programming and GIS
 
Portfolio Workshop
Portfolio WorkshopPortfolio Workshop
Portfolio Workshop
 
GIS Day at BCC 2012
GIS Day at BCC 2012GIS Day at BCC 2012
GIS Day at BCC 2012
 
Introduction to 3D Data
Introduction to 3D DataIntroduction to 3D Data
Introduction to 3D Data
 
GPS - Fall 2011
GPS - Fall 2011GPS - Fall 2011
GPS - Fall 2011
 
Data Models - GIS I
Data Models - GIS IData Models - GIS I
Data Models - GIS I
 
Network Analysis in ArcGIS
Network Analysis in ArcGISNetwork Analysis in ArcGIS
Network Analysis in ArcGIS
 
Classification Systems
Classification SystemsClassification Systems
Classification Systems
 
Measurement and Scale
Measurement and ScaleMeasurement and Scale
Measurement and Scale
 
Map Projections
Map ProjectionsMap Projections
Map Projections
 
Geodatabases
GeodatabasesGeodatabases
Geodatabases
 
GIS Modeling
GIS ModelingGIS Modeling
GIS Modeling
 
Intro to GIS and Remote Sensing
Intro to GIS and Remote SensingIntro to GIS and Remote Sensing
Intro to GIS and Remote Sensing
 
GIS Data Types
GIS Data TypesGIS Data Types
GIS Data Types
 
Getting your Data Out There: An Introduction to Distributed GIS
Getting your Data Out There:An Introduction to Distributed GISGetting your Data Out There:An Introduction to Distributed GIS
Getting your Data Out There: An Introduction to Distributed GIS
 
IMGIS - Brief History of Mapping
IMGIS - Brief History of MappingIMGIS - Brief History of Mapping
IMGIS - Brief History of Mapping
 
Internet-enabled GIS - Spring 2011
Internet-enabled GIS - Spring 2011Internet-enabled GIS - Spring 2011
Internet-enabled GIS - Spring 2011
 
Internet-enabled GIS for Planners
Internet-enabled GIS for PlannersInternet-enabled GIS for Planners
Internet-enabled GIS for Planners
 

Último

Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 

Último (20)

Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 

Going Mobile with HTML5

  • 1. Follow along! http://njgeo.org/html5mobile/
  • 2. Going mobile with John Reiser Geospatial Research Lab http://gis.rowan.edu/
  • 3. Overview • Introduction to & quick history of HTML5 • Some mobile mapping inspiration • A look at the HTML5 mapping APIs • Locating your users using geolocation • Data formats used on the web • Map Tiles and the Web Mercator projection • Thoughts on designing for mobile • Questions
  • 4. What is HTML5? • HTML5 is the latest version of the structured document language of the Web. • HTML5 is a set of specifications, dealing document structure as well as with component parts such as JavaScript, stylesheets, audiovisuals, and mobile-specific functionality. • Broad support for HTML5 across desktop and mobile browsers.
  • 5. Quick history of HTML • Began as a means to cross-reference research. • First web servers & browsers appear in the early 1990s. • W3C formed in 1994 to define standards for HTML and HTTP. • Standards ignored as commercial browsers race for new functionality. • HTML 4 became the standard in 1998.
  • 6. Rise of HTML5 • In response to high rate of errors in HTML pages, XHTML was defined. • XHTML was adopted by browsers, but many pages “upgraded” by incorporating new features but not declaring themselves as XHTML. • W3C continued work on XHTML2. • A new group, WHATWG, formed to push for interoperable web applications. • In 2006, W3C began working with WHATWG.
  • 7. All about applications • Subsequent progress on HTML5 worked toward developing Web Applications that would work across browsers. – New form fields – Greater, yet secure, access via browsers – Support for more media & functionality – Performance – Emphasis on mobile
  • 9. HTML5 for Mobile • HTML5 support is nearly the same between desktop browsers and their mobile equivalents. • Functionality differs due to the nature of the device; smaller form factor and varying levels of support across mobile platforms. • Despite this, the majority of web pages written in HTML5 will appear and function in a similar fashion.
  • 10. Why not Native apps? • Native applications have their place in the mobile ecosystem. • Device-specific functionality may be required of an application. • HTML5 functionality is gaining support across mobile devices. • The list of reasons why native apps are superior to HTML5 is shrinking.
  • 13.
  • 14. What do you need to get started?
  • 16. Mapping with HTML5 • The interactive nature of web maps are due to JavaScript. • You can have an HTML5 map within minutes due to the multiple JS libraries available. • There are also several general JS libraries, such as JQuery, which provide functions for cross platform capability and can aid you in your programming tasks. • JQuery Mobile is what is behind the presentation companion site.
  • 19. The Weather Channel • Basic map, very little functionality. • Temporal data; looped animation of previous weather conditions. • Elegant, custom layer switcher. • Experience using the map matches the rest of the website.
  • 20. Texas Wildfire Risk Assessment http://www.texaswildfirerisk.com/
  • 21. TxWRAP • Access to the same data available via the Desktop version. • Wildfires bring with the possibility of evacuations. • Making this data available to the public & the emergency responders benefits both parties.
  • 23. Rowan SpaceFinder! • Locates rooms on Rowan University’s Glassboro campus. • Designed for mobile, but works on desktop. • Provides access to a large amount of data, but still responsive.
  • 24. Demo: Real-Time Hazard Console http://node.dtsagile.com/
  • 25. Real-Time Hazards • Demonstrates the networking capabilities of HTML5. • Updates from any viewer are then pushed out to all other viewers. • Uses Node.js and Socket.io to provide the real-time updates.
  • 26. Which API is right for you?
  • 27. ArcGIS JS API Mapquest Bing Maps OpenLayers Modest Maps HTML5 Mapping APIs Yahoo! Maps Polymaps Leaflet Mapstraction Nokia Maps Google Maps
  • 29. Google Maps • Google Maps is currently the most popular web mapping API. • Provides base maps & imagery, geocoding services, XML-based data parsing. • Free to use, usage fees for higher traffic users. • Many, many resources available for implementing custom functionality.
  • 30. Google Maps • Pros – start quickly – a small set of data – services like geocoding, traffic, Stree tView, and elevation profiles • Cons – Closed source – Free, to a point
  • 32. OpenLayers • OpenLayers provides the most highest degree of support for different data formats and projections. • Amazing amount of functionality out of the box. • Is open source software. • You must provide your own data; base maps not included. • Largest in terms of library size.
  • 33. OpenLayers • Pros – Very powerful and extensible – Huge example library to help you get started – Supports projections – Editing tools built in • Cons – Codebase is very large – Does not include any services or base maps; you provide the data
  • 35. Leaflet • Leaflet is developed by CloudMade. • Leaflet is open source. • OpenStreetMap derived basemaps available through CloudMade. • Lightweight. • Easy to understand. • Several helper functions, but you may need to write your own code.
  • 36. Leaflet • Pros – Very responsive – Lightweight – Basemaps available – Geocoding and routing services available • Cons – API does not include a nearly as much out-of- the-box functionality as either GMaps or OpenLayers
  • 38. Additional JS Libraries • These additional JS libraries can aid in cross-browser support and quicker development times. – JQuery – Prototype – Dojo • JQuery Mobile is used to power the companion site.
  • 39. Geolocation http://datenform.de/mapeng.html
  • 40. Geolocation • HTML5 supports physical location of the device through the navigator.geolocation object. • If it exists, you have some geolocation abilities. • Three methods: – getCurrentPosition – get once – watchPosition – get continuously – clearWatch • Methods called asynchronously, passing a Position object.
  • 41. Position • The Position object returned contains two components: – Coordinates object • latitude • longitude • accuracy • altitude • altitudeAccuracy • heading • speed – Timestamp
  • 42. Geolocation Demo • Fields will continue to update as you move around (or as accuracy improves) • watchPosition called on page load • clearWatch called when Back button is pressed
  • 43. Other Mobile Sensors • HTML5 Device Access also exposes additional data in JavaScript – Compass/Magnetomet er – Accelerometer – Device Orientation • These can be combined to provide a richer, location-based http://flickr.com/photos/marcoarment/1955464307/ mobile experience.
  • 45. Web-friendly Formats • Many traditional GIS formats are not ideal for transmission via the Internet. – Shapefiles and Coverages are composed of several different files with rigid relative structure. – Rasters come in common formats (JPEG) but are often far larger in size than commonly encountered. – Often, users only request a localized portion of the data. Location specific retrieval is not possible with most formats.
  • 46. Accessing GIS via Web Services • Requests using Web Services allows GIS servers to receive queries for specific data, filtering by location or attribute. • The entire data set could be pushed back to the client, but this is not required. • Making a request to OSM like so: http://www.openstreetmap.org/api/0.6/map?bbox=- 75.120765,39.710157,-75.119697,39.710953 returns data within the bounding box defined.
  • 47. Data formats on the Web
  • 48. eXtensible Markup Language • XML is an open, text- based interchange format. • Human readable, but greater emphasis on machine parsing. • HTML and XML are closely related. • Many Web GIS data formats based on XML.
  • 49. JSON • JavaScript Object Notation is a open data format based on how JavaScript objects are recorded. • Great as a web-based data interchange format. • Text based, human readable.
  • 50. GeoJSON • GeoJSON is JSON that is specifically structured to represent geographic information. • Specific keys: – geometry – properties (attributes) – crs (projection info) • Still text based & human readable.
  • 51. AJAX • Asynchronous JavaScript and XML is a technique by which web applications make additional requests for data. • Typically, after the page is loaded within the browser, any open connections are closed until the user navigates to the next page. • AJAX allows for additional data requests that occur in the background. • Background connections allow the rest of the page to function and to not require user input.
  • 52. AJAX • While XML is in the name, JSON is often used. • The browser can incorporate the data received into the currently displayed page. • Data could be continuously updated and pushed back to the browser on a regular basis. • The browser can also receive user feedback and send the data asynchronously back to the server.
  • 53. These formats work for features, but what about rasters?
  • 55.
  • 56.
  • 57. Web Mercator • Yet another mark of Google’s influence on web mapping is the common projection that most web mapping applications use today. • Based on a spherical model of the Earth, Web Mercator reprojects the planet (minus the poles) into a square.
  • 58. Why Web Mercator? • While cartographers might bemoan the distortion associated with Mercator, a projection that preserves shape allows for a fixed set of zoom levels. • Pre-Google Maps, there were very few attempts to define an open structure for map tiling. • Serving static map images from disk will always be faster than rendering images from GIS data.
  • 59. Web Mercator • This enables division of the planet into increasingly smaller squares. • These square tiles can then be served using a static web server, using a defined directory structure. • example.com/z/x/y.png
  • 61. Cache Creation • There are two predominate methods for populating a tile cache with map tiles. – Direct: using a desktop computer to generate the tiles from a GIS, storing them locally or remotely. • Arc2Earth, TileMill are two direct tile producers. – Intermediary: using middle-man software that passes on requests to a GIS server while creating and managing the cache. • TileCache and GeoWebCache are two intermediaries.
  • 62. Number of Levels • You want to render only the levels needed for your application. • Number of tiles quadruple as the zoom level increases. • Limit the zoom levels of your map to what is appropriate. • Specify the tile ordering scheme.
  • 63. Caching Schemes • Precache – render the map tiles for a given extent or zoom level(s) before deployment. • Cache on demand – only cache areas at high zoom levels when the first request is made. – Stamen’s Watercolor map tiles are cached to a certain level, then drawn as needed. – Using a CDN (like Amazon CloudFront) prevents you from handling on-demand requests. • Cache only in your area of focus. • Cache only areas with data.
  • 64. Caching On Demand GIS Caching Web Server Software Map Map Tile does not exist: Cach GDB Rendered then stored. e GIS Caching Web Server Software Map Map Tile does exist: Cach GDB Pre-rendered tile returned. e
  • 65. “Rendering the World” https://speakerdeck.com/u/yhahn
  • 67. @kelsosCorner & @stamen http://sta.mn/py6
  • 68. I’ve got my map and my data, now what?
  • 70. User Interface • HTML5 comes with no required UI or human- interaction guidelines. • Your applications can be designed however you see fit. • With mapping applications, one might be tempted to look to the desktop for inspiration.
  • 72. GUI Interaction Methods • Desktop interfaces follow the WIMP model. – Windows, icons, menus, pointer • Mobile devices break from this model. • Touch changes the way we interact with devices. • Our familiarity with WIMP interfaces is learned.
  • 73.
  • 76.
  • 77. Desktop GIS UI • Desktop GIS has been saddled with the same UI baggage. • Initially command line, but then the WIMP interface came along and all GIS applications followed suit. • Does not work for a mobile environment.
  • 78.
  • 79. When designing your mobile applications, throw out everything you know about Desktop GIS.
  • 80. Moving your data online is about getting the broadest audience possible.
  • 81. HTML5 can adapt to a variety of desktop and mobile devices.
  • 82.
  • 83. Thank you! John Reiser Rowan University Campus GIS Specialist Geospatial Research reiser@rowan.edu Lab 856-256-4817 http://gis.rowan.edu/ @johnjreiser 856-256-4861 @rowangeolab

Notas do Editor

  1. HTML5 shifts away from ratifying what browser supported features are already implemented. Instead, the focus has been on introducing greater functionality. HTML 5 and supporting technology emphasizes a greater control over connectivity and performance, better support for offline storage of data, and advances in multimedia and 3D support. HTML5 also provides for greater access to the browser and device, including support for geolocation, device orientation, and sensors such as internal accelerometers.
  2. Well, that will get you started with an HTML5 document. So if you are looking to add additional functionality to an existing page, you will need to include this (or replace the existing) DTD at the very top of your pages. But in reality, it’s not that simple, we need some additional functionality that is provided by JavaScript.