Tim Sutton’s been involved with the QGIS project for a long time. He’s a QGIS hacker and a GIS geek. But he’s not your usual long-haired, sandal-wearing hippy working out of his garden shed. He happens to run a successful business based on open source GIS software.
It’s software that shares the actual instruction code, and the binary you run on your computer.
There are different versions and variants of how that sharing happens. Essentially, you get access to the underlying recipe of the software. You can modify it and adapt it for your needs.
There is a spectrum of open source licenses, and within each, a range of things can happen.
At one end, permissive licenses allow you to take the software and do whatever you like with it.
At the other end, there are the copy left licenses. They embed a requirement for sharing back into the license. They share their intellectual property with you, and they expect you to share whatever improvements or enhancements you make with them or with a community of users.
Within these agreements, various other things govern the way people perceive these licenses.
Sometimes, a group of people built a software together, and they all individually own part of that software’s IP. Such is the case for QGIS under the GPL (GNU Public License).
In other cases, companies or a single entity have accumulated the IP together and own that software’s copyright. That’s important for licensing. Some software projects, for example, the QT framework which is the development framework that we built QGIS on, is dual-licensed ̶ it can be marketed in a proprietary and an open source way. This is only possible to do when there’s a single owner of the software.
At Kartoza, we provide training and support, amongst other things, for people using open source packages, such as QGIS or Postgres. This could be a series of training courses or providing help desk type support.
We also do bespoke open source development ̶ web, desktop and mobile applications. There is usually a problem that needs to be solved, mostly with open source. We build and customize websites or deploy an existing web application and configure it.
Slowly, but not as much as we would like. A lot of infrastructure needs to happen around training before it can become the primary part of our business.
Thus, training is often an adjunct to other services that we provide. We might deploy a website with GeoNode, GeoServer, or Postgres, and at the same time, train the users to use those tools.
Offering training on its own can be tricky as providers need to navigate compliance and certification waters. For example, there is a standards body in South Africa that requires training held for government employees to comply with SAQA (South African Qualifications Authority). If your training course is not compliant, you don’t get an audience from the government officials.
This is common around the world. Prominent software vendors have already spent considerable time and effort to get compliance and build an audience. It’s hard to compete with that.
Primarily from the government and the infrastructure and humanitarian sectors.
People from the private sector are also trying to solve problems like mining or drone mapping. They’ve heard about open source, and they want to get skilled faster than they would do by doing it alone online.
Some people think open source is the best thing out there, and they just want to use it.
Lower cost is usually a factor. But open source and free software are never free.
Yes, the sticker price has been removed, but the surrounding costs stay. If you install QGIS, you’ll still need computers, training, and a system administrator to configure it and update it with the latest versions.
Are your users going to take ten weeks learning QGIS by themselves or spend a week in a course and have someone walk them through it?
People value their time in different ways in different organizations.
Some people love the idea of building their infrastructure on open source.
Others, like one of our systems we built for biodiversity informatics, just want their problem solved, and they don’t care if it’s open source or not. This organization wanted to see dots on a map where fish have been caught in rivers. But then they discovered that there’s added value that comes with building something this way.
It gives customers certain freedoms over proprietary software. If they’re not satisfied with their current vendor, they can walk over to another and get the support that serves them best.
The barrier to entry is low. It’s an ecosystem with a great selection of tools.
If your organization cares about the bigger picture, the world, doing good, and contributing to society, open source can be an upliftment ̶ in terms of how you approach your work and the tools you use.
There are lots.
You may have removed the pitfalls of using a proprietary vendor, but you’ve just added different ones as an open source company.
Let’s say you want to add a pink button on the QGIS toolbar that always shows the latest picture of Kim Kardashian’s Instagram page. And you want it to show in the middle of the map, too.
You can see how the community might not accept it into the code base, no matter how much you’d love to commit it or how much you’ve been funded to add this button in.
Whatcan you offer to your client? Whatwill the community accept? Howdo you make your client aware of the sensitivities that come with working with such tools? That the pink button they want may never make it to the mainstream application?
Of course, you can always offer to build them a copy of QGIS and customize it. I’d resist doing that. Can you imagine the maintenance cost, besides syncing and upstream changes?
There’s a reason why even QGIS has processes. The QGIS Enhancement Proposal (QEP) process is there to put your planned changes to the crowd and get approval before you build it.
But then how do you quote customers a project knowing there’s so much planning and consulting work beforehand?
What about long-term maintenance of the project you delivered? Customers expect you to support that extra feature you added to QGIS. How do you factor this into your pricing? Many times, you cannot, or you didn’t, and you end up spending your spare time and funds on maintenance.
You should always make your best attempt to factor future maintenance in and not only charge the build.
Talking of maintenance, always consider that if you want your product to work in two to ten years when you’ve moved from version 1 to version X, you need support agreements in place with an understanding from the customer that they need to invest part of their project funding into upkeep.
I want to develop a Star Wars plugin.
You’d probably get less resistance doing that.
But yes, even plugins have standards they need to meet in order to be accepted to the plugin repository.
Standards are important. If someone wants to use an algorithm which was a proprietary package and they want to link to it from a plugin ̶ is that crossing a licensing line?
QGIS core is where the standards and entry barriers are a lot higher for quality control and community acceptance.
Then, the QGIS official plugin repository is where there’s still a lot of screening that happens before a plugin makes its way in.
Last, a third-party repository, or make your own, is often used by customers who create an internal enterprise plugin repository. They can publish whichever plugins they care about or new ones that they made themselves. Over in QGIS, they connect to this third-party repository where, other than their organization, nobody’s screening what goes in.
What seems like a potential problem is also a tremendous asset for all of us.
Let’s turn this around.
What if someone’s looking for a solution that someone else already solved 90%? It’s all there in the commons of code, and you can benefit from it.
You can tell your customer that Joe Bloggs over there already made a plugin that almost does what they want. They can pay you to deliver the rest of the solution without paying for a fresh new plugin. Joe gets his plugin updated, and the code is shared back to him.
For any problem, someone’s already at least partially provided a solution. Let’s just stand on the shoulders of giants, and learn from their experience, take some of the IP and share back the solution.
I rarely encounter customers who flatly decline sharing the work back or insist on doing everything in ESRI, MS SQL, or Oracle instead of QGIS or Postgres.
It happens, occasionally, that their business model doesn’t support making things public, or they simply decide not to. We never push the point.
Multinational organizations understand the value of open source, the absence of license fees or expensive arrangements with companies, and the freedom to build a solution with us and run with it. They can continue using you for support if they need it, but they can be flexible about managing the costs of what they’ve built with you.
Changes are coming to all computer platforms.
Apple and other companies are changing to Arm. Open source has already been on Arm for a long time. There are other, longer-term, noteworthy things happening to VR, for example. Without a doubt, once those things become popular enough, open source will just migrate onto those platforms.
If anything, more and more people will use open source to solve their problems.
It’ll be around. I’m sure of it.
We’re not talking about software as a service (SaaS) platform, but the foundations of what the community of open source developers and contributors produce. It’s always going to be around and open ̶ unless GitHub gets wiped off the face of the Earth.
Even then, different projects’ source code is widely replicated, redistributed, and redundantly available. There is little to fear of the software ever vanishing, far less than one of Google’s cool new platforms, which disappears in two years. You’re far more insulated from that happening in the open source world.
Open source gives you freedom. Not in a free beer or a free lunch way, but the ability to pick your vendor to customize the software to your unique situation.
Open source is flexible. You want to add a new button to QGIS? Try sending a Tweet out to developers, offering them a payment, and see if they can make it happen. A couple of weeks later, you might well be using that button.
Attempt the same for MS Word or Esri. Good luck to you ̶ zero chance to get to the source code.
There’s a lot of talk about the pitfalls and restrictions that come with working with open source and what it can impose on you. But there’s also a tremendous amount of freedom that comes separately from operating in that framework. You can change the software’s direction and improve it substantially, which would be next to impossible to do within a proprietary software model.
It’s not a diehardFreedom or Nothing world where everything should only be built with free software.
Neither is it aProprietary Software only world.
It’s a Pragmatic world.
When businesses add up the costs, they look at deployment, managing licenses, and so on.
Does open source make sense for your specific case?
If it does, base your decision on that. The costs are not only financial; for agility and ability, you may have to try different packages quickly without going through procurement.
Let’s put things in numbers. Suppose you’re spending $30,000 per year on licensing fees for software vendors. Then you get a new staff member. Every time a new staff is added, you must add to that budget, and you have a changing budgetary landscape.
In open source, you can horizontally expand your user base with minimal overhead. You can also capitalize on improvements other people are making.
TakeQGIS 3.16 with its 150 additional features that have been added by other people, not your organization. You install that software, and you gain from other’s capital expenses they spent on building those features. Plus, all the volunteer efforts that went into these projects.
I’m a massive fan of Postgres. It’s been around for a while. It’s fantastic, and I use it every day.
Open Drone Map (ODM) is an open source project to take drone imagery, bold image mosaics, elevation models, and even build 3D models. Anyone can create aerial surveys, unlike a decade ago, when it was highly specialized and expensive.
OpenStreetMap is the fabric of the open source world, and the data it provides is insane.
We need to provide people with tools they can manage our society and environment well. That’s got me working in open source ̶ to create a platform for social upliftment.
The proprietary model hasn’t serviced the poorer and less technologically enabled segments of society. They desperately need free open source GIS tools.
Give a poor man in South Africa a basic laptop, time, motivation, and some tools. They’ll build a business servicing customer needs and help manage the environment better.
Might even build a better society as a knock-on effect… who knows?
If you’ve ever been curious about open source, but you’ve felt it’s not your kind of activity, I encourage you to head over to QGIS or Postgres, or wherever your passion is, and see it for yourself. You can support projects by reading and writing about issues and reporting them. You absolutely do not need special skills to get involved. Reach out to Tim, and he’ll point you in the right direction.
Be sure to subscribe to our podcast for weekly episodes that connect the geospatial community.
For more exclusive content, join our email. No spam! Just insightful content about the geospatial industry.
To put it simply, point clouds are a collection of XYZ points that represent some real world object of nearly any scale.They can be generated in a few ways. As geospatial scientists, we mostly work with LAS/LAZ data collected by aerial LiDAR (light detection and ranging) scanners at varying scales, from landscapes, down to project sites. We may also derive point clouds from highly detailed orthoimagery of an area, such as from the products of a drone flight.
As a data scientist, you don’t just go in and solve problems. You make recommendations to multi-faceted issues so that you get a fantastic model in the end. You’ll also be advocating a better use and understanding of the data while you do that.