SlideShare a Scribd company logo
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Markus Neteler
Fondazione Edmund Mach, Trento, Italy
http://www.osgeo.org
SC24: Open Science goes Geo
Part II: Scientific Software
EGU 2015, Vienna
OSGeo: projects, incubation
and infrastructure
/******************************************************************************
* $Id: gdalwarper.cpp 27739 2014-09-25 18:49:52Z goatbar $
*
* Project: High Performance Image Reprojector
* Purpose: Implementation of high level convenience APIs for warper.
* Author: Frank Warmerdam, warmerdam@pobox.com
*
******************************************************************************
* Copyright (c) 2003, Frank Warmerdam <warmerdam@pobox.com>
* Copyright (c) 2008-2012, Even Rouault
* <even dot rouault at mines-paris dot org>
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
#include "gdalwarper.h"
#include "cpl_string.h"
#include "cpl_minixml.h"
#include "ogr_api.h"
#include "gdal_priv.h"
CPL_CVSID("$Id: gdalwarper.cpp 27739 2014-09-25 18:49:52Z goatbar
/**********************************************************************
/* GDALReprojectImage() */
/**********************************************************************
/**
* Reproject image.
*
* This is a convenience function utilizing the GDALWarpOperation class
* reproject an image from a source to a destination. In particular, this
* function takes care of establishing the transformation function to
* implement the reprojection, and will default a variety of other
* warp options.
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Geodata processing at its best
Distance to the outlet
Cinema style
data visualization
Volume analysis
Big Geodata
crunching
Image
Segmentation
Web Services
LiDAR time series
analysis
Spatial
databases
Pre / post
desaster assessment
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Open Source Geospatial Foundation:
OSGeo projects and related
DMZDMZ
Disk Array
BrowserBrowser MobileMobile
OpenLayers
TileCache
gvSig Mobile
Data Products
OSM
DesktopDesktop
QuantumGIS uDig
Mapbender
gvSigGrass GIS gvSigJUMP kosmo
Enterprise ServicesEnterprise Services
Information
Application Server
GeoNetworkMapServer deegreeGeoServer PostGIS
ZOO WPS pyWPS
Source: OSGeo-live presentation
Docker
… just an
Incomplete
View...!
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
OSGeo as a platform for
Free and Open Source GIS projects
What does OSGeo offer here?
● Platform for collaborative software development
● Legal advice on intellectual property management
and software licenses
● Community building
● Produce software documentation
● Testing and bugfixing
● Education and Outreach
● Infrastructure: source code hosting and
installer packages
… all community driven!
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Changing source code: what happens? (1/2)
tflag->description = _("Print topology information only");
if (G_parser(argc,argv))
exit(EXIT_FAILURE);
/* open input vector */
if ((mapset = G_find_vector2(in_opt->answer, "")) == NULL) {
G_fatal_error(_("Could not find input map <%s>"), in_opt->answer);
}
Email with code changes (diff)
is auto-generated and sent to
“commit” mailing list
and/or IRCOnline
source
code
repository
(git, svn)
Email notification triggers
updated of Quality
Assessment System (e.g.
coverity scan)
Developer changes a file and submits to
the online repository:
svn ci -m“v.info: i18N macro added“ main.c
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Code quality assessment
Changing source code: what happens? (2/2)
“Differences” (changes) email
Discussion triggered
among developers
Improved source
code after review
IRC robot feeds at #grass, #gdal, #qgis
IRC channel on freenode.net
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Code vetting: stay clean!
How to become OSGeo project?
● Mentored Incubation phase:
● code vetting (IP), community health check
● Project sustainability
● Graduation (or not)
http://www.osgeo.org/incubator
Legal aspects
● License compliance
● Don't copy from books like “Numerical Receipes in C”
●
Ensure that 3rd
party contributions are clean
● Employers must agree that work time is spent on coding (if applies)
Transparency and peer review help to minimize the risk.
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Script part:
Parser part (for GUI autocreation and command line support):
Ease of coding:
Example of GRASS GIS 7 and Python API
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Examples for programmer's manuals
http://grass.osgeo.org/programming7/
Additionally:
● Wiki pages
● Dev mailing lists
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Funding model
Open source development is not gratis:
● Direct funding of developers through (scientific) projects
● Crowdfunding campaigns
● Company support
● Voluntary work
● Donations
https://www.openhub.net/p/grass_gis
(9/2014)
Example of cost analysis:
(2013)
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Scientific Documentation of algorithms
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
OSGeo software as a platform
for sustainable Open Science!
● Reproducibility: Open source is the natural habitat for science and
research – wealth of scientific publications are documenting the
algorithms
● Return of Investment:
Example GRASS GIS' r.mapcalc: available since 1985, continuously
developed, user can still run old scripts in latest GRASS GIS 7 without
much update hassle while using latest implementation
● Auto-documentation: command line (besides GUI) generates map and
command history – metadata preserved “forever”
● Reliability: Regression tests and quality control systems often
integrated in the software itself
● Longevity for Open Science: code integrated in Open Source software
“survives” even if original authors would not continue – 30 years of
development
What's on offer?
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Coding fun at international code sprints
©2015,MarkusNeteler,Italy–CC-BY-SAlicense
Markus Neteler, PhD
Fondazione E. Mach (FEM)
Research and Innovation Center
GIS and Remote Sensing Unit
38010 S. Michele all'Adige (Trento), Italy
http://gis.cri.fmach.it
http://www.osgeo.org
markus.neteler@fmach.it
neteler@osgeo.org
http://www.osgeo.org
Thanks!

