Dr. Marco Hugentobler, Sourcepole Twitter: @sourcepole. QGIS from a geodata viewer to a GIS platform

Similar documents
FOSS License Restrictions and Some Important Issues

Bastille Linux: Security Through Transparency

The Future of the PFMABE Suite: The open source business model in the Hydrographic World

Neues vom QGIS Server und QGIS-Webclient

New Features in QGIS. Versions 2.6, 2.8 and Marco Hugentobler (Sourcepole) and Andreas Neumann (Stadt Uster)

Traditional Commercial Software Development. Open Source Development. Traditional Assumptions. Intangible Goods. Dr. James A.

Overview. Open source toolchains. Buildroot features. Development process

A water network in QGIS

An Android based Quantum GIS prototype. Ramon Carrillo, Daniel Ochoa

On the Influence of Free Software on Code Reuse in Software Development

Building Custom GIS Applications using Open-Source Toolkits A Case Study

County of Los Angeles. Chief Information Office Preferred Technologies for Geographic Information Systems (GIS) September 2014

OSGeo Web Mapping Typification: GeoMajas, Mapbender, MapFish and OpenLayers. Christoph Baudson Arnulf Christl FOSS4G 2010 Barcelona

How To Know If You Can Get Open Source Software To Work For A Corporation

Creating a GIS based learning tool for the Faculty of Forest & Environment at the HNE Eberswalde

Design/build and visualization of political and social-statistics. statistics geodatabase by open source tools

OpenWIPS-ng A modular and Open source WIPS. Thomas d Otreppe, Author of Aircrack-ng

bluecape s Official Website

Web Mapping in Archaeology

An Introduction to Open Source Geospatial Tools

Easing embedded Linux software development for SBCs

Open Source GIS The Future?

UK Location Programme

Documentation and Project Organization

Introduction to OSGeo and QGIS

Embedded Linux development with Buildroot training 3-day session

Open Source GIS. Open Source GIS. Agenda. Open Source. Typische GIS Funktionen. LOTS Bern

CSPA. Common Statistical Production Architecture Descritption of the Business aspects of the architecture: business models for sharing software

Programming IoT Gateways With macchina.io

TITLE: Enhance ESB and BPM solutions with complex data transformation and connectivity for System z

SUMMER SCHOOL ON ADVANCES IN GIS

Iraklis Karampourniotis, Zoi Arvanitidou, Ioannis Paraschakis. Using open source software in gis training and education

Google and Open Source. Jeremy Allison Google Open Source Programs Office

VOL. 2, NO. 1, January 2012 ISSN ARPN Journal of Science and Technology ARPN Journals. All rights reserved

What's new in gvsig Desktop 2.0

Analysis of the Free GIS Software Applications in respect to INSPIRE services and OGC standards

Tuskar UI Documentation

Evaluation of Load/Stress tools for Web Applications testing

An Introduction to Mercurial Version Control Software

Integrated Open-Source Geophysical Processing and Visualization

Main Bullet #1 Main Bullet #2 Main Bullet #3

MayaVi: A free tool for CFD data visualization

Generate Android App

MARIST/IBM Joint Studies

GEO-RELATED OPEN SOURCE SOFTWARE DEVELOPMENT AT UNIVERSITY OF WEST BOHEMIA

How to Contribute to GStreamer

AN INTRODUCTION TO MAPBOX TOOLS AND SOFTWARE. Matt Gregory 24 July 2013

Based on: Google searches for language tutorials

Agile Requirements Definition for Software Improvement and Maintenance in Open Source Software Development

Enhanced Project Management for Embedded C/C++ Programming using Software Components

Design Requirements for an AJAX and Web-Service Based Generic Internet GIS Client

Statusreport MapServer

Open Source Geospatial Software. Bob Bruce, P.Eng Mapping and Lands Branch, Manitoba Conservation

GUI Test Automation How-To Tips

GEOENGINE MSc in Geomatics Engineering, Master Thesis Gina Campuzano

