SlideShare a Scribd company logo
1 of 56
Download to read offline
Building enterprise applications
with open source
Peter Batty
Ubisense
@pmbatty
• Brief background on our customers
• Our software stack and how we got there
• Business models
• Simplicity
• Field applications, online and offline
OVERVIEW
Photo by whalt - http://flic.kr/p/7D7rd
Figure 11: Conduits in an Undergr
 Underground utility boxes are the structures that provide a
conduits, examples of underground utility boxes include m
configurations of underground utility boxes can be created
seen below and to its right the butterfly diagram managed
19.Customers: utilities
and telcos
Photo by ☺ Lee J Haywood - http://flic.kr/p/7iX7f5
Sample cable data
Detailed asset maps from Smallworld
Sample cable data
Detailed asset maps from Smallworld, with live customer status
overlaid
Sample cable data
Detailed asset maps from Smallworld, with live customer status
overlaid
Sample cable data
Detailed asset maps from Smallworld, with live customer status
overlaid
SAMPLE CUSTOMER
• Large communications company with 6 million subscribers across
~20 states
• 23 geographic regions created for offline use – from one common
master database
• Offline databases vary from 136MB to 22GB
• Incremental updates applied to all offline databases nightly
• 5000 online users, ~400 offline users active so far, growing to 2000
• Weekly features updated ~2.3m total, ~250,000 largest region
Smallworld
flic.kr/p/7rnNAD
flic.kr/p/7NEJzF
Pervasive and Simple
Location is now
in consumer applications
Software stack
Version 1
Software stack
Version 2
Software stack
Version 3
Functionality Cost Support
Terms PredictabilityFlexibility
BUSINESS MODELS
• Sell support, services
• e.g. Boundless
• Sell hosting
• e.g. CartoDB, MapBox
• Hybrid closed and open source
• Google, Safe, Ubisense
SIMPLICITY
We are building applications for
the 95%of people in an organization who are not GIS users
20
“Deciding what not to
do is as important as
deciding what to do”
TOPICS
• Familiarity
• Panning and zooming
• Search (including queries)
• Minimal layers
• Focused applications
• Network links
• Rather than “trace”
FIELD APPLICATIONS
ONLINE AND OFFLINE
DEMO OVERVIEW
This presentation features screen shots that step through a demo of Ubisense
myWorld for damage assessment.The demo features two separate users:
Operations center user, with overview of
situation, including data from all field users
Damage assessor with laptop in the field,
capturing damage assessment data
Operations Center
Operations center overview map – currently all is
quiet, no damage shown
Damage Assessor in Field
Currently online
(wireless)
WiFi is on
Damage assessment user in the field, currently in
online mode (with wireless connection)
Damage Assessor in Field
Create damage pointDamage assessor creates damage assessment point in
the field
Damage Assessor in Field
Damage point is created in local database and
displayed on map on laptop
Operations Center
Syncs to operations center within ~1 minute, damage point
displayed and overview map updated
Damage Assessor in Field
Offline
WiFi is off
Back in the field, we are now in offline mode (wireless
connection is lost). Google Map has disappeared here.
Damage Assessor in Field
Now we are displaying OpenStreetMap as an offline map
instead of Google (which can’t be used offline)
Damage Assessor in Field
In offline mode, we can continue to display maps, select
objects, and search for assets
Damage Assessor in Field
We can also continue to create damage points while in
offline mode (which are stored locally)
Damage Assessor in Field
We have now created two more damage points offline
Operations Center
Back in the operations center, we still just see the single
damage point at the moment
Damage Assessor in Field
Online
WiFi is on
Now the field laptop has a network connection again and is
back online, so the damage data can sync
Operations Center
The data has synced and so we now see three damage
points back in the operations center.
Operations Center
We can report on the damage points and get aggregate
information
Field users can also use tablets like iPad or Android, which
support taking photos.
Take a photo on the
iPad
Operations Center
Operations Center also gets immediate visibility of photo (assuming user online)
Photos can also be emailed in from any smart phone
OFFLINE REQUIREMENTS
• Cross platform
• Android, iOS,Windows 7 onwards (and web)
• Need ability to sync large datasets (gigabytes) for some
situations
• In other situations may be able to use smaller datasets (for
single job, like walking an electrical circuit)
DATABASE SYNC
• Sync of bulk GIS data
• Initially read only for short term applications
• Typically want to do nightly over non-cellular connection
• Time critical data like damage assessment
• Want to sync as soon as possible (two way)
• Needs to connect / disconnect / sync transparently
APPROACHESTO MOBILE
DEVELOPMENT
THREE ARCHITECTURESTRIED
PostGIS
Mapfish
Offline
storage
SpatiaLite
JavaScript
Replication Caching
ARCHITECTURE 1