More Related Content

What's hot

GRASS GIS 7 capabilities: a graphical overview
GRASS GIS 7 capabilities: a graphical overviewGRASS GIS 7 capabilities: a graphical overview
GRASS GIS 7 capabilities: a graphical overview
Markus Neteler
 
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
South Tyrol Free Software Conference
 
The GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS SeminarThe GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS Seminar
Markus Neteler
 
Wherecamp Berlin Introduction to RAW GNSS Measurements
Wherecamp Berlin Introduction to RAW GNSS MeasurementsWherecamp Berlin Introduction to RAW GNSS Measurements
Wherecamp Berlin Introduction to RAW GNSS Measurements
The European GNSS Agency (GSA)
 
Pseudoranges from your Android smartphone
Pseudoranges from your Android smartphonePseudoranges from your Android smartphone
Pseudoranges from your Android smartphone
Lukasz Kosma Bonenberg
 
ePOM - Fundamentals of Research Software Development - Code Version Control
ePOM - Fundamentals of Research Software Development - Code Version ControlePOM - Fundamentals of Research Software Development - Code Version Control
ePOM - Fundamentals of Research Software Development - Code Version Control
Giuseppe Masetti
 
RAW GNSS in Android Nugat
RAW GNSS in Android NugatRAW GNSS in Android Nugat
RAW GNSS in Android Nugat
Lukasz Kosma Bonenberg
 

What's hot (7)

GRASS GIS 7 capabilities: a graphical overview
GRASS GIS 7 capabilities: a graphical overviewGRASS GIS 7 capabilities: a graphical overview
GRASS GIS 7 capabilities: a graphical overview
 
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
SFScon 21 - Silvia Franceschi Andrea Antonello - Smash a customizable cross-p...
 
The GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS SeminarThe GRASS GIS software (with QGIS) - GIS Seminar
The GRASS GIS software (with QGIS) - GIS Seminar
 
Wherecamp Berlin Introduction to RAW GNSS Measurements
Wherecamp Berlin Introduction to RAW GNSS MeasurementsWherecamp Berlin Introduction to RAW GNSS Measurements
Wherecamp Berlin Introduction to RAW GNSS Measurements
 
Pseudoranges from your Android smartphone
Pseudoranges from your Android smartphonePseudoranges from your Android smartphone
Pseudoranges from your Android smartphone
 
ePOM - Fundamentals of Research Software Development - Code Version Control
ePOM - Fundamentals of Research Software Development - Code Version ControlePOM - Fundamentals of Research Software Development - Code Version Control
ePOM - Fundamentals of Research Software Development - Code Version Control
 
RAW GNSS in Android Nugat
RAW GNSS in Android NugatRAW GNSS in Android Nugat
RAW GNSS in Android Nugat
 

Similar to OSGeo: projects, incubation and infrastructure

Rina sim workshop
Rina sim workshopRina sim workshop
Rina sim workshop
ICT PRISTINE
 
