Bestand wählen
Merken

Choose your own Adventure - Open Source Spatial on OpenShift

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
I got a lot of content that I'm trying to cover in this talk and 25 minutes is way too short and I won't be offended if anyone is to sneak out at the end if I go a little bit long at all all tried all try to be respectful of everyone's time and so I mean when they get started here this talk is called the Choose Your Own Adventure open-source spatial with leaflet and OpenShift and try to talk about what I do at more than that the specific technologies that have power use them I got a bitterly URL if you guys wanna follow along with your own laptops or if you want to try it out at home later and there's a lot of great examples and source code I'm a paste a couple examples at the at the end of this at a later and of
SGIs starting here so I'm Ryan and you can also find me is Ryan J. online that's my handle on Twitter again have an IRC and so feel free to ask me questions I'll be tweeting out a link to the slides at the end so another another place you could find the slides of this image to low that's half of my business card some this is the and feeling skeptical about the network conditions compared K and with this demo does counter rely
too painful this demo does rely on me having a reliable network access a minute try to start up a hot spot and see if that helps out any for the demo of see see if this is any better weather have reception here meanwhile
ahead with the slide so my goal here to show you how I build a variety different
portable and scalable mapping solutions that can be quickly launched on demand reused whenever you need em thrown out when you don't know and recycled and reused by a small you know throwing in different datasets and so what I do that I work for Red Hat on their OpenShift effort I do a lot of blog posts demo apps and kind of I also work with as a volunteer I do some work with them Code for America and so yeah code for America has so I tried to you know when I have time I don't always have time to work on those efforts but it's great to be able to quickly spin out of node j ust server or a Python Server oppose GIS that kinda maybe Mongo DB so I wanted to show you how I get started with those projects and how I write clean portable reusable code that powers maps and my lofty goals which I will never achieve because of already burned through a certain amount of my time is these are the languages that I would like to use for mapping the sum over there and here's the databases that have spatial extensions we also have some demos Steve is in the back here my co-workers Steve Steve so that he has some great guides on how to use other DB back ends you could do a Lucene for spatial you could do that he had a workshop on Tuesday on using GeoServer on top of open shifts and that when we don't automatically scale but we can often do kind of automatic dynamic scaling to respond to the amount of network load that you have so this is my goals and here's why never achieve it 25 minutes has so let's see how much time do I have less than a camera up here I already birds you 5 minutes let's go here's what I might try to cover public 2 minutes a section open cloud overview will choose a language and a lightweight web framework to go with that will look at the leaflet code I know there's plenty of other talks on leaflets all kind of show you what I use and defer to the leaflet documentation for the most part that will look at how to build a simple API and DB set installation can fake using environment variables and already there's a probably overwhelmed with how much detail talk where it also look at how to bootstrap you DB and want your new instant mapping solutions of this talk is probably better for an hour long workshop 4 or more had his from so we'll see what we can what we have time for so the cloud the cloud and is still an evolving concept there's a couple pieces so if you're an open-source enthusiasts like I am and I usually I wanna try to use exclusively open source projects and here I've got a that got at Apple Computer but I'm running out of Fedora desktop and I think that you know the Linux on the desktop is still kind of early and and so was the cloud but there's no reason still use it anyway right it's not stopping me so so the cloud and you know a couple people have ideas on on what it's made of and the other was suppose to be a check mark next to the cat photos the infrastructure as a Service is the 1st major standard that we look at when we think about clouds that was really invented so anyone can compete head-to-head with Amazon E C 2 using open-source tools anyone with their own hardware can get infrastructure and offer that as a service to consumers whether that's an IT team giving that out to end users or to other system administrators often uh there's a couple of open source options here but the result is you get easy on demand Linux environments and or other OS is a guess and Platform as a Service is kind of our next layer up from that so you'll have your infrastructure as a service providing your hardware electricity things like that bandwidth maybe and you have software at a great open source software hopefully and here's what we use particularly as some of the founding pieces in our and in our platform and the result is like a set horizontally scalable application architectures that are available on demand to developers and that really help you build host and scale so here's a little bit of time and I got some breakage here but we got his some RedHat termin g terminology the real take away for you guys we have a couple pieces we have something called a gear and that's basically you can think of it as a server it's kind of to containerized environment you know what containers are were using containers not virtual machines and sometimes if you see the term gear were referring to a a a a container environment we also have a notion something called cartridges are so you can take a 1 environment something like a of PostgreSQL database and and plug it into an existing Python application and or PHP application and so you who the rest switch back to some of the slides real quick and switch my network while I'm at it wouldn't have my
back of slides it
in this 1 does not have
the weird images and this of to catch me back up that 31 to this 1 OK and we've got 3 different versions of OpenShift you really wanna know more about OpenShift
all you really need to know is we have an open source version of all of our code it's called OpenShift Origin you can also get that we have a hosted version kind of like Amazon or parochial was a better comparison but we have a hosted version called OpenShift online and you get a free account and find out everything show you uh so let's get to the frameworks as so what I use when I'm building a basic application in an OJS is I use rest defied this would be done on a true Choose Your Own Adventure you could start from any of the starting points and here's some kind of starter code that would give you support for serving static files and serving up a micro framework and these projects have already been lightly adapted to run on shifts so they're very easy to use and yeah ask me questions in the booth front-runner speed through the stuff but they also include support for language specific dependencies so for Python you can include your Python eggs and include a list of what you need an shift will read your dependency list and automatically fulfill those dependencies as part of our build process as something you definitely don't get out of infrastructure as a service that's only gonna really come at that kind of platform layer and a lot more value for developers there are so once I have my a and in particular it it undergo go through the node j s and post GIS rout for you guys and if you wanna see sample code on any of these other possible uh Choose Your Own Adventure Pass hit me up and I'll show you that the solutions for those like at some length at the end and so for no JS what I would do for building out a quick and easy mapping application I'd run something like in PM install I like this PG query model and so indium install PG query via the dash dash save that'll added to your package that on file and then OpenShift will automatically include that as a dependency in the next time it runs of build for your at the same thing with Python you could add it in your requirements . text or you know most languages have a packaging system nowadays that will give you an easy database adapter for talking you're your a DB back I here's local development all these languages all have a local development mode of now PHP even has a local server built and should be easy to do don't spend too much time on that leaflet that's my next piece that I'm adding now that we have our static server and I'm actually gonna clone
and like on 1 of these projects in a minute and we'll take a look at the source and run it locally C could see
some of this builds locally how I would construct somebody's actor can
guarantee have rest of different
by the based in the so I have a project here I could do in uninstall to load my local dependencies this is something OpenShift is automatically going to do when you push this code out to the cloud and then you just run in PM start to then build up your server I didn't finish the install progress and so it's probably failing back so what I could do is I could open up my index . html and I anchored in the head section at in something like this to include leaflet I want the style sheet and so the leaflet job script right pretty basic and that gives me we've support and for most of my mapping demands I try to do something really simple I just to kind of leaflet with pan and zoom out to show people how to get started and then they can extend it from there so here's all out of you some map points so default view grab a tile layer here of kind of modified it make a probably using OpenStreetMap spoke and visualizing Park information so I used uh sums tiles from Stayman that have a more uh nature reworked to them the possible see that in a minute and then the last thing I wanna do is update the map whenever I have 1 of these drag drag events zoom events or when the matter 1st gets loaded and it'll go run these functions this is all my client side code basically get depends from our API so tools that will stand up an API service back in service and will query for all the points that are within the bounds of our viewport on the screen and so leaflet is going to help us whenever that zoom and drag happens it'll tell us the bottom bottom left top right and flipped they can't tell from point in the right way but you know you know what I'm talking about grabs the 2 corner points and sends it back through the API and we'll take a look at that code as well as so the API source so this is what I used for a for no JS and the rest of fire like I mentioned before the very simple you run this creates server mine enabling some middleware here for cross-site requests if I wanted to actually have another domain to be able to call them my back and and courses a new technology for for cross-site requests and and I have a couple of points here there's a park slash within that pass that on to another function called DB select box never know the endpoint call parks and then I'm setting up on serving up anything in my static folder and I'm catching that
initial route Rao and serving up my index . html as well and so that's about it from my from ice that's why like micro-services this is how easy it is to build a REST API and if you go through I could say the same thing with python it's just a simple when you're developing for flask and Python or Silex and PHP or uh Sinatra and Ruby very similar to this you have just a rout and then a function handler to go run the so next step is actually filling in on how is it going to make this selection right we've got our from in code that will go query that the geology geography on the screen send the points to work to our REST interface and now a REST interface is gonna need to query a database and so we'll do the whole set up our database here for
OpenShift you could run something like RHC I will make created at
1st see due RHC that create and then the name of your app and then you could have a cartridge in here part 1 car to this is basically what the developer would
type in order to create a new application OpenShift is going to hand back a life URL where this app is now alive and serving up web requests we include some default kind of hello world
content to help you get started but but that's that's that create command after that application is created you then add additional modules like the PostgreSQL Mongo DB and or just Adam on the command line like I have appeared car to this could be a posters crests well but maybe version 92 and this could be a not I noted J. us the 0 . and so this would go create that application on it's a half the there you go the user user feedback we've identified and and this is automatically printing out you know suggestions for OK maybe you were thinking of a different cartridge these are all things you could add on or use as the basis for your web server so here it's going in creating my and or or an app named my out of a and then here's how I would write the DB selection could have got the select box that I referred to earlier and reduce some validation here on our query parameters make sure no one's doing some kind of sequel injection and checking to make sure that these are are the parameters that are coming in are just but they're just floating point numbers and so if all of these the latter latitude 1 longitude 1 latitude to you and wanted to to this for the 4 corner points served 2 points really so it just validates those if it works will go ahead and run this select query here I am it looks like OK I'm running out of post yes query how many of you guys use post yeah a decent amount so there's some missing here and created the table yet and there's still some work to do here right that's over here I'm running my select and returning the resulting rose and we'll take a look at how I did the database set up next 1st still need to make that connection to the database in this code I'm really just assuming that this DB is available via the PG module and and standard it's will see how we will see how in a 2nd so if you want a sh sr configuration details and this 1
here just finish creating and you could see it
printed out the username password and connection strings I
also have a wide URL here where I can go copy and paste
buttons copy an
parents and I will have a
hello World for node j here
tho success created 1 at a
time and here's how I actually configure the application so I have a couple fallback values here the idea is if you want your app to be portable and so your
code to run anywhere you never include any configuration details in your source code it's always a bad idea anyway but here's our technique for a configuration free applications in the cloud we rely on environment variables or at least do a quick check to see if an environment variable has been populated so here I'm checking to see is there something the server is telling me about port or OpenShift node j ust court if the populated using or used for 3 thousand is a default this allows me to run the same code in local development and on the cloud and I'll get sensible defaults even if these environment variables are not populated and if they are I take advantage of them and immediately get my connection information to go talk to post GIS so that's how you could really take these applications and move it from 1 OpenShift environment to your own OpenShift environment or have your friends launch it or have really anyone else recycle reuse it so that's really powerful enough to be able to do those type of modifications what we have here you could also set environment variables explicitly here being the set and then something out of the that I'm happily
click to do in this in the head and said the flu equals bar so you know the typical
example of it's also application and to do that from my and I go out and and add that parameter to the system environment for the publication but see and I go ahead and just launched 1 of the final solutions and here's an here's 1 here and 1 of our completed
applications I should say and this is the adaptation of the Code for America project called adopt hydrants um so here's something it's running on open shifts and it's reusable anyone else can go take this application and once their own copy and
I've got couple other ones OK
using see what I wanna talk about and short on time here Saturn shredder rapid for her 0 if you wanna run adopt the hydrants all cover that and that you just need to know where the source code is so here for this example on using RHC at create the application name is hydrant Ruby post grass and so here's the source code on using I'm also setting an environment variable all-in-one command right and I'll just get back alive URL I have not actually launched this 1 in a while and I don't know for still supporting post press for so this 1 may need some slight adjustments I once this app half a year
ago and I just spent it you know it automatically goes to sleep when there's no network requests and then it wakes up whenever someone hits that URL so it's great you get really a lot of fun and
it's OpenShift is greater helping you conserve your your system resources and then autoscale as well we could also set a minimax on these applications and say I want a minimum of 2 containers running all the time and a maximum of 100 so I can handle these big spikes and load so this is really you can automatically scale your Web 2 year in response to demand and the the PostgreSQL layer we do not have high availability for the PostgreSQL layer by default but we do have some partners here with us and in the red hat booth is a team called crap I'm sorry excuse me that crunchy data that has a highly available post graphs and so when is should use real quick how bootstrapped my database and actually launched at 1st and then out of school with this 1 right here is that
got a here's a box
application that I have and so this 1 as I pan and zoom that
should hold new map points and automatically update the points on the map
right click on these might it a little pop up but I also added instead of a clone me on
did have I have run me on OpenShift so in 1 click consider going into the command line interface going into the web
interface with now I can really wants this new 1 as parts to use the source code and reliant on no JS and post grass and 1 autoscale this 1 I could go ahead and create it'll respond with another copy of and what this out but the 1 I
just had open I clicked on the link so you can't see anymore you can also use another example I
just created a minute ago this one's running on my own
OpenShift that I have posted you see the domain is Ryan J . co I'm running my own OpenShift here
at an origin don't Järvinen . com uh so all open
source from you know
easy to make your own and the easy to share these
applications so we're running
out of time a rapid up here here's a couple finished results no JS with rest of phi post GIS Python flask both GIS job hibernate uh with posts I think with post yes among the 1 of the 2 the user command line for launching the same thing the same thing I'm doing on the web
and this window and wanting via the web I could do the exact same thing from the command
line and I can showed a little bit of this earlier the that from code and you have the cottages measure dependencies and he guys wanted a special configuration of PostgreSQL you could take ah cartridge code copy out put on get home make some modifications and then instead of saying PostgreSQL gressor you actually edit this input in the URL to the get have address of wherever your copy of POS gresses will take your PostgreSQL off of the have and will stage it up on shift and and do the past and make the passwords available make here application aware of how to log into the back into the I was the yeah I would just type in a Web URL here http that to me tease but again with the dot com but now and then I don't wanna spend time on this but yeah that whatever the URL is to your copy of PostgreSQL or you're modified up Python to run with engine genetics instead of Apache if that's what you need great you could do it and so on we wrap this up another time here and here's your life results we took a look at that if you wanna see how I do those of launching new applications have a blog post on how to use our web based application workflow how to make your own open-source ribbons for sharing applications and making you're maps viral on the cloud with free hosting some and I think for projects like Code for America there's a huge amount of potential for reuse for different cities and communities quickly stand out their own projects for disaster recovery efforts for a you know a variety different use cases and it's easy to swap in different datasets and bootstrap your app so that it just comes up
we use another copy so this 1
on the Web finish now I have parts to here is a brand
new to add data points come on data that I should have data
here I getting error
a this demo fail well
additionally 2 copies of this did succeed sorry guys that should have a
database you say you can configure pose grass here's how you do advanced stuff we do have PostgreSQL 3 available as a as a custom cartridge added the URL to the it this post press 9 3 on get of and and that's written by a crunchy data if you wanna know how they did that PostgreSQL customization or how they do highly-available grass there in our booth in the red hat booth that come and say hi were all open source we accept pull requests we love our community everything's in the public on Trello file bug reports of you find among bugs away and yet let me know if you have any questions and I'll wrap it up here thanks the
Open Source
Open Source
Inhalt <Mathematik>
URL
Quellcode
Abenteuerspiel
Leistung <Physik>
Rechenschieber
Open Source
Demo <Programm>
Twitter <Softwareplattform>
Datennetz
Konditionszahl
Binder <Informatik>
Bildgebendes Verfahren
Chipkarte
Resultante
Router
Offene Menge
Demo <Programm>
Bit
Gewichtete Summe
Web log
Skalierbarkeit
Formale Sprache
Datenmanagement
Mobiles Endgerät
Kartesische Koordinaten
Textur-Mapping
Skalierbarkeit
Gruppentheorie
Natürliche Sprache
Radikal <Mathematik>
Elektronischer Programmführer
Betriebsmittelverwaltung
Verschiebungsoperator
App <Programm>
Zentrische Streckung
Hardware
Datennetz
REST <Informatik>
Datenhaltung
Gebäude <Mathematik>
Speicher <Informatik>
Applet
Programmierumgebung
Varietät <Mathematik>
Einsteckmodul
Knotenmenge
Natürliche Sprache
Variable
Konfiguration <Informatik>
Rechenschieber
Software
Dienst <Informatik>
Framework <Informatik>
Faser <Mathematik>
Ein-Ausgabe
Client
Server
Garbentheorie
Projektive Ebene
Computerunterstützte Übersetzung
Programmierumgebung
Standardabweichung
Subtraktion
Programmschema
Dienst <Informatik>
ROM <Informatik>
Term
Systemplattform
Einsteckmodul
Code
Framework <Informatik>
Datenhaltung
W3C-Standard
Textur-Mapping
Virtuelle Maschine
Knotenmenge
Benutzerbeteiligung
Variable
Digitale Photographie
Software
Proxy Server
Skript <Programm>
Maßerweiterung
Hardware
Leistung <Physik>
Streuungsdiagramm
Verschiebungsoperator
Diskretes System
Open Source
Systemverwaltung
Red Hat
Keller <Informatik>
Mapping <Computergraphik>
Formale Sprache
Offene Menge
Last
Mereologie
Computerarchitektur
Bandmatrix
Streuungsdiagramm
Subtraktion
Konvexe Hülle
Versionsverwaltung
Systemplattform
Dienst <Informatik>
Computeranimation
Rechenschieber
Unternehmensarchitektur
Open Source
Einheit <Mathematik>
Bildgebendes Verfahren
Normalvektor
Hardware
Punkt
Prozess <Physik>
Formale Sprache
Versionsverwaltung
Programmschema
Kartesische Koordinaten
Systemplattform
Framework <Informatik>
Abenteuerspiel
Code
Computeranimation
Unternehmensarchitektur
Hydrostatik
Knotenmenge
Informationsmodellierung
Umwandlungsenthalpie
Natürliche Sprache
Stichprobenumfang
Softwareentwickler
Verschiebungsoperator
Umwandlungsenthalpie
ATM
Dicke
Oval
REST <Informatik>
Open Source
Datenhaltung
Gebäude <Mathematik>
Stellenring
Abfrage
Mailing-Liste
Routing
Paarvergleich
Physikalisches System
Elektronische Publikation
Natürliche Sprache
Mapping <Computergraphik>
Dienst <Informatik>
Schnelltaste
Framework <Informatik>
Mereologie
Server
Projektive Ebene
Message-Passing
Klon <Mathematik>
Support-Vektor-Maschine
Subtraktion
Gewichtete Summe
Punkt
Quader
Natürliche Zahl
Code
Computeranimation
Data Mining
Gebundener Zustand
Hydrostatik
Textur-Mapping
Domain-Name
Client
Cross-site scripting
Arithmetische Folge
Prozess <Informatik>
Trennschärfe <Statistik>
Minimum
Skript <Programm>
Default
Modul
Schreib-Lese-Kopf
Touchscreen
Personal Area Network
Konstruktor <Informatik>
Lineares Funktional
Sichtenkonzept
Open Source
REST <Informatik>
Kanal <Bildverarbeitung>
Systemaufruf
Web Site
Ereignishorizont
Mapping <Computergraphik>
Middleware
Dienst <Informatik>
Automatische Indexierung
Rechter Winkel
Parkettierung
Server
Projektive Ebene
Garbentheorie
Information
Luftreibung
Message-Passing
Streuungsdiagramm
Lineares Funktional
Punkt
Automatische Indexierung
Rechter Winkel
Datenhaltung
Trennschärfe <Statistik>
REST <Informatik>
Abfrage
Vorlesung/Konferenz
Routing
Code
Touchscreen
Videospiel
App <Programm>
Benutzerbeteiligung
Datentyp
Mereologie
Kartesische Koordinaten
Ordnung <Mathematik>
Einsteckmodul
Softwareentwickler
Default
Computeranimation
Rückkopplung
Punkt
Quader
Versionsverwaltung
Mobiles Endgerät
Zahlenbereich
Kartesische Koordinaten
Fortsetzung <Mathematik>
Code
Computeranimation
Eins
Last
Benutzerbeteiligung
Code
Trennschärfe <Statistik>
PERM <Computer>
Inhalt <Mathematik>
Konfigurationsraum
Einfach zusammenhängender Raum
App <Programm>
Parametersystem
Datenhaltung
Default
Validität
Abfrage
Einsteckmodul
Modul
Injektivität
Basisvektor
Server
Tabelle <Informatik>
Standardabweichung
Inklusion <Mathematik>
Streuungsdiagramm
Einfach zusammenhängender Raum
App <Programm>
Kollaboration <Informatik>
Stellenring
Dean-Zahl
Kontrollstruktur
Dokumentenserver
Kartesische Koordinaten
Extrempunkt
Knotenmenge
Sichtenkonzept
Computeranimation
Physikalisches System
Knotenmenge
Steifes Anfangswertproblem
Code
PERM <Computer>
Vererbungshierarchie
Passwort
Zeichenkette
Gammafunktion
Einfach zusammenhängender Raum
Drucksondierung
Kontrollstruktur
Freeware
Stellenring
Kartesische Koordinaten
Quellcode
Code
Netzwerktopologie
Variable
Menge
Datentyp
Server
Information
Softwareentwickler
Konfigurationsraum
Programmierumgebung
Default
Streuungsdiagramm
Schreib-Lese-Kopf
Parametersystem
Taupunkt
Kartesische Koordinaten
Programmierumgebung
Physikalisches System
Data Envelopment Analysis
Variable
Code
Computeranimation
Offene Menge
Anpassung <Mathematik>
Elektronischer Fingerabdruck
Projektive Ebene
Sigma-Algebra
Programmierumgebung
Gammafunktion
Verschiebungsoperator
App <Programm>
Variable
Rechter Winkel
Acht
GRASS <Programm>
Kartesische Koordinaten
Quellcode
URL
Programmierumgebung
Computeranimation
Eins
Datennetz
Extrempunkt
Datenhaltung
Hochverfügbarkeit
Kartesische Koordinaten
Ungerichteter Graph
Physikalisches System
Computeranimation
Benutzerbeteiligung
Rechter Winkel
Last
Endogene Variable
Sigma-Algebra
Default
Gammafunktion
Textur-Mapping
Benutzerbeteiligung
Teilbarkeit
Punkt
Quader
Code
Kartesische Koordinaten
Term
Computeranimation
URL
Klon <Mathematik>
Stellenring
Gerichtete Menge
URN
Quellcode
Binder <Informatik>
Einsteckmodul
Computeranimation
Maßstab
Einheit <Mathematik>
Endogene Variable
Mereologie
GRASS <Programm>
Schnittstelle
Domain-Name
Open Source
COM
MIDI <Musikelektronik>
Computeranimation
Eins
Resultante
Benutzerbeteiligung
Prozess <Informatik>
REST <Informatik>
Kartesische Koordinaten
Einsteckmodul
Computeranimation
Resultante
Domain <Netzwerk>
Subtraktion
Bit
Vektorpotenzial
Web log
Adressraum
Kartesische Koordinaten
Einsteckmodul
Code
Computeranimation
W3C-Standard
Open Source
Benutzerbeteiligung
Maßstab
Bildschirmfenster
Datentyp
COM
Passwort
Konfigurationsraum
Einflussgröße
Gerade
Videospiel
Open Source
Einsteckmodul
Ein-Ausgabe
Kontextbezogenes System
Natürliche Sprache
Zentrische Streckung
Projektive Ebene
Wiederherstellung <Informatik>
URL
Varietät <Mathematik>
Demo <Programm>
Punkt
Polare
Marketinginformationssystem
Computeranimation
Homepage
Open Source
Benutzerbeteiligung
Last
COM
Code
Mereologie
Neunzehn
Fehlermeldung
Datenhaltung
Open Source
GRASS <Programm>
Einsteckmodul
Elektronische Publikation
Konfigurationsraum
Verkehrsinformation
Computeranimation
Programmfehler

Metadaten

Formale Metadaten

Titel Choose your own Adventure - Open Source Spatial on OpenShift
Serientitel FOSS4G 2014 Portland
Autor Jarvinen, Ryan
Lizenz CC-Namensnennung 3.0 Deutschland:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
DOI 10.5446/31708
Herausgeber FOSS4G, Open Source Geospatial Foundation (OSGeo)
Erscheinungsjahr 2014
Sprache Englisch
Produzent Foss4G
Open Source Geospatial Foundation (OSGeo)
Produktionsjahr 2014
Produktionsort Portland, Oregon, United States of America

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Learn how to build quick and easy open source mapping solutions using several different languages and datastores. Well start by selecting our source data, and a database to house it. Then, we'll pick language and a simple microframework to power a basic REST API. Finally, we add Leaflet Maps for user-facing data visualization and controls. Feel free to bring a laptop and follow along to launch your very own mapping application during this short talk.
Schlagwörter PostGIS
MongoDB
Lucene
Leaflet
OpenStreetMap
Flask
Sinatra
Restify
JaxRS
Silex

Ähnliche Filme

Loading...
Feedback