LAPTOP REPLICA
PostGIS
Mapfish
Windows (or Linux or Mac) only
Use identical software stack to main
server
Need custom replication - haven’t
found PostgreSQL replication for
sometimes disconnected model
Pros: Simplest to implement
Cons: Laptop only, heavyweight
REPLICA CONCEPT
Master database
Local database
Potentially multiple
gigabytes 

(raster tiles)
Incremental update
is important
Full or partial
(spatial) replica
ARCHITECTURE 2
CORDOVA REPLICA
• Have our web application running offline 

on Android and iOS
• Replaced PostGIS with SQLite - for geometry and attributes,
and also tiles
• Wrote JavaScript wrappers to replace (basic) MapFish services
offline
• Refactored code so small number of classes contain differences
between online and offline - tile and database access
ARCHITECTURE
PostGIS
MapFish
(REST API)
SQLite
(mbTiles)
Tile server
myWorld client
Leaflet
myWorld server (Python)
SpatiaLite
JavaScript
wrappers
SQLite
(mbTiles)
Tile server
myWorld client
Leaflet
myWorld server (JavaScript)
ONLINE OFFLINE
CAUTION WITH IOS
• Apple terms and conditions regarding approval and software
distribution can be a major pain
• All code, and all changes, need to be reviewed by Apple - even
for testing (this has tightened up recently, since they bought
TestFlight)
• If you need custom apps for individual customers there is a
separate Enterprise Developer Program orVolume Purchase
Program, which each have their own complications
“ADVANCED HYBRID”
APPROACH
Higher level HTML & JavaScript code
Includes myWorld core, plus any
applications and customizations
Sync common code package to each
device as needed
Use Cordova to create single executable for
each platform (Electron on Windows 7)
Low level code
Handles data storage and access using
SQLite, and Web View which is a container
for HTML & JavaScript code
ARCHITECTURE 3
HTML5 OFFLINE
• Cache smaller amounts of data using

HTML5 offline capabilities
• More dynamic and easier to deploy

than bulk replication
HTML5 SUMMARY
• Tried various approaches including caching individual tiles,
caching mbTiles files and reading then with sql.js, caching
geoJSON
• LargeLocalStorage was a useful library
• Worked reasonably well for small data volumes
• But a number of issues including limitations on data size,
inconsistency across browsers, general flakiness, and inability to
manage offline data directly within the application
OFFLINE SUMMARY
• It will be great when we have universal wireless coverage!
• Today, offline is still harder than you would hope
• Large scale robust sync for enterprises is not rocket science,
but a lot of detailed work to do well
• HTML5 caching has a lot of promise, is workable in some
scenarios today, but still not quite fully baked
• We have gone with Cordova which gives you much more
control over local storage, and most of the benefits of HTML5
OVERALL SUMMARY
• We have built a very robust enterprise web and mobile
geospatial product based on open source foundations
including PostGIS, GeoServer, Leaflet, SpatiaLite and Cordova
• We have completed large implementations in several top 10
utility and telecommunications companies, in conservative IT
environments
• Our experience with all the open source technology we’ve
used has been great
?

More Related Content

What's hot

The Geospatial Revolution in Copenhagen
The Geospatial Revolution in CopenhagenThe Geospatial Revolution in Copenhagen
The Geospatial Revolution in CopenhagenPeter Batty
 
Power AI for Earth Observation Data
Power AI for Earth Observation DataPower AI for Earth Observation Data
Power AI for Earth Observation DataMartin Svik
 
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...Edge AI and Vision Alliance
 
The Mobile Future of Extended Reality
The Mobile Future of Extended RealityThe Mobile Future of Extended Reality
The Mobile Future of Extended RealityQualcomm Research
 
Tackling "BIG Data": Mobile LiDAR Transportation Project Use Case
Tackling "BIG Data": Mobile LiDAR Transportation Project Use CaseTackling "BIG Data": Mobile LiDAR Transportation Project Use Case
Tackling "BIG Data": Mobile LiDAR Transportation Project Use CaseMerrick & Company
 
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles Ng
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles NgSE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles Ng
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles NgAMD Developer Central
 
Junli Gu at AI Frontiers: Autonomous Driving Revolution
Junli Gu at AI Frontiers: Autonomous Driving RevolutionJunli Gu at AI Frontiers: Autonomous Driving Revolution
Junli Gu at AI Frontiers: Autonomous Driving RevolutionAI Frontiers
 
Deep learning for smart manufacturing
Deep learning for smart manufacturingDeep learning for smart manufacturing
Deep learning for smart manufacturingSunil Kumar Pradhan
 
IoT Meets Geo
IoT Meets GeoIoT Meets Geo
IoT Meets GeoRaj Singh
 
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...Codemotion
 
