Sharing our passions

Opening for Junior Developer in Indonesia

Posted by: Gavin Fleming | in Jobs | 2 years, 9 months ago | Comments

We at Kartoza are Open Source geeks, specializing in software development and GIS. We’re expanding rapidly and looking to add a junior developer to our team that is passionate about problem solving and technologies. You will be part of an exciting web application development team.

Report back on the first QGIS User Conference in Nødebo, Denmark

Posted by: Gavin Fleming | in Education, QGIS | 3 years, 10 months ago | Comments

I finally have some time to sit down and write up some thoughts on the QGIS User Conference and Developer Meeting (aka Hackfest) that we just held in Nødebo, Denmark. First up I need to thank Lene Fischer, who was the organiser and wowed us all with her relaxed and competent organisational approach to the conference. Thanks also to the University of Copenhagen School of Forestry - they sponsored the event by providing the venue and accommodation - and the venue was absolutely awesome with little cottages in the forest and all sorts of interesting diversions scattered around the forest. Lene gave me a list of names of people who helped to organise the event - I am sorry I have only got your first names but a very big thank you to you all!

How to run a Linux GUI application on OSX using Docker

Posted by: Gavin Fleming | in Docker, QGIS | 3 years, 11 months ago | Comments

Ok so here is the scenario:

7 tips for making productive use of docker

Posted by: Gavin Fleming | in Docker | 4 years ago | Comments
I have been using and learning docker since the early days after it was announced. I really love using docker but there are some things I just wish I had cottoned onto at the start. Here are my top 7 tips to help new users to docker avoid making the same mistakes I did.

Generating an XYZ ASCII file from a QGIS raster

Posted by: Gavin Fleming | in FOSSGIS, QGIS | 4 years, 1 month ago | Comments

Someone wrote to me asking if it would be possible to generate an XYZ ASCII file from a single band raster layer in QGIS. No doubt there are more efficient ways (this approach is pretty slow but it works), but I thought it would be fun to show how you can iterate over a raster, writing out the value of each cell into a text file (along with the centroid coordinates for that cell).

How to create a QGIS PDF report with a few lines of python

Posted by: Gavin Fleming | in FOSSGIS, QGIS | 4 years, 1 month ago | Comments

Sometimes you want to automatically generate a report to reflect the latest state of your data. For example you may be capturing spatial data into a PostGIS database and want a snapshot of that every few hours expressed as a pdf report. This example shows you how you can quickly generate a pdf based on a QGIS project (.qgs file) and a QGIS template (.qpt file).

Alternatives to Google Maps Engine

Posted by: Gavin Fleming | in Boundless Suite, FOSSGIS, GeoServer, PostGIS | 4 years, 2 months ago | Comments

Google will be supporting Google Maps Engine (GME) for only one more year. If your company uses GME or was thinking about it, you'll need to consider alternatives. Kartoza offers various alternatives depending on your use case. We are BoundlessGeo partners and offer support for the OpenGeo Suite in southern Africa. For more details of the Google announcement, including various scenarios where you should consider the OpenGeo Suite, see BoundlessGeo's take on it.  Kartoza also offers development, support and training services across other components of the FOSS GIS stack that offer alternatives to Google and other proprietary products - we'd love to hear from you!

Opening for GIS generalist / spatial IT engineer at Kartoza

Posted by: Gavin Fleming | in Jobs | 4 years, 2 months ago | Comments

Kartoza is seeking GIS staff. We have a range of projects and challenges and will tailor the post to suit the ideal candidate.

Opening for Python developer at Kartoza

Posted by: Gavin Fleming | in Jobs | 4 years, 2 months ago | Comments

Kartoza is on the lookout for developers. We have a range of projects and challenges and will tailor the post to suit the ideal candidate.

QGIS course at AfQUA

Posted by: Gavin Fleming | in Education, QGIS | 4 years, 2 months ago | Comments

