RustProof Labs: blogging for education (logo)
My book Mastering PostGIS and OpenStreetMap is available!

New to GIS Software?

By Ryan Lambert -- Published January 28, 2016

If you're just getting started with GIS software, the options, data, styling and everything else involved can become very overwhelming. This tutorial won't go into any single topic in depth, but instead tries to cover a wide range of topics by providing resources and examples.

Software

The first choice you have to make is the software you're going to use. I have started using QGIS almost exclusively so my examples will focus on QGIS but various software packages operate quite similarly. If you run into troubles, just get in touch with us and we'll do our best to help. For a comparison of other software options read my post ArcGIS, QGIS and Tilemill for an overview on the similarities and differences.

Continue Reading

Contributing to OpenStreetMap is "Maptastic!"

By Ryan Lambert -- Published November 17, 2015

I have been a consumer of OpenStreetMap (OSM) data for a few years now, mostly through Geofabrik's downloads of smaller regions. As I started to do more and more complex work with the OSM data, I started running into troubles. The problems were two-fold:

  • Missing data
  • I didn't understand the data well enough

So, in July 2015 I finally created my account in OpenStreetMap and started contributing data. Less than four months later, RustProof Labs hosted our first OpenStreetMap mapping party! We only invited a small number of folks to ensure things didn't get too crazy (those GIS folks, you gotta watch them!). This also allowed us to get great feedback from a group that we could trust, and prepare ourselves to do a bigger, more inclusive event next time.

Continue Reading

"Dockerizing" PostgreSQL

By Ryan Lambert -- Published November 03, 2015

Warning: This post is outdated. It is here for reference purposes only.

Early on in 2015 I was working on a couple different side projects that encouraged me to start using Docker. The projects were using Flask WSGI applications for the UI with PostgreSQL as the data storage layer. Docker was added to my work flow to make the deployment of Python WSGI applications easier and reduce the dependency headache that virtualenv tries to solve, but doesn't. Once I started using Docker in that use case I immediately saw potential benefits in other areas... Specifically in deploying PostgreSQL databases.

This road has been filled with bumps and potholes, but the end result is a well tested, flexible and powerful environment. In this post I will walk through how I have "Dockerized" PostgreSQL 9.3 and explain some of the pros and cons to doing so.

Continue Reading

Docker in Production at RustProof Labs

By Ryan Lambert -- Published September 29, 2015

Warning: This post is outdated. It is here for reference purposes only.

RustProof Labs has been using Docker in production since May 2015. The switch to Docker hasn't been completely pain-free, but has already proven to be a major improvement. This post attempts to cover, at a high level, how Docker has been utilized to save time and resources. There are three main services I currently run in Docker containers on my main VPS are:

  • RustProof Content
  • PostgreSQL
  • OpenVPN Server

At this point, Nginx and SSH are the only two main services running on the base VPS, everything else is running inside of Docker containers. RustProof Labs' production servers are ran on entry level Digital Ocean droplets, ringing in at $5/month. The base OS is currently Debian 7, but that could be any operating system that supports Docker.

Continue Reading

SQL for Institutional Research (IR)

By Ryan Lambert -- Published August 12, 2015

One of the questions I see frequently from Institutional Research (IR) professionals are exploratory ones about getting started with SQL. They typically have a good background and understanding of how to work with data, but they just haven't made the leap to using a relational database. Data may be stored in CSV or Excel format (flat file style) and loaded into a statistical analysis package (such as SPSS, SAS, Stata, or even R) for analysis work. Over time, the desire for multi-year trend analysis leads to stacking files from multiple source files, which we all know gets unwieldy very fast.

This post attempts to outline some key elements for learning when starting down the road to adding a proper relational database into your data work flow. Practical code examples are given with small snippets throughout. If you're not ready to learn the code yet, feel free to skim over those examples.

I have also tried to provide external links to other great resources throughout, especially where there are differences between database platforms. So read on!

Continue Reading

<-- Older Posts          Newer Posts -->