NVIDIA Overview 2015
NVIDIA Overview 2015NVIDIA Overview 2015
NVIDIA Overview 2015NVIDIA
 
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...Edge AI and Vision Alliance
 
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro..."High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...Edge AI and Vision Alliance
 
"Is Vision the New Wireless?," a Presentation from Qualcomm
"Is Vision the New Wireless?," a Presentation from Qualcomm"Is Vision the New Wireless?," a Presentation from Qualcomm
"Is Vision the New Wireless?," a Presentation from QualcommEdge AI and Vision Alliance
 
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...Edge AI and Vision Alliance
 
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ..."Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...Edge AI and Vision Alliance
 
DRCOG: The Geospatial Revolution Peter Batty
DRCOG: The Geospatial Revolution Peter BattyDRCOG: The Geospatial Revolution Peter Batty
DRCOG: The Geospatial Revolution Peter BattyPeter Batty
 
Minnesota GIS/LIS The Geospatial Revolution Peter Batty
Minnesota GIS/LIS The Geospatial Revolution Peter BattyMinnesota GIS/LIS The Geospatial Revolution Peter Batty
Minnesota GIS/LIS The Geospatial Revolution Peter BattyPeter Batty
 

What's hot (19)

The Geospatial Revolution in Copenhagen
The Geospatial Revolution in CopenhagenThe Geospatial Revolution in Copenhagen
The Geospatial Revolution in Copenhagen
 
Power AI for Earth Observation Data
Power AI for Earth Observation DataPower AI for Earth Observation Data
Power AI for Earth Observation Data
 
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...
“Alternative Image Sensors for Intelligent In-Cabin Monitoring, Home Security...
 
The Mobile Future of Extended Reality
The Mobile Future of Extended RealityThe Mobile Future of Extended Reality
The Mobile Future of Extended Reality
 
Tackling "BIG Data": Mobile LiDAR Transportation Project Use Case
Tackling "BIG Data": Mobile LiDAR Transportation Project Use CaseTackling "BIG Data": Mobile LiDAR Transportation Project Use Case
Tackling "BIG Data": Mobile LiDAR Transportation Project Use Case
 
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles Ng
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles NgSE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles Ng
SE-4061, Low Power Yet Robust Biometric Fingerprint Technology, by Charles Ng
 
Junli Gu at AI Frontiers: Autonomous Driving Revolution
Junli Gu at AI Frontiers: Autonomous Driving RevolutionJunli Gu at AI Frontiers: Autonomous Driving Revolution
Junli Gu at AI Frontiers: Autonomous Driving Revolution
 
Deep learning for smart manufacturing
Deep learning for smart manufacturingDeep learning for smart manufacturing
Deep learning for smart manufacturing
 
IoT Meets Geo
IoT Meets GeoIoT Meets Geo
IoT Meets Geo
 
NVIDIA DataArt IT
NVIDIA DataArt ITNVIDIA DataArt IT
NVIDIA DataArt IT
 
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...
Drones Collaboration and IoT enabling digitalization of sensors - Angelo Fien...
 
NVIDIA Overview 2015
NVIDIA Overview 2015NVIDIA Overview 2015
NVIDIA Overview 2015
 
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...
“Certifying Neural Networks for Autonomous Flight,” a Presentation from Daeda...
 
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro..."High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
"High-resolution 3D Reconstruction on a Mobile Processor," a Presentation fro...
 
"Is Vision the New Wireless?," a Presentation from Qualcomm
"Is Vision the New Wireless?," a Presentation from Qualcomm"Is Vision the New Wireless?," a Presentation from Qualcomm
"Is Vision the New Wireless?," a Presentation from Qualcomm
 
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...
“Secure Hardware Architecture for Embedded Vision,” a Presentation from Neuro...
 
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ..."Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...
"Memory Innovation for Embedded Vision Systems," a Presentation from Samsung ...
 
DRCOG: The Geospatial Revolution Peter Batty
DRCOG: The Geospatial Revolution Peter BattyDRCOG: The Geospatial Revolution Peter Batty
DRCOG: The Geospatial Revolution Peter Batty
 
Minnesota GIS/LIS The Geospatial Revolution Peter Batty
Minnesota GIS/LIS The Geospatial Revolution Peter BattyMinnesota GIS/LIS The Geospatial Revolution Peter Batty
Minnesota GIS/LIS The Geospatial Revolution Peter Batty
 

Viewers also liked

20161027 scala io_keynote
20161027 scala io_keynote20161027 scala io_keynote
20161027 scala io_keynoteshinolajla
 
Open Source Ecosystem Future of Enterprise IT
Open Source Ecosystem Future of Enterprise ITOpen Source Ecosystem Future of Enterprise IT
Open Source Ecosystem Future of Enterprise ITandreas kuncoro
 