IOT SOLUTIONS FROM INTEL
IOT SOLUTIONS FROM INTELIOT SOLUTIONS FROM INTEL
IOT SOLUTIONS FROM INTEL
onebee kumar
 
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET-  	  IOT Dune Buggy –Control it from AnywhereIRJET-  	  IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET Journal
 
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from AnywhereIRJET- IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET Journal
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening Overview
Jody Garnett
 
MLOps implemented - how we combine the cloud & open-source to boost data scie...
MLOps implemented - how we combine the cloud & open-source to boost data scie...MLOps implemented - how we combine the cloud & open-source to boost data scie...
MLOps implemented - how we combine the cloud & open-source to boost data scie...
GetInData
 
aframe-webthing-20190710
aframe-webthing-20190710aframe-webthing-20190710
aframe-webthing-20190710
Phil www.rzr.online.fr
 
WAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
WAM: An embedded web runtime history for LG webOS and Automotive Grade LinuxWAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
WAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
Igalia
 
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICEMODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
FIDE Master Tihomir Dovramadjiev PhD
 
Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2
JooinK
 
Node-RED Interoperability Test
Node-RED Interoperability TestNode-RED Interoperability Test
Node-RED Interoperability Test
Boris Adryan
 
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdfUC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
Wlamir Molinari
 
webthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzrwebthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzr
Phil www.rzr.online.fr
 
OSGi IoT Demo @ CeBIT 2016
OSGi IoT Demo @ CeBIT 2016OSGi IoT Demo @ CeBIT 2016
OSGi IoT Demo @ CeBIT 2016
mfrancis
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
Samsung Open Source Group
 
It's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right NowIt's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right Now
Ken Mugrage
 
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN ControllersSummit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
OPNFV
 
webthing-iotjs-20181027rzr
webthing-iotjs-20181027rzrwebthing-iotjs-20181027rzr
webthing-iotjs-20181027rzr
Phil www.rzr.online.fr
 
FME 2020 Unleashed: Authoring
FME 2020 Unleashed: AuthoringFME 2020 Unleashed: Authoring
FME 2020 Unleashed: Authoring
Safe Software
 
Rejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform GainRejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform Gain
Łukasz Piątkowski
 

Similar to OSGeo: projects, incubation and infrastructure (20)

Rina sim workshop
Rina sim workshopRina sim workshop
Rina sim workshop
 
IOT SOLUTIONS FROM INTEL
IOT SOLUTIONS FROM INTELIOT SOLUTIONS FROM INTEL
IOT SOLUTIONS FROM INTEL
 
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET-  	  IOT Dune Buggy –Control it from AnywhereIRJET-  	  IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from Anywhere
 
IRJET- IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from AnywhereIRJET- IOT Dune Buggy –Control it from Anywhere
IRJET- IOT Dune Buggy –Control it from Anywhere
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening Overview
 
MLOps implemented - how we combine the cloud & open-source to boost data scie...
MLOps implemented - how we combine the cloud & open-source to boost data scie...MLOps implemented - how we combine the cloud & open-source to boost data scie...
MLOps implemented - how we combine the cloud & open-source to boost data scie...
 
aframe-webthing-20190710
aframe-webthing-20190710aframe-webthing-20190710
aframe-webthing-20190710
 
WAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
WAM: An embedded web runtime history for LG webOS and Automotive Grade LinuxWAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
WAM: An embedded web runtime history for LG webOS and Automotive Grade Linux
 
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICEMODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
MODERN ACCESSIBLE APPLICATION OF THE SYSTEM BLENDER IN 3D DESIGN PRACTICE
 
Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2Javascript as a target language - GWT kickoff - part1/2
Javascript as a target language - GWT kickoff - part1/2
 
Node-RED Interoperability Test
Node-RED Interoperability TestNode-RED Interoperability Test
Node-RED Interoperability Test
 
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdfUC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
UC18NA-D3D202-Dianomic-IZoratti-Introduction-To-FogLAMP.pdf
 
webthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzrwebthing-iotjs-tizenrt-cdl2018-20181117rzr
webthing-iotjs-tizenrt-cdl2018-20181117rzr
 
OSGi IoT Demo @ CeBIT 2016
OSGi IoT Demo @ CeBIT 2016OSGi IoT Demo @ CeBIT 2016
OSGi IoT Demo @ CeBIT 2016
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
 