Kartoza has just wrapped up a three-day Introduction to QGIS course that we gave pro bono at The African Quaternary: Environments, Ecology and Humans conference in Cape Town (AfQUA2015). Thank you to Kelly Kirsten from the local organising committee at the University of Cape Town for inviting us. Admire Nyakudya presented to about fifteen conference delegates from around the world. Attendees ran QGIS 2.6.1 on their own notebooks on the operating system of their choice. Some already use QGIS, some were experiencing QGIS for the first time and some some wanted to compare it with ArcGIS. The course content was guided largely by the QGIS training manual but as we usually do, adapted for the requirements, interests and pace of the class.

How to load a QGIS project in python

Posted by: Gavin Fleming | in QGIS | 4 years, 2 months ago | Comments

Today in a project we are working on we wanted to load a QGIS project. It takes  surprisingly few lines of code to make a small standalone application that loads a project and then shows it as a map in a window like this:

A quick hack to select all multipart features in QGIS

Posted by: Gavin Fleming | in FOSSGIS, QGIS | 4 years, 3 months ago | Comments

Today we wanted to find all the multipart features in this layer:

Kartoza docker-helpers for lazy sysadmins

Posted by: Gavin Fleming | in Docker | 4 years, 3 months ago | Comments

Docker is really awesome but typing out all those commands can get tedious. I wanted to quickly share a small project on github I made some time back that tries to make your life easier when working with docker. The project is called docker-helpers. It is a collection of bash scripts that give you short cuts to various 'every day' docker commands. Here is a quick listing of the different commands:

Orchestrating GeoServer with Docker and Fig

Posted by: Gavin Fleming | in Docker, FOSSGIS, GeoServer, PostGIS | 4 years, 3 months ago | Comments

In this article I will detail how to set up a simple orchestrated system of docker containers using:

Setting up a Fedora 21 QGIS Workstation

Posted by: Gavin Fleming | in FOSSGIS, QGIS, Uncategorised | 4 years, 3 months ago | Comments

I have been a long time Ubuntu user (I have actually been using it since Ubuntu 4.10 'Warty Warthog') - the first official release. The advent of Ubuntu saw an end to my distro hopping whilst looking for the 'perfect linux distro'.

How to build and debug QGIS with QtCreator

Posted by: Gavin Fleming | in QGIS | 4 years, 4 months ago | Comments

Here is how I build QGIS with QtCreator under ubuntu 14.04

Gary Sherman wins the Sol Katz award

Posted by: Gavin Fleming | in QGIS | 4 years, 7 months ago | Comments

This year Gary Sherman won the annual Sol Katz award. To quote the OSGEO page about the award:

WMS Legend Plugin for Leaflet

Posted by: Gavin Fleming | in Leaflet, QGIS | 4 years, 7 months ago | Comments

This weekend I was updating our map gallery at and I wanted to have WMS legends in my maps. The maps are mostly generated using QGIS server which also produces a nice looking graphic for its getLegendGraphic requests. Since Leaflet does not seem have a legend control out of the box, I wrote a small leaflet plugin to do it.

Nodeenv: How to install nodejs in a python virtualenv

Posted by: Gavin Fleming | 4 years, 7 months ago | Comments

Here at Kartoza, working in python virtual environments is our default modus operandi when embarking on any python development. For some time we have been enjoying yuglify, tilemill and other node.js based applications as part of our workflow, and early on in my use of these technologies I discovered nodeenv - mainly because I had been bitten on the ass by different node applications on the same host expecting to have different versions of node.js. Nodeenv provides a python virtualenv like environment for sandboxing your node applications so that each can run under its own discrete version of node.js. It operates very much like python virtualenv does and in fact it requires virtualenv so for pythonistas it is a very good fit! In this article I document the steps needed to get node running under such an environment.

Playing with Foreign Data Wrappers in PostgreSQL

Posted by: Gavin Fleming | in Database, FOSSGIS | 4 years, 8 months ago | Comments

Recently I set out to try out the PostgreSQL foreign data wrapper (FDW) because I needed access to data that was in MySQL tables. The main reason I needed to play around was to expose my data to a range of PostgreSQL functions that are better and more recent that MySQL. I also needed to use MySQL data for views and lookups and data-driven styling for some Geoserver layers. FDWs allow remote access to tables or queries from various external third-party databases or file structures.

Template by Blacktie Mezzanine theme by CodingHouse