Create Spatialite Database Using Quantum GIS
Create Spatialite Database Using Quantum GISCreate Spatialite Database Using Quantum GIS
Create Spatialite Database Using Quantum GISbramantiyo marjuki
 
Come with an idea - go home with a web map: Tools for sharing maps and vector...
Come with an idea - go home with a web map: Tools for sharing maps and vector...Come with an idea - go home with a web map: Tools for sharing maps and vector...
Come with an idea - go home with a web map: Tools for sharing maps and vector...Stefan Keller
 
RTLS in Aerospace Manufacturing
RTLS in Aerospace ManufacturingRTLS in Aerospace Manufacturing
RTLS in Aerospace ManufacturingPeter Batty
 
To G or not to G
To G or not to GTo G or not to G
To G or not to GPeter Batty
 
Smallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsSmallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsPeter Batty
 
Enterprise integration options with Smallworld
Enterprise integration options with SmallworldEnterprise integration options with Smallworld
Enterprise integration options with SmallworldPeter Batty
 
Open Source Powers Enterprise Digital Transformation
Open Source Powers Enterprise Digital TransformationOpen Source Powers Enterprise Digital Transformation
Open Source Powers Enterprise Digital Transformationandreas kuncoro
 
Open source software support for the enterprise
Open source software support for the enterpriseOpen source software support for the enterprise
Open source software support for the enterpriseRogue Wave Software
 
Getting Started with PostGIS
Getting Started with PostGISGetting Started with PostGIS
Getting Started with PostGISEDB
 
LBJ2016オープンステージスライド
LBJ2016オープンステージスライドLBJ2016オープンステージスライド
LBJ2016オープンステージスライドKurata Takeshi
 
What is spatial sql
What is spatial sqlWhat is spatial sql
What is spatial sqlshawty_ds
 
Inner Source: Enterprise Lessons from the Open Source Community.
Inner Source: Enterprise Lessons from the Open Source Community.Inner Source: Enterprise Lessons from the Open Source Community.
Inner Source: Enterprise Lessons from the Open Source Community.Jim Jagielski
 
Intro To PostGIS
Intro To PostGISIntro To PostGIS
Intro To PostGISmleslie
 
Spatial query tutorial for nyc subway income level along subway
Spatial query tutorial  for nyc subway income level along subwaySpatial query tutorial  for nyc subway income level along subway
Spatial query tutorial for nyc subway income level along subwayVivian S. Zhang
 
IIA4: Open Source and the Enterprise ( Predix Transform 2016)
IIA4: Open Source and the Enterprise ( Predix Transform 2016)IIA4: Open Source and the Enterprise ( Predix Transform 2016)
IIA4: Open Source and the Enterprise ( Predix Transform 2016)Predix
 

Viewers also liked (20)

20161027 scala io_keynote
20161027 scala io_keynote20161027 scala io_keynote
20161027 scala io_keynote
 
Open Source Ecosystem Future of Enterprise IT
Open Source Ecosystem Future of Enterprise ITOpen Source Ecosystem Future of Enterprise IT
Open Source Ecosystem Future of Enterprise IT
 
Create Spatialite Database Using Quantum GIS
Create Spatialite Database Using Quantum GISCreate Spatialite Database Using Quantum GIS
Create Spatialite Database Using Quantum GIS
 
Come with an idea - go home with a web map: Tools for sharing maps and vector...
Come with an idea - go home with a web map: Tools for sharing maps and vector...Come with an idea - go home with a web map: Tools for sharing maps and vector...
Come with an idea - go home with a web map: Tools for sharing maps and vector...
 
RTLS in Aerospace Manufacturing
RTLS in Aerospace ManufacturingRTLS in Aerospace Manufacturing
RTLS in Aerospace Manufacturing
 
To G or not to G
To G or not to GTo G or not to G
To G or not to G
 
Smallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsSmallworld and Google: the best of both worlds
Smallworld and Google: the best of both worlds
 
Enterprise integration options with Smallworld
Enterprise integration options with SmallworldEnterprise integration options with Smallworld
Enterprise integration options with Smallworld
 
IoT13: Click slide showcase
IoT13: Click slide showcaseIoT13: Click slide showcase
IoT13: Click slide showcase
 
Open Source Powers Enterprise Digital Transformation
Open Source Powers Enterprise Digital TransformationOpen Source Powers Enterprise Digital Transformation
Open Source Powers Enterprise Digital Transformation
 
Open source software support for the enterprise
Open source software support for the enterpriseOpen source software support for the enterprise
Open source software support for the enterprise
 
Day 6 - PostGIS
Day 6 - PostGISDay 6 - PostGIS
Day 6 - PostGIS
 
Getting Started with PostGIS
Getting Started with PostGISGetting Started with PostGIS
Getting Started with PostGIS
 
LBJ2016オープンステージスライド
LBJ2016オープンステージスライドLBJ2016オープンステージスライド
LBJ2016オープンステージスライド
 