It's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right NowIt's Not Continuous Delivery If You Can't Deploy Right Now
It's Not Continuous Delivery If You Can't Deploy Right Now
 
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN ControllersSummit 16: NetIDE: Integrating and Orchestrating SDN Controllers
Summit 16: NetIDE: Integrating and Orchestrating SDN Controllers
 
webthing-iotjs-20181027rzr
webthing-iotjs-20181027rzrwebthing-iotjs-20181027rzr
webthing-iotjs-20181027rzr
 
FME 2020 Unleashed: Authoring
FME 2020 Unleashed: AuthoringFME 2020 Unleashed: Authoring
FME 2020 Unleashed: Authoring
 
Rejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform GainRejekts 24 EU No GitOps Pain, No Platform Gain
Rejekts 24 EU No GitOps Pain, No Platform Gain
 

More from Markus Neteler

Tracking emerging diseases from space: Geoinformatics for human health
Tracking emerging diseases from space: Geoinformatics for human healthTracking emerging diseases from space: Geoinformatics for human health
Tracking emerging diseases from space: Geoinformatics for human health
Markus Neteler
 
Deriving environmental indicators from massive spatial time series using open...
Deriving environmental indicators from massive spatial time series using open...Deriving environmental indicators from massive spatial time series using open...
Deriving environmental indicators from massive spatial time series using open...
Markus Neteler
 
GRASS GIS lightening talk at FOSS4G 2006
GRASS GIS lightening talk at FOSS4G 2006GRASS GIS lightening talk at FOSS4G 2006
GRASS GIS lightening talk at FOSS4G 2006
Markus Neteler
 
25 Years of GRASS GIS
25 Years of GRASS GIS25 Years of GRASS GIS
25 Years of GRASS GIS
Markus Neteler
 
From a niche to a global user community: Open Source GIS and OSGeo
From a niche to a global user community: Open Source GIS and OSGeoFrom a niche to a global user community: Open Source GIS and OSGeo
From a niche to a global user community: Open Source GIS and OSGeo
Markus Neteler
 
GRASS and OSGeo: a framework for archeology
GRASS and OSGeo: a framework for archeologyGRASS and OSGeo: a framework for archeology
GRASS and OSGeo: a framework for archeology
Markus Neteler
 
The need of Interoperability in Office and GIS formats
The need of Interoperability in Office and GIS formatsThe need of Interoperability in Office and GIS formats
The need of Interoperability in Office and GIS formats
Markus Neteler
 
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
Markus Neteler
 

More from Markus Neteler (8)

Tracking emerging diseases from space: Geoinformatics for human health
Tracking emerging diseases from space: Geoinformatics for human healthTracking emerging diseases from space: Geoinformatics for human health
Tracking emerging diseases from space: Geoinformatics for human health
 
Deriving environmental indicators from massive spatial time series using open...
Deriving environmental indicators from massive spatial time series using open...Deriving environmental indicators from massive spatial time series using open...
Deriving environmental indicators from massive spatial time series using open...
 
GRASS GIS lightening talk at FOSS4G 2006
GRASS GIS lightening talk at FOSS4G 2006GRASS GIS lightening talk at FOSS4G 2006
GRASS GIS lightening talk at FOSS4G 2006
 
25 Years of GRASS GIS
25 Years of GRASS GIS25 Years of GRASS GIS
25 Years of GRASS GIS
 
From a niche to a global user community: Open Source GIS and OSGeo
From a niche to a global user community: Open Source GIS and OSGeoFrom a niche to a global user community: Open Source GIS and OSGeo
From a niche to a global user community: Open Source GIS and OSGeo
 
GRASS and OSGeo: a framework for archeology
GRASS and OSGeo: a framework for archeologyGRASS and OSGeo: a framework for archeology
GRASS and OSGeo: a framework for archeology
 
The need of Interoperability in Office and GIS formats
The need of Interoperability in Office and GIS formatsThe need of Interoperability in Office and GIS formats
The need of Interoperability in Office and GIS formats
 
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
Free GIS Software meets zoonotic diseases: From raw data to ecological indica...
 

Recently uploaded

Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
Pedro J. Molina
 
Refactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contextsRefactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contexts
Michał Kurzeja
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
michniczscribd
 
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery FleetStork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Vince Scalabrino
 
Microsoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptxMicrosoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptx
jrodriguezq3110
 
Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.
KrishnaveniMohan1
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
gapen1
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
Maitrey Patel
 
42 Ways to Generate Real Estate Leads - Sellxpert
42 Ways to Generate Real Estate Leads - Sellxpert42 Ways to Generate Real Estate Leads - Sellxpert
42 Ways to Generate Real Estate Leads - Sellxpert
vaishalijagtap12
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
OnePlan Solutions
 
Streamlining End-to-End Testing Automation
Streamlining End-to-End Testing AutomationStreamlining End-to-End Testing Automation
Streamlining End-to-End Testing Automation
Anand Bagmar
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
kalichargn70th171
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies
 
The Role of DevOps in Digital Transformation.pdf
The Role of DevOps in Digital Transformation.pdfThe Role of DevOps in Digital Transformation.pdf
The Role of DevOps in Digital Transformation.pdf
mohitd6
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
ervikas4
 
Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
confluent
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
widenerjobeyrl638
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
sandeepmenon62
 

Recently uploaded (20)

bgiolcb
bgiolcbbgiolcb
bgiolcb
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
 
Refactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contextsRefactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contexts
 
Beginner's Guide to Observability@Devoxx PL 2024
Beginner's  Guide to Observability@Devoxx PL 2024Beginner's  Guide to Observability@Devoxx PL 2024
Beginner's Guide to Observability@Devoxx PL 2024
 
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery FleetStork Product Overview: An AI-Powered Autonomous Delivery Fleet
Stork Product Overview: An AI-Powered Autonomous Delivery Fleet
 
Microsoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptxMicrosoft-Power-Platform-Adoption-Planning.pptx
Microsoft-Power-Platform-Adoption-Planning.pptx
 
Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.Penify - Let AI do the Documentation, you write the Code.
Penify - Let AI do the Documentation, you write the Code.
 
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
如何办理(hull学位证书)英国赫尔大学毕业证硕士文凭原版一模一样
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
 
42 Ways to Generate Real Estate Leads - Sellxpert
42 Ways to Generate Real Estate Leads - Sellxpert42 Ways to Generate Real Estate Leads - Sellxpert
42 Ways to Generate Real Estate Leads - Sellxpert
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
 
Streamlining End-to-End Testing Automation
Streamlining End-to-End Testing AutomationStreamlining End-to-End Testing Automation
Streamlining End-to-End Testing Automation
 
What is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdfWhat is Continuous Testing in DevOps - A Definitive Guide.pdf
What is Continuous Testing in DevOps - A Definitive Guide.pdf
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
 
The Role of DevOps in Digital Transformation.pdf
The Role of DevOps in Digital Transformation.pdfThe Role of DevOps in Digital Transformation.pdf
The Role of DevOps in Digital Transformation.pdf
 
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptxMigration From CH 1.0 to CH 2.0 and  Mule 4.6 & Java 17 Upgrade.pptx
Migration From CH 1.0 to CH 2.0 and Mule 4.6 & Java 17 Upgrade.pptx
 
Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
 
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
 
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptxOperational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
Operational ease MuleSoft and Salesforce Service Cloud Solution v1.0.pptx
 

