Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Real-time Tracking and Mapping of Geographic Ob...
Search
PyCon 2013
March 17, 2013
Technology
4
680
Real-time Tracking and Mapping of Geographic Objects by Ragi Burhum
PyCon 2013
March 17, 2013
Tweet
Share
More Decks by PyCon 2013
See All by PyCon 2013
Bayesian statistics made simple by Allen Downey
pyconslides
32
6.4k
Python for Humans
pyconslides
40
6.7k
Contribute with me! Getting started with the tools of free software development by Jessica McKellar
pyconslides
11
2k
ApplePy: An Apple ][ emulator in Python by James Tauber
pyconslides
3
1.6k
Use curses, don't swear by Sean Zicari
pyconslides
2
1.5k
Namespaces in Python by Eric Snow
pyconslides
9
1.8k
Internationalization and Localization Done Right by Ruchi Varshney
pyconslides
9
1.1k
"Good Enough" is good enough! by Alex Martelli
pyconslides
13
2.5k
Plover: Thought to Text at 240 WPM by Mirabai Knight
pyconslides
1
1.3k
Other Decks in Technology
See All in Technology
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
390
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
220
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
850
OPENLOGI Company Profile
hr01
0
60k
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
820
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
170
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
280
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
230
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
1k
RaspberryPi CM4(CM5も)面白いぞ!
nonnoise
0
160
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
140
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
240
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
693
190k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
660
Fireside Chat
paigeccino
35
3.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
How GitHub (no longer) Works
holman
314
140k
Designing for Performance
lara
605
68k
Bash Introduction
62gerente
611
210k
Typedesign – Prime Four
hannesfritz
41
2.5k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
Real-time Tracking and Mapping of Geographic Objects Ragi Burhum @rburhum
ragi@amigocloud.com
AmigoCloud We Synchronize Map Data - offline/online - edit
If you have tried this before, this may seem familiar…
Licensing Issues - Password-protected Site - Asset Tracking or similar
- Map Data Provider’s (Navteq, TomTom/TeleAtlas, etc) Business Model
None
Most People See This
None
None
Examples of Free/Open Datasets Out There
OpenStreetMap
NAIP
SRTM
Natural Earth Data
Map Renderers (Mapnik, MapServer, GeoServer) + Style File
None
Client-side Map JS Library
“Normal” GeoStack Nginx Gunicorn (Django) TileStache Memcached Mapnik PostgreSQL/PostGIS Data
Storage Web / Mobile Client (OpenLayers) Varnish (80)
https://gist.github.com/RBURHUM/4559323
http://tilestache.org/doc/
None
A good real-time tracking solution requires a stateful connection
Polling is BAD
Server-Side Events Instead of having [N] clients polling every [X]
time interval, how about the server notifying you
None
Publisher/Subscriber Queue One of the queues (RabbitMQ, Redis, etc) M3
M2 M1 M4 Publisher Subscriber Subscriber Subscriber
Celery is awesome! from tasks import myCustomTask myCustomTask.do_work(my_data) myCustomTask.do_work.delay(my_data)
“Normal” GeoStack Nginx Gunicorn (Django) TileStache Memcached Mapnik PostgreSQL/PostGIS Data
Storage Web / Mobile Client (OpenLayers) Varnish (80)
“Real-time” GeoStack Nginx Gunicorn (Django) TileStache Memcached Mapnik PostgreSQL/PostGIS Data
Storage Web / Mobile Client (OpenLayers, Socket IO) Varnish (80) Celery with RabbitMQ Node.js with Socket IO
Demo http://abuse.amigocloud.com
None
Ragi Burhum @rburhum ragi@amigocloud.co m If you are in the
Bay Area and like Geo: http://www.meetup.com/geomeetup