What is spatial sql
What is spatial sqlWhat is spatial sql
What is spatial sql
 
Andy ward ubisense vorsprung durch iot
Andy ward ubisense vorsprung durch iotAndy ward ubisense vorsprung durch iot
Andy ward ubisense vorsprung durch iot
 
Inner Source: Enterprise Lessons from the Open Source Community.
Inner Source: Enterprise Lessons from the Open Source Community.Inner Source: Enterprise Lessons from the Open Source Community.
Inner Source: Enterprise Lessons from the Open Source Community.
 
Intro To PostGIS
Intro To PostGISIntro To PostGIS
Intro To PostGIS
 
Spatial query tutorial for nyc subway income level along subway
Spatial query tutorial  for nyc subway income level along subwaySpatial query tutorial  for nyc subway income level along subway
Spatial query tutorial for nyc subway income level along subway
 
IIA4: Open Source and the Enterprise ( Predix Transform 2016)
IIA4: Open Source and the Enterprise ( Predix Transform 2016)IIA4: Open Source and the Enterprise ( Predix Transform 2016)
IIA4: Open Source and the Enterprise ( Predix Transform 2016)
 

Similar to Building enterprise applications using open source

Batty consumerization of geospatial
Batty consumerization of geospatialBatty consumerization of geospatial
Batty consumerization of geospatialGeCo in the Rockies
 
Performance Testing in a Mobile World
Performance Testing in a Mobile WorldPerformance Testing in a Mobile World
Performance Testing in a Mobile Worldstuartmoncrieff
 
"Going Offline", one of the hottest mobile app trends
"Going Offline", one of the hottest mobile app trends"Going Offline", one of the hottest mobile app trends
"Going Offline", one of the hottest mobile app trendsDerek Baron
 
redpill Mobile Case Study (Salvation Army)
redpill Mobile Case Study (Salvation Army)redpill Mobile Case Study (Salvation Army)
redpill Mobile Case Study (Salvation Army)Peter Presnell
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...darwinodb
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)Jonathan Engelsma
 
wireless notice board
 wireless notice board wireless notice board
wireless notice boardAnmol Purohit
 
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanApplication Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanOpenNebula Project
 
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...NoSQLmatters
 
Docker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge ComputingDocker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge ComputingBukhary Ikhwan Ismail
 
Presentation technical deep dive of horizon 6 and mirage 5
Presentation   technical deep dive of horizon 6 and mirage 5Presentation   technical deep dive of horizon 6 and mirage 5
Presentation technical deep dive of horizon 6 and mirage 5solarisyougood
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science PlatformDecision Science Community
 
Web-Based Lighting Automation System
Web-Based Lighting Automation SystemWeb-Based Lighting Automation System
Web-Based Lighting Automation SystemApoorva Chandra
 
Netek - On-screen Editing of Map Content via Web Browser in Real Time
 Netek - On-screen Editing of Map Content via Web Browser in Real Time Netek - On-screen Editing of Map Content via Web Browser in Real Time
Netek - On-screen Editing of Map Content via Web Browser in Real Timeswenney
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkMegan O'Keefe
 

Similar to Building enterprise applications using open source (20)

Batty consumerization of geospatial
Batty consumerization of geospatialBatty consumerization of geospatial
Batty consumerization of geospatial
 
Lick my Lollipop
Lick my LollipopLick my Lollipop
Lick my Lollipop
 
Performance Testing in a Mobile World
Performance Testing in a Mobile WorldPerformance Testing in a Mobile World
Performance Testing in a Mobile World
 
"Going Offline", one of the hottest mobile app trends
"Going Offline", one of the hottest mobile app trends"Going Offline", one of the hottest mobile app trends
"Going Offline", one of the hottest mobile app trends
 
redpill Mobile Case Study (Salvation Army)
redpill Mobile Case Study (Salvation Army)redpill Mobile Case Study (Salvation Army)
redpill Mobile Case Study (Salvation Army)
 
Service worker API
Service worker APIService worker API
Service worker API
 
Android Lollipop
Android LollipopAndroid Lollipop
Android Lollipop
 
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
IBM ConnectED SPOT104: Lightning-Fast Development of Native Mobile Apps for I...
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
 
wireless notice board
 wireless notice board wireless notice board
wireless notice board
 
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanApplication Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...
Glynn Bird – Cloudant – Building applications for success.- NoSQL matters Bar...
 
Docker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge ComputingDocker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge Computing
 
Presentation technical deep dive of horizon 6 and mirage 5
Presentation   technical deep dive of horizon 6 and mirage 5Presentation   technical deep dive of horizon 6 and mirage 5
Presentation technical deep dive of horizon 6 and mirage 5
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
Web-Based Lighting Automation System
Web-Based Lighting Automation SystemWeb-Based Lighting Automation System
Web-Based Lighting Automation System
 