OSGeo: projects, incubation and infrastructure

  • 1. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Markus Neteler Fondazione Edmund Mach, Trento, Italy http://www.osgeo.org SC24: Open Science goes Geo Part II: Scientific Software EGU 2015, Vienna OSGeo: projects, incubation and infrastructure /****************************************************************************** * $Id: gdalwarper.cpp 27739 2014-09-25 18:49:52Z goatbar $ * * Project: High Performance Image Reprojector * Purpose: Implementation of high level convenience APIs for warper. * Author: Frank Warmerdam, warmerdam@pobox.com * ****************************************************************************** * Copyright (c) 2003, Frank Warmerdam <warmerdam@pobox.com> * Copyright (c) 2008-2012, Even Rouault * <even dot rouault at mines-paris dot org> * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: #include "gdalwarper.h" #include "cpl_string.h" #include "cpl_minixml.h" #include "ogr_api.h" #include "gdal_priv.h" CPL_CVSID("$Id: gdalwarper.cpp 27739 2014-09-25 18:49:52Z goatbar /********************************************************************** /* GDALReprojectImage() */ /********************************************************************** /** * Reproject image. * * This is a convenience function utilizing the GDALWarpOperation class * reproject an image from a source to a destination. In particular, this * function takes care of establishing the transformation function to * implement the reprojection, and will default a variety of other * warp options.
  • 2. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Geodata processing at its best Distance to the outlet Cinema style data visualization Volume analysis Big Geodata crunching Image Segmentation Web Services LiDAR time series analysis Spatial databases Pre / post desaster assessment
  • 3. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Open Source Geospatial Foundation: OSGeo projects and related DMZDMZ Disk Array BrowserBrowser MobileMobile OpenLayers TileCache gvSig Mobile Data Products OSM DesktopDesktop QuantumGIS uDig Mapbender gvSigGrass GIS gvSigJUMP kosmo Enterprise ServicesEnterprise Services Information Application Server GeoNetworkMapServer deegreeGeoServer PostGIS ZOO WPS pyWPS Source: OSGeo-live presentation Docker … just an Incomplete View...!
  • 4. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense OSGeo as a platform for Free and Open Source GIS projects What does OSGeo offer here? ● Platform for collaborative software development ● Legal advice on intellectual property management and software licenses ● Community building ● Produce software documentation ● Testing and bugfixing ● Education and Outreach ● Infrastructure: source code hosting and installer packages … all community driven!
  • 5. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Changing source code: what happens? (1/2) tflag->description = _("Print topology information only"); if (G_parser(argc,argv)) exit(EXIT_FAILURE); /* open input vector */ if ((mapset = G_find_vector2(in_opt->answer, "")) == NULL) { G_fatal_error(_("Could not find input map <%s>"), in_opt->answer); } Email with code changes (diff) is auto-generated and sent to “commit” mailing list and/or IRCOnline source code repository (git, svn) Email notification triggers updated of Quality Assessment System (e.g. coverity scan) Developer changes a file and submits to the online repository: svn ci -m“v.info: i18N macro added“ main.c
  • 6. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Code quality assessment Changing source code: what happens? (2/2) “Differences” (changes) email Discussion triggered among developers Improved source code after review IRC robot feeds at #grass, #gdal, #qgis IRC channel on freenode.net
  • 7. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Code vetting: stay clean! How to become OSGeo project? ● Mentored Incubation phase: ● code vetting (IP), community health check ● Project sustainability ● Graduation (or not) http://www.osgeo.org/incubator Legal aspects ● License compliance ● Don't copy from books like “Numerical Receipes in C” ● Ensure that 3rd party contributions are clean ● Employers must agree that work time is spent on coding (if applies) Transparency and peer review help to minimize the risk.
  • 8. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Script part: Parser part (for GUI autocreation and command line support): Ease of coding: Example of GRASS GIS 7 and Python API
  • 9. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Examples for programmer's manuals http://grass.osgeo.org/programming7/ Additionally: ● Wiki pages ● Dev mailing lists
  • 10. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Funding model Open source development is not gratis: ● Direct funding of developers through (scientific) projects ● Crowdfunding campaigns ● Company support ● Voluntary work ● Donations https://www.openhub.net/p/grass_gis (9/2014) Example of cost analysis: (2013)
  • 12. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense OSGeo software as a platform for sustainable Open Science! ● Reproducibility: Open source is the natural habitat for science and research – wealth of scientific publications are documenting the algorithms ● Return of Investment: Example GRASS GIS' r.mapcalc: available since 1985, continuously developed, user can still run old scripts in latest GRASS GIS 7 without much update hassle while using latest implementation ● Auto-documentation: command line (besides GUI) generates map and command history – metadata preserved “forever” ● Reliability: Regression tests and quality control systems often integrated in the software itself ● Longevity for Open Science: code integrated in Open Source software “survives” even if original authors would not continue – 30 years of development What's on offer?
  • 14. ©2015,MarkusNeteler,Italy–CC-BY-SAlicense Markus Neteler, PhD Fondazione E. Mach (FEM) Research and Innovation Center GIS and Remote Sensing Unit 38010 S. Michele all'Adige (Trento), Italy http://gis.cri.fmach.it http://www.osgeo.org markus.neteler@fmach.it neteler@osgeo.org http://www.osgeo.org Thanks!