OSGeo ireland keynote 2017 by Markus Neteler

Markus Neteler
Markus NetelerCEO at mundialis GmbH & Co. KG
©2017MarkusNeteler,CC-BY-SA
Keynote
OSGeo:
Community driven Open Source Geospatial
OSGeo Ireland – 1st National Symposium 2017
Markus Neteler
mundialis GmbH & Co. KG
http://www.mundialis.de
PostGISomics
©2017MarkusNeteler,CC-BY-SA
About the speaker
Markus Neteler: Germany – Italy – Germany
● GRASS GIS user since 1993, coordinator & dev since 1997
● Cofounder of FOSSGIS.de (1999), GFOSS.it (2005), OSGeo.org (2006)
● Worked in science from 1999-2015 (mainly in Italy)
● Since 2016: partner and general manager at mundialis, Bonn (DE)
... favorite topics
● massive GIS data processing and Earth Observation
● Open Source GIS guy (especially GRASS GIS development)
● gained HPC experience through processing of
MODIS Land Surface Temperature : “EuroLST”
– 15 years of gap free daily data at 250m resolution
● disease vector modeling (tiger mosquito etc.)
©2017MarkusNeteler,CC-BY-SA
Quick introduction
What is
OSGeo
?
©2017MarkusNeteler,CC-BY-SA
It all starts with a map!
Img. courtesy: J Westervelt 2006:
Early GRASS Community Views on FOSS
A printed digital map, roughly in 1982.
©2017MarkusNeteler,CC-BY-SA
Open Source since the 1980s...
Open Source is nothing new at
all...
1991 – First
mailing lists
©2017MarkusNeteler,CC-BY-SA
The 1990's ...
ORGANIZATIONS
1992
GRASS Inter-Agency Coordinating Committee
→ Open GRASS Foundation (OGF)
→ OpenGIS Consortium (OGC)
1994 – Tim Berners-Lee decided to constitute the
World Wide Web Consortium (W3C)
1994 – Open Geospatial Consortium
(OGC) founded
Open GIS Open Geospatial
Consortium (OGC) Consortium (OGC)
GRASS Interagency
Steering Commitee
1990 1992 2006
Open GRASS
Foundation (OGF)
1994 2004
OSGeo
©2017MarkusNeteler,CC-BY-SA
1980 1985 20001990 1995 2005 2010
http://wiki.osgeo.org/wiki/Open_Source_GIS_History#Timeline
WWW
Civil Internet
MOSS
GRASS GIS
PROJ4
UMN Mapserver
deegree
GDAL/OGR
OSSIM
GEOS
PostGIS
QGIS
Mapbuilder
Geonetwork
MapGuide OS
Openlayers
Mapbender
gvSIG
Open Source GIS Timeline
Communities
developing
software
©2017MarkusNeteler,CC-BY-SA
GRASS GIS
FDO
… the OSGeo community: at time more than 28,000 unique subscribers
in over 240 topic oriented mailing lists, since 2006
http://www.osgeo.org
metaCRS
Open Source GIS
brought to you by...
©2017MarkusNeteler,CC-BY-SA
Open Source Geospatial Foundation
Mission
Foster global adoption of open geospatial
technology by being an inclusive software
foundation devoted to an open philosophy and
participatory community driven development.
http://www.osgeo.org
©2017MarkusNeteler,CC-BY-SA
OSGeo supports:
Software
Data
Education
Community
Open Source Geospatial Foundation
http://www.osgeo.org
Initiatives:
ICA-OSGeo Labs
"Geo For All"
http://www.geoforall.org/
©2017MarkusNeteler,CC-BY-SA
Open Source Geospatial Foundation
http://www.osgeo.org
Goals
● provide resources for foundation projects;
● foster the use of open source geospatial software;
● encourage interoperability with open and community standards;
● ensure interoperability between the foundation projects;
● encourage a high degree of quality and innovation in foundation
projects;
● champion the use of open-source and community participation through
the development of an open education curriculum
● enable communication and cooperation amongst OSGeo communities;
● champion community building through horizontal (local chapters)
engagement and through vertical (sector specific) agreements with like-
minded organizations;
● be a welcoming and inclusive worldwide organization at all levels;
● celebrate excellence, openness and service within the OSGeo
community.
©2017MarkusNeteler,CC-BY-SA
Education: Geo for All! http://www.geoforall.org/
©2017MarkusNeteler,CC-BY-SA
The FOSSGIS ecosystem:
OSGeo LiveDVD and LiveUSB stick
http://live.osgeo.org/
©2017MarkusNeteler,CC-BY-SA
Support through Professional Service Providers
A few logos out of many....
http://www.osgeo.org/search_profile
©2017MarkusNeteler,CC-BY-SA
GRASS GIS
in a nutshell
©2017MarkusNeteler,CC-BY-SA
Geographic Resources Analysis Support System
Open Source GIS, developed since 1984, since 1999 GNU GPL
Portable code (many operating systems, 32/64bit)
Your GIS backbone – linkable to:
GNU/Linux MacOSX MS-Windows
http://grass.osgeo.org
(IBM AIX, *BSD, ...)
What's GRASS GIS?
©2017MarkusNeteler,CC-BY-SA
A wealth of functionality: GRASS GIS
● Raster 2D/3D (voxel) processing
● Vector 2D/3D topological processing
● Vector network analysis support
● Image processing system
● Space-time cubes, temporal GIS
● Native raster and vector format
● 3D Visualization system
● DBMS integrated (SQL)
with SQLite, DBF,
PostgreSQL, MySQL,
and ODBC drivers
From DXF
Nagshead LiDAR time series:
dune moving over 9 years
(NC, USA) – animation
©2015MarkusNeteler,Italy
Elevation model,
1m res.
Basins, thresh =
1000 cells
(watersheds)
(vectorize with
r.to.vect)
Stream network Flow accumulation
TCI
multiple flow direction
https://grasswiki.osgeo.org/wiki/Hydrological_Sciences
Hydrological analysis with GRASS GIS
©2015MarkusNeteler,Italy
VIEW
Credit:
Helena Mitasova, NCSU
Hydrological analysis with GRASS GIS
©2015MarkusNeteler,Italy
CONTAINS
with
points
CROSSES
with
lines
EQUALS
CONTAINS
with
polygon
WITHINTOUCHES
DISJOINT
INTERSECTS
OVERLAPS
Vector analysis using GEOS backend
©2015MarkusNeteler,Italy
GRASS GIS 7: Space-time functionality
g.gui.tplot: plots the values of one or more
temporal raster datasets for a queried
point defined by a coordinate pair
Screenshots: Veronica Andreo
(in PDF, click for animation)
©2017MarkusNeteler,CC-BY-SA
GRASS GIS 7 – QGIS integration
with PostGIS data storage
©2015MarkusNeteler,Italy
An interactive (Web based!) shortcourse on writing GRASS scripts in Python
https://github.com/wenzeslaus/python-grass-addon
Python and GRASS GIS 7 (ipython)
©2015MarkusNeteler,Italy
● Since 2005 (>>10 years) GRASS GIS is running natively on 64bit CPUs
● Large File Support
● Runs on Linux, AIX, Solaris, freeBSD, netBSD, ...
● Installed on Grids and TOP500 supercomputers (AKKA Umeå Sweden,
ENEA Frascati Italy, Aurel Slovakia, USA, …)
● Various ways of parallelization
Hints: http://grasswiki.osgeo.org/wiki/Compile_and_Install
FOSS4G on supercomputers: HPC
©2017MarkusNeteler,CC-BY-SA
GRASS GIS 7.2
REST API
Flask, NGINX,
Redis
EO-me frontend:
Web interface
SSD storage for
GRASS GIS DB:
● Tile database
● GIS database
REST
GRASS
Server
Metadata
Redis
HA Setup
REST
GRASS
Server
GRASS
REST API
Server 1
REST
GRASS
Server
HTTPS
Load
Balancer
Web
Mapping
Service
WMS Server uses
GRASS REST API to
receive images from
GRASS GIS DB
Storage
REST
GRASS
Server
GRASS
REST API
Server 2
REST
GRASS
Server
GRASS
REST API
Server 3
GRASS
REST API
Server 4
REST
GRASS
Server
GRASS
REST API
Server 5
Cluster NetworkCluster Network
Storage NetworkStorage Network
Workers
Clients using WMS
and
GRASS REST API
EO-me
backend
Currently deployed at
IPT Poland for ESA
Sentinel-2A metadata enhancer (“EO-me”)
> 750,000 scenes – 5000 new scenes/day
Newly arriving tiles are immediately processed
Cloud based computing: GeoServer, GRASS GIS
©2017MarkusNeteler,CC-BY-SA
FOSS4G development
in OSGeo
©2017MarkusNeteler,CC-BY-SA
Legal aspects
License compliance (e.g., GPL)
No code copying from books like “Numerical Receipes in C”
Ensure that 3rd
party contributions are clean
Employers must agree that work time is spent
Full transparency and peer review help to minimize the risk.
Apache or OSGeo Foundation
Incubation phase
Graduation
http://incubator.apache.org/
http://www.osgeo.org/incubator
Code vetting
©2015MarkusNeteler,Italy
https://travis-ci.org/GRASS-GIS/grass-ci
Automated unit tests: Travis-CI and more
©2017MarkusNeteler,CC-BY-SA
Development: Team structure & “Code habitats”
● Two main types of developers are observed:
Generalists ←→ Specialist (majority)
● It appears that many developers search for themselves “code
habitats”, their area of expertise (e.g. in GRASS GIS a selection of
libraries or commands which are maintained over time) – specialists
● these “code habitats” are often stable over years
● only a few experts (super specialists :-) with deep knowledge about
code optimization and code portability (ANSI C etc standards)
● A few “garbage collectors” (generalists) fixes lots of odds 'n ends
● knowledge sharing in mailing lists and at OSGeo code sprints
©2017MarkusNeteler,CC-BY-SA
http://www.youtube.com/watch?v=suyDqmGXoWk
Development: Team structure & “Code habitats”
GRASS GIS development visualization from 1999 to 2013 with Gource
Developers and their
programming activities
are animated through
small “agents”
©2017MarkusNeteler,CC-BY-SA
2. Developer
detects bug 60%
20%
20%
(Percentages are estimated)
Other
developers
New
release
3. New
features
SVN/git code
Repository
Release
cycle
1. User sends
bug report
Bugtracker
Mailing list20%
80%
Flow from bug reporting to new releases:
Communication matters in development!
©2017MarkusNeteler,CC-BY-SA
The community idea
in OSGeo
©2017MarkusNeteler,CC-BY-SA
Vision
Empower everyone with open source geospatial
Local chapters:
● Bring a more local context to OSGeo
● Provide networking opportunities
● Provide training and support to local community
● Promote OSGeo through events
● Translate documents, websites, software
https://wiki.osgeo.org/wiki/Local_Chapters
OSGeo Local Chapters
©2017MarkusNeteler,CC-BY-SA
Community Sprint in Como 2015Community Sprint in Como 2015
Development meetings: Community sprints
©2017MarkusNeteler,CC-BY-SA
National and International Conferences!
Jo Hempel 2016
Thank you!
Contact:
Dr. Markus Neteler
Email: neteler@osgeo.org
Web: http://www.mundialis.de Credit:Sentinel-2A,22 Nov 2016
Contains modified Copernicus Sentinel data [2015-2016]/ESA/mundialis
1 of 36