CloudBerry
CloudBerryCloudBerry
CloudBerry
 
Netek - On-screen Editing of Map Content via Web Browser in Real Time
 Netek - On-screen Editing of Map Content via Web Browser in Real Time Netek - On-screen Editing of Map Content via Web Browser in Real Time
Netek - On-screen Editing of Map Content via Web Browser in Real Time
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the network
 

More from Peter Batty

FOSS4G NA 2016 review
FOSS4G NA 2016 reviewFOSS4G NA 2016 review
FOSS4G NA 2016 reviewPeter Batty
 
FOSS4G opening session
FOSS4G opening sessionFOSS4G opening session
FOSS4G opening sessionPeter Batty
 
OpenStreetMap Past, Present and Future
OpenStreetMap Past, Present and FutureOpenStreetMap Past, Present and Future
OpenStreetMap Past, Present and FuturePeter Batty
 
What's new with OpenStreetMap
What's new with OpenStreetMapWhat's new with OpenStreetMap
What's new with OpenStreetMapPeter Batty
 
Precision (Indoor) Real Time Location Systems
Precision (Indoor) Real Time Location SystemsPrecision (Indoor) Real Time Location Systems
Precision (Indoor) Real Time Location SystemsPeter Batty
 
myWorld Overview May 2011
myWorld Overview May 2011myWorld Overview May 2011
myWorld Overview May 2011Peter Batty
 
GITA keynote 2011 v2
GITA keynote 2011 v2GITA keynote 2011 v2
GITA keynote 2011 v2Peter Batty
 
Geo in the cloud
Geo in the cloudGeo in the cloud
Geo in the cloudPeter Batty
 
The Geospatial Revolution ANZ 2010
The Geospatial Revolution ANZ 2010The Geospatial Revolution ANZ 2010
The Geospatial Revolution ANZ 2010Peter Batty
 
W3G: Don't make me think!
W3G: Don't make me think!W3G: Don't make me think!
W3G: Don't make me think!Peter Batty
 
GIS in the Rockies Geospatial Revolution
GIS in the Rockies Geospatial RevolutionGIS in the Rockies Geospatial Revolution
GIS in the Rockies Geospatial RevolutionPeter Batty
 
NCGIC The Geospatial Revolution
NCGIC The Geospatial RevolutionNCGIC The Geospatial Revolution
NCGIC The Geospatial RevolutionPeter Batty
 
Smallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsSmallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsPeter Batty
 
OpenStreetMap intro 2010 07
OpenStreetMap intro 2010 07OpenStreetMap intro 2010 07
OpenStreetMap intro 2010 07Peter Batty
 
AGI georant: The grass is always greener ... in defence of the Ordnance Survey
AGI georant: The grass is always greener ... in defence of the Ordnance SurveyAGI georant: The grass is always greener ... in defence of the Ordnance Survey
AGI georant: The grass is always greener ... in defence of the Ordnance SurveyPeter Batty
 
The Geospatial Revolution - AGI GeoCommunity keynote
The Geospatial Revolution - AGI GeoCommunity keynoteThe Geospatial Revolution - AGI GeoCommunity keynote
The Geospatial Revolution - AGI GeoCommunity keynotePeter Batty
 
WhereCamp5280 NeoGeoSchmeo
WhereCamp5280 NeoGeoSchmeoWhereCamp5280 NeoGeoSchmeo
WhereCamp5280 NeoGeoSchmeoPeter Batty
 
Building a new location-aware infrastructure for calendaring and scheduling
Building a new location-aware infrastructure for calendaring and schedulingBuilding a new location-aware infrastructure for calendaring and scheduling
Building a new location-aware infrastructure for calendaring and schedulingPeter Batty
 

More from Peter Batty (18)

FOSS4G NA 2016 review
FOSS4G NA 2016 reviewFOSS4G NA 2016 review
FOSS4G NA 2016 review
 
FOSS4G opening session
FOSS4G opening sessionFOSS4G opening session
FOSS4G opening session
 
OpenStreetMap Past, Present and Future
OpenStreetMap Past, Present and FutureOpenStreetMap Past, Present and Future
OpenStreetMap Past, Present and Future
 
What's new with OpenStreetMap
What's new with OpenStreetMapWhat's new with OpenStreetMap
What's new with OpenStreetMap
 
Precision (Indoor) Real Time Location Systems
Precision (Indoor) Real Time Location SystemsPrecision (Indoor) Real Time Location Systems
Precision (Indoor) Real Time Location Systems
 
myWorld Overview May 2011
myWorld Overview May 2011myWorld Overview May 2011
myWorld Overview May 2011
 
GITA keynote 2011 v2
GITA keynote 2011 v2GITA keynote 2011 v2
GITA keynote 2011 v2
 
