QGIS Details

This entry is part 3 of 10 in the series September 2018

How features are developed, plus details on releases, support, and plugins. 

Editor’s note: Tim Sutton has been a figurehead for free and open source software (FOSS), is past chair of the QGIS steering committee and is also co-owner of Kartoza. Here he kindly writes about how QGIS works on a project level from his vast experience. – Nicholas Duggan, FRGS, CGeog (GIS) 

Whilst most readers may be familiar with the proprietary software model (where the source code of applications is not shared with clients and users), over the past 30 or so years, there has been a wellspring of new software developed under a new, open, model. This software often generically referred to as “open source” or “free and open source software (FOSS)” is provided with the complete source code of the product that can be modified and shared at will.

The “free” in “free and open source software” (FOSS) does not refer to financial cost. Rather it refers to “freedom” the freedom to procure, provision, modify, and redistribute the software both in binary and source-code forms. 

FOSS has gained so much ground over this that it is now the driver for large swathes of the internet, with large companies such as Google using FOSS products in massive deployments within their infrastructure. It has increasingly made inroads onto desktop and mobile environments, too, with popular projects such as the Firefox web browser and the core of the Android phone operating system being developed under this model (amongst many others).

In 2002 Gary Sherman, a lone developer in Anchorage, Alaska, started creating an open source geographical information system which is today known as QGIS. He shared his work over the internet, and, over the subsequent years, hundreds of developers, translators, documentation writers, and other contributors have built up the software to the point that is now, 17 years later, a competitive, feature-rich GIS application that runs on Windows, MacOS, and Linux operating systems.

Your Projects and QGIS

QGIS, like popular proprietary GIS applications, is a software system for creating, analyzing, visualizing, and sharing spatial information. In QGIS, our users come from every sector of civil society and commerce, including banking, national and local government, insurance, conservation, mining, civil engineering, and many more.

You can, for example, open a project containing your city plan with separate map layers of information representing roads, buildings, zoning regions, infrastructure, and so on. You can show and hide individual layers and attach and view attribute information.

QGIS includes “data-driven” styling rule-based tools for creating rich cartographic products from your spatial data. It has a host of fill types, line-styling options, point-marker styles, color ramps, and other options that allow you to govern how your data is displayed.

Digitizing

One of the powerful features of QGIS is the set of tools it provides for digitizing. This includes support for snapping to features within the same layer and features in other layers.

There are tools for vertex-based editing of line and polygon layers, splitting and joining geometries, “trace” digitizing, copying, moving, rotating, and simplifying features.

QGIS provides CAD-like tools for constraining distances and angles and ensuring lines are perpendicular via its Advanced Digitizing Panel.

Plus, it provides support for importing DXF and DWG files and exporting to DXF files.

QGIS also leverages GDAL/OGR to support a huge range of other vector and raster formats from the venerable Esri Shapefile to more modern formats like Esri File Geodatabases and the open Geopackage standard. This broad format support makes it easy to use data from a diverse range of sources.

Long-term Releases and Commercial Support

Tim Sutton

The QGIS.ORG project releases a new version of QGIS every four months. This is in keeping with the open source mantra: “release early, release often.” These frequent releases are a key mechanism for the project’s long-term sustainability. 

Because we do not collect license or subscription fees from our users, our primary mechanism for introducing new features into the project is through business-to-developer agreements.

For example, a local government may get good use out of QGIS but needs a feature critical for their workflow. They would approach one of the many commercial support providers active in the QGIS project and commission them to implement the new feature for an agreed fee. The developer would advise his/her client at the outset of negotiations whether the new feature is likely to be approved as a new core feature for QGIS.

Once the new feature is incorporated, it will be automatically available in the “nightly build.” 

Windows and Linux installers and become part of the next four monthly release. This is a somewhat novel approach compared to the relationship between a client and a proprietary vendor where the client has little ability to directly bring about the addition of a new feature.