More Related Content

What's hot(7)

25 Years of GRASS GIS25 Years of GRASS GIS
25 Years of GRASS GIS
Markus Neteler3.1K views
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015
GeoSolutions1.1K views
Brief FOSS4G IntroductionBrief FOSS4G Introduction
Brief FOSS4G Introduction
Jeff McKenna108 views
GrassGrass
Grass
Mayur Patil1.1K views

Similar to OSGeo ireland keynote 2017 by Markus Neteler(20)

OSGeo ireland keynote 2017 by Markus Neteler

Editor's Notes

  1. At the level of organizations many changes occurred: the GIS world became more professional and organized. In 1992 the GRASS Interagency Coordinating Commitee was founded, it was turned into the Open GRASS Foundation which then became the OpenGIS Consortium. The timeline shows the evolution. While Tim Berners-Lee constituted the World Wide Web Consortium, the today's OGC was established.
  2. Web Map Service (WMS1.3) Provides three operations protocols (GetCapabilities, GetMap, and GetFeatureInfo) in support of the creation and display of registered and superimposed map-like views of information that come simultaneously from multiple sources that are both remote and heterogeneous. Web Coverage Service (WCS) Extends the Web Map Server (WMS) interface to allow access to geospatial "coverages" that represent values or properties of geographic locations, rather than WMS generated maps (pictures). Web Feature Service (WFS) The purpose of the Web Feature Server Interface Specification (WFS) is to describe data manipulation operations on OpenGIS® Simple Features (feature instances) such that servers and clients can 'communicate' at the feature level. Web Map Context Documents (WMC) Create, store, and use "state" information from a WMS based client application
  3. Web Map Service (WMS1.3) Provides three operations protocols (GetCapabilities, GetMap, and GetFeatureInfo) in support of the creation and display of registered and superimposed map-like views of information that come simultaneously from multiple sources that are both remote and heterogeneous. Web Coverage Service (WCS) Extends the Web Map Server (WMS) interface to allow access to geospatial "coverages" that represent values or properties of geographic locations, rather than WMS generated maps (pictures). Web Feature Service (WFS) The purpose of the Web Feature Server Interface Specification (WFS) is to describe data manipulation operations on OpenGIS® Simple Features (feature instances) such that servers and clients can 'communicate' at the feature level. Web Map Context Documents (WMC) Create, store, and use "state" information from a WMS based client application