Transcription. Founder Interview - Panayotis Vryonis Talks About BigStash Cloud Storage. Media Duration: 28:45

Game Design From Concepts To Implementation

UGENE Quick Start Guide

freeradius A High Performance, Open Source, Pluggable, Scalable (but somewhat complex) RADIUS Server Aurélien Geron, Wifirst, 7 janvier 2011

DEVELOPMENT AND COMPARISON OF OPEN SOURCE BASED WEB GIS FRAMEWORKS ON WAMP AND APACHE TOMCAT WEB SERVERS

Writing Open Source Software for BlackBerry

BUSMASTER An Open Source Tool

ERIKA Enterprise pre-built Virtual Machine

CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)

TRD 05: Data Presentation techniques (Mapping) Quantum GIS User Guide

Publishing geospatial data to the web using the EEA infrastructure

Institute of Natural Resources Departament of General Geology and Land use planning Work with a MAPS

DEVELOPMENT OF A WEB GEOSERVICES PLATFORM FOR SCHOOL OF ENVIRONMENTAL SCIENCES, MAHATMA GANDHI UNIVERSITY, KERALA, INDIA

Using open source software for the supervision and management of the water resource system of Athens

GISBox Manual. Citiviz Sàrl

Choosing the right GIS framework for an informed Enterprise Web GIS Solution

Open source risk vs. Proprietary risk models

Overview of HPC Resources at Vanderbilt

Transcription:

QGIS from a geodata viewer to a GIS platform Dr. Marco Hugentobler, Sourcepole Twitter: @sourcepole

QGIS > Open source desktop GIS > License: GNU GPL, Version 3 > Founded in 2002 by Gary Sherman > C++, based on Qt libraries

Qt + GIS = QGIS C++, plattform independent Grahical user interfaces Interprocess communication... GIS functionality GIS data sources

Openhub.net says: > Total 28124 commits by 252 contributors > Has 689'473 lines of code > Project took (estimated) 186 years of effort > Maintained by a very large development team

Why is QGIS a successfull open source project?

QGIS is a bazaar!

What is a bazaar? > E. Raymond (1997): The Cathedral and the Bazaar > The cathedral development model > Code developed between releases is restricted to an exclusive group of software developers (or is not available at all) > Examples: proprietary software, GNU Emacs, GCC > Bazaar > Code is developed over the internet in view of the public. > Example: Linux kernel > Raymonds lessons for creating good open source software

QGIS and the bazaar > Open development process since project start in 2002 (because started by indiduals, not a single company) > Public source code repository on github: https://github.com/qgis/qgis > Bugtracker (hub.qgis.org) > Mailing lists: > http://lists.osgeo.org/mailman/listinfo/qgisuser > http://lists.osgeo.org/mailman/listinfo/qgisdeveloper > Chat: #qgis on irc.freenode.net

QGIS and the bazaar > Developer meetings twice a year (formerly known as 'hackfest')

Developers need > Every good work of software starts by scratching a developer's personal itch > 2002: Gary Sherman needed a map viewer for PostGIS tables on Linux > Bazaar style development nearly from the begin of the project

Developers need(2) > Developer driven project: concrete need, short-term goal > A larger number of developers and expert users is less likely to be wrong than only a few 'Experts' > A few Experts opinions back in 2003: > Software consultant A: A new software project can only be written in C#. > Software consultant B: A new software project can only be written in Java. > GIS consultant C: In near future, everything will be web based. No one will need a desktop GIS anymore.

Large tester / co-developer base > Given a large enough beta-tester and codeveloper base, almost every problem will be characterized quickly and the fix obvious to someone > If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource > E.g. 150 bugfixes between 2.8.2 and 2.8.3: https://github.com/qgis/qgis/compare/final -2_8_2%E2%80%A6final-2_8_3

Relase early. Release often > Release early. Release often. And listen to your customers > Longest period between releases between 0.7.3 (11. Oct 2005) and 0.8 (7. Jan 2007) > Now fixed release schedule with 3 releases per year > 3 Month feature window, 1 month feature freeze period

Uses you never expected > Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected > Bazaar approach stimulates innovation. Examples: > GRASS provider/plugin > Python bindings > Expressions / combine with python > QGIS server > Processing framework

GRASS provider / plugin > QGIS developer mailing list, 16. May 2003: I am GRASS user and contributor and I have done some initial experimental work on GRASS support for QGIS. My question is: Is this extension welcome in QGIS project? I think that GRASS support can bring to QGIS project more users and contributors (at least one ;)

GRASS plugin / provider (2) > Idea: Combine the analysis power of GRASS with the desktop of QGIS > GRASS provider reads data into QGIS with using the GRASS library > Toolbox executes GRASS commands and loads the result in QGIS > Good programmers know what to write. Great ones know what to rewrite (and reuse)

GRASS provider / plugin (3)

Expressions > Idea: Feature based calculator to evaluate expressions dynamically (usually depending on attributes and/or geometry) of a feature. > Applied (as patch) on 10th September 2005 > First usage: search in attribute table > Today: everywhere in the code, e.g. data defined symbology, atlas serial print, attribute table, virtual vector fields, > Recent addition: possibility to add userdefined functions in Python

Expressions (2) > QGIS-developer maling list, 18th March 2005: Hi all, finally I came to an agreement with my supervisor about my individual software project, here you can find list of things that have to be done till end of next semester I hope I will manage to do all of them :-)

Python bindings > C++ plugins nearly from the beginning of the project. Idea: keep core as small as possible to make the application modular > Python bindings since version 0.9 (October 2007). > Uses PyQt > Bazaar is when things start to get their own dynamics: > Plugin installer > Plugin repository (plugins.qgis.org) > 525 plugins in the official repository

Python bindings (2)

QGIS server > In the meantime (2006), QGIS is not only a desktop GIS, but also a library > QGIS mapserver has been developed in a university research project > Desktop GIS is 'out', service based geodata infrastructure is 'in' > No problem, why not build a service with QGIS as a rendering engine?

QGIS server (2) > QGIS-developer mailing list, 11th May 2007: Dear QGIS developer and users I'm happy to announce the start of the 'QGIS mapserver' project The idea of QGIS mapserver is simple: instead of using QGIS just as a desktop GIS, it can also be used as a server. The benefit is that bug fixes and extensions for the server also improve the desktop GIS (and the other way round) Contact me if you are interesting in joining development of QGIS mapserver, there is still a lot to do...

QGIS server (3) > Idea of QGIS server: Parse http request parameters, let QGIS library render the map, send result image back to the client

QGIS server (4) > The bazaar also happens here: > QGIS mapserver is part of the QGIS source tree in 2010 > A developer adds support for WFS and WCS in QGIS mapserver > => QGIS mapserver is now QGIS server > Python plugins for QGIS server

Processing framework > QGIS-developer mailing list, 21st March 2012: Just a quick comment that might be interesting related to that topic. I am about to release the first version of the SEXTANTE platform for QGIS. It contains a toolbox, a graphical modeler, script creator,, a batch processing interface, history, and much more. I wanted to wait a bit more until it is more or less stable, but since I see some action in the QGIS processing area, I think it is worth mentioning it now, so you can consider it.

Processing framework (2) > Formerly known as 'Sextante' > Combines processing algorithms from different open source software (e.g. GRASS, SAGA, Orefo Toolbox, R, QGIS) > Benefit: create analysis chains which run automatically and can be reused multiple times > Graphical editor > Export as python script possible

Processing framework (3)

Conclusions > Raymonds conclusion in 'The Cathedral and the Bazaar': Perhaps in the end the opensource culture will triumph not because cooperation is morally right, but simply because the closed-source world cannot win an evolutionary arms race with open-source communities that can put orders of magnitude more skilled time into a problem. > In the case of QGIS, bazaar was really the key to success

Thank you! Marco Hugentobler marco@sourcepole.ch