For some organizations, the stability of the software and its feature set is of more concern as they do not wish to deal with potential bugs that may arrive with new features or with training users on new functionality arriving in QGIS every four months. For this class of user, QGIS.ORG provides long-term release (LTR) builds. These are supported with bug fixes for at least one year but do not receive any new features. The LTR release is normally released in “non-LTR mode” for several months before it enters LTR, during which it is stabilized with regular bug fixing.

Plugins

QGIS provides a plugin system that allows any person or organization to extend the functionality to meet their specific needs. This is especially useful for organizations that need features that are very specific to a domain and probably would not be accepted into the generic core QGIS offering.

Plugins can be hosted and distributed locally in your organization or made available to the many hundreds of thousands of QGIS users via the QGIS plugin repository at plugins.qgis.org/plugins/ (if it meets our publishing requirements). Currently, there are more than 900 plugins listed there, any of which can be easily discovered and installed from within QGIS desktop with a few clicks of the mouse. (if it meets our publishing requirements).

Sponsors and Funding

QGIS.ORG relies on sponsorships and donations to provide funds to the project. These funds are used to pay developers and community members to carry out tasks such as bug fixing for upcoming and LTR versions of QGIS, improve the project documentation, host services, fund developer meetings, and so on.

To give an idea of scale, the QGIS.ORG budget for 2018 is around Euro 130,000, which is truly minuscule compared to the budgets of most proprietary GIS vendors. The B2D developer economy around QGIS is considerably more than that, and there is a huge amount of effort devoted to the project on a volunteer basis, the financial value of which is hard to estimate.

This model is very efficient as almost all of the financial activity surrounding QGIS gets converted directly into improvements for the project rather than overheads for marketing departments, accountants, office rentals, administrative salaries, and all the other things that typically weigh heavily against an enterprise’s bottom line.

Something for Everyone

Beneficiaries of QGIS include but are not limited to people who use it the following way.

  • Participating in an open source project such as QGIS can be an exhilarating and freeing experience. IT managers can deploy it without the need to concern themselves with license managers and procurement and can cater to users with heterogeneous operating systems.
  • GIS managers can mold the software to their requirements., extending it easily with new features and plugins.
  • GIS professionals can gain access to a wide range of GIS capabilities and a huge and friendly community who can support their activities.
  • Students and people new to GIS can run the software at home on their personal computers and use it to ramp up their skills.
  • Entrepreneurs can use QGIS to develop their own products and services.

There really is something there for everyone!


Drivers and Motivations for Using QGIS

Additional comments from Andreas Neumann

[Editor’s note: Andreas Neumann is a GIS project manager (development) with “Kanton Zug, Grundbuch- und Vermessungsamt” (Switzerland). he is the current treasurer for the QGIS organization, and is a a board member of QGIS.ORG. Neumann’s comments were received after the original article went to the printer.]

Two major drivers, next to cost savings, as motivations for using QGIS are:

– flexibility
– speed of development
 
QGIS is these days a very flexible toolkit – both for regular users and developers. A lot of things can be done through configuration only, by power users, using expressions, forms and widgets, model builder, etc., but if you are a developer, the possibilities are almost endless. There are quite a few development projects around, that use QGIS as the engine, but develop a completely different UI on to of that.
 
Regarding speed of development: if you have ever tried to get a new feature that you want as a customer into either QGIS or some other major commercial GIS, you will probably find out that in 90% of the cases it is much quicker to get the new feature into QGIS than into the product of the commercial competitor. You have a much better and more direct access to the developer team at the QGIS project, and if you invest financial resources and find a good developer, you can get new functionality in QGIS quite fast. There is a large pool of know-how, skills and competencies within the QGIS developer community (and the related FOSS4G libraries on which QGIS builds) and the community will help you find the right developer for solving your problem.
 
Challenges are sometimes: coordination and making sure that things that have been developed once won’t be negatively affected or broken by other development happening later or in parallel.

 

 

 

 

Series Navigation<< Founder of QGIS: Gary ShermanMini Map-Makers >>

Leave a Reply

Your email address will not be published. Required fields are marked *