Geo in the cloud
Geo in the cloudGeo in the cloud
Geo in the cloud
 
The Geospatial Revolution ANZ 2010
The Geospatial Revolution ANZ 2010The Geospatial Revolution ANZ 2010
The Geospatial Revolution ANZ 2010
 
W3G: Don't make me think!
W3G: Don't make me think!W3G: Don't make me think!
W3G: Don't make me think!
 
GIS in the Rockies Geospatial Revolution
GIS in the Rockies Geospatial RevolutionGIS in the Rockies Geospatial Revolution
GIS in the Rockies Geospatial Revolution
 
NCGIC The Geospatial Revolution
NCGIC The Geospatial RevolutionNCGIC The Geospatial Revolution
NCGIC The Geospatial Revolution
 
Smallworld and Google: the best of both worlds
Smallworld and Google: the best of both worldsSmallworld and Google: the best of both worlds
Smallworld and Google: the best of both worlds
 
OpenStreetMap intro 2010 07
OpenStreetMap intro 2010 07OpenStreetMap intro 2010 07
OpenStreetMap intro 2010 07
 
AGI georant: The grass is always greener ... in defence of the Ordnance Survey
AGI georant: The grass is always greener ... in defence of the Ordnance SurveyAGI georant: The grass is always greener ... in defence of the Ordnance Survey
AGI georant: The grass is always greener ... in defence of the Ordnance Survey
 
The Geospatial Revolution - AGI GeoCommunity keynote
The Geospatial Revolution - AGI GeoCommunity keynoteThe Geospatial Revolution - AGI GeoCommunity keynote
The Geospatial Revolution - AGI GeoCommunity keynote
 
WhereCamp5280 NeoGeoSchmeo
WhereCamp5280 NeoGeoSchmeoWhereCamp5280 NeoGeoSchmeo
WhereCamp5280 NeoGeoSchmeo
 
Building a new location-aware infrastructure for calendaring and scheduling
Building a new location-aware infrastructure for calendaring and schedulingBuilding a new location-aware infrastructure for calendaring and scheduling
Building a new location-aware infrastructure for calendaring and scheduling
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

Building enterprise applications using open source

  • 1. Building enterprise applications with open source Peter Batty Ubisense @pmbatty
  • 2. • Brief background on our customers • Our software stack and how we got there • Business models • Simplicity • Field applications, online and offline OVERVIEW
  • 3. Photo by whalt - http://flic.kr/p/7D7rd Figure 11: Conduits in an Undergr  Underground utility boxes are the structures that provide a conduits, examples of underground utility boxes include m configurations of underground utility boxes can be created seen below and to its right the butterfly diagram managed 19.Customers: utilities and telcos Photo by ☺ Lee J Haywood - http://flic.kr/p/7iX7f5
  • 4. Sample cable data Detailed asset maps from Smallworld
  • 5. Sample cable data Detailed asset maps from Smallworld, with live customer status overlaid
  • 6. Sample cable data Detailed asset maps from Smallworld, with live customer status overlaid
  • 7. Sample cable data Detailed asset maps from Smallworld, with live customer status overlaid
  • 8. SAMPLE CUSTOMER • Large communications company with 6 million subscribers across ~20 states • 23 geographic regions created for offline use – from one common master database • Offline databases vary from 136MB to 22GB • Incremental updates applied to all offline databases nightly • 5000 online users, ~400 offline users active so far, growing to 2000 • Weekly features updated ~2.3m total, ~250,000 largest region
  • 11.
  • 15. Functionality Cost Support Terms PredictabilityFlexibility
  • 16. BUSINESS MODELS • Sell support, services • e.g. Boundless • Sell hosting • e.g. CartoDB, MapBox • Hybrid closed and open source • Google, Safe, Ubisense
  • 17.
  • 19. We are building applications for the 95%of people in an organization who are not GIS users
  • 20. 20 “Deciding what not to do is as important as deciding what to do”
  • 21. TOPICS • Familiarity • Panning and zooming • Search (including queries) • Minimal layers • Focused applications • Network links • Rather than “trace”
  • 23. DEMO OVERVIEW This presentation features screen shots that step through a demo of Ubisense myWorld for damage assessment.The demo features two separate users: Operations center user, with overview of situation, including data from all field users Damage assessor with laptop in the field, capturing damage assessment data
  • 24. Operations Center Operations center overview map – currently all is quiet, no damage shown
  • 25. Damage Assessor in Field Currently online (wireless) WiFi is on Damage assessment user in the field, currently in online mode (with wireless connection)
  • 26. Damage Assessor in Field Create damage pointDamage assessor creates damage assessment point in the field
  • 27. Damage Assessor in Field Damage point is created in local database and displayed on map on laptop
  • 28. Operations Center Syncs to operations center within ~1 minute, damage point displayed and overview map updated
  • 29. Damage Assessor in Field Offline WiFi is off Back in the field, we are now in offline mode (wireless connection is lost). Google Map has disappeared here.
  • 30. Damage Assessor in Field Now we are displaying OpenStreetMap as an offline map instead of Google (which can’t be used offline)
  • 31. Damage Assessor in Field In offline mode, we can continue to display maps, select objects, and search for assets
  • 32. Damage Assessor in Field We can also continue to create damage points while in offline mode (which are stored locally)
  • 33. Damage Assessor in Field We have now created two more damage points offline
  • 34. Operations Center Back in the operations center, we still just see the single damage point at the moment
  • 35. Damage Assessor in Field Online WiFi is on Now the field laptop has a network connection again and is back online, so the damage data can sync
  • 36. Operations Center The data has synced and so we now see three damage points back in the operations center.
  • 37. Operations Center We can report on the damage points and get aggregate information
  • 38. Field users can also use tablets like iPad or Android, which support taking photos.
  • 39. Take a photo on the iPad
  • 40. Operations Center Operations Center also gets immediate visibility of photo (assuming user online) Photos can also be emailed in from any smart phone
  • 41. OFFLINE REQUIREMENTS • Cross platform • Android, iOS,Windows 7 onwards (and web) • Need ability to sync large datasets (gigabytes) for some situations • In other situations may be able to use smaller datasets (for single job, like walking an electrical circuit)
  • 42. DATABASE SYNC • Sync of bulk GIS data • Initially read only for short term applications • Typically want to do nightly over non-cellular connection • Time critical data like damage assessment • Want to sync as soon as possible (two way) • Needs to connect / disconnect / sync transparently
  • 45. ARCHITECTURE 1
 LAPTOP REPLICA PostGIS Mapfish Windows (or Linux or Mac) only Use identical software stack to main server Need custom replication - haven’t found PostgreSQL replication for sometimes disconnected model Pros: Simplest to implement Cons: Laptop only, heavyweight
  • 46. REPLICA CONCEPT Master database Local database Potentially multiple gigabytes 
 (raster tiles) Incremental update is important Full or partial (spatial) replica
  • 47. ARCHITECTURE 2 CORDOVA REPLICA • Have our web application running offline 
 on Android and iOS • Replaced PostGIS with SQLite - for geometry and attributes, and also tiles • Wrote JavaScript wrappers to replace (basic) MapFish services offline • Refactored code so small number of classes contain differences between online and offline - tile and database access
  • 48. ARCHITECTURE PostGIS MapFish (REST API) SQLite (mbTiles) Tile server myWorld client Leaflet myWorld server (Python) SpatiaLite JavaScript wrappers SQLite (mbTiles) Tile server myWorld client Leaflet myWorld server (JavaScript) ONLINE OFFLINE
  • 49.
  • 50. CAUTION WITH IOS • Apple terms and conditions regarding approval and software distribution can be a major pain • All code, and all changes, need to be reviewed by Apple - even for testing (this has tightened up recently, since they bought TestFlight) • If you need custom apps for individual customers there is a separate Enterprise Developer Program orVolume Purchase Program, which each have their own complications
  • 51. “ADVANCED HYBRID” APPROACH Higher level HTML & JavaScript code Includes myWorld core, plus any applications and customizations Sync common code package to each device as needed Use Cordova to create single executable for each platform (Electron on Windows 7) Low level code Handles data storage and access using SQLite, and Web View which is a container for HTML & JavaScript code
  • 52. ARCHITECTURE 3 HTML5 OFFLINE • Cache smaller amounts of data using
 HTML5 offline capabilities • More dynamic and easier to deploy
 than bulk replication
  • 53. HTML5 SUMMARY • Tried various approaches including caching individual tiles, caching mbTiles files and reading then with sql.js, caching geoJSON • LargeLocalStorage was a useful library • Worked reasonably well for small data volumes • But a number of issues including limitations on data size, inconsistency across browsers, general flakiness, and inability to manage offline data directly within the application
  • 54. OFFLINE SUMMARY • It will be great when we have universal wireless coverage! • Today, offline is still harder than you would hope • Large scale robust sync for enterprises is not rocket science, but a lot of detailed work to do well • HTML5 caching has a lot of promise, is workable in some scenarios today, but still not quite fully baked • We have gone with Cordova which gives you much more control over local storage, and most of the benefits of HTML5
  • 55. OVERALL SUMMARY • We have built a very robust enterprise web and mobile geospatial product based on open source foundations including PostGIS, GeoServer, Leaflet, SpatiaLite and Cordova • We have completed large implementations in several top 10 utility and telecommunications companies, in conservative IT environments • Our experience with all the open source technology we’ve used has been great
  • 56. ?