GeoDjango and PostGIS
v6.0 — 2026 Edition. A comprehensive audio course on building spatial web applications using GeoDjango and PostGIS. Recorded in 2026, covering GeoDjango version 6.0.
Episodes
The Power of Spatial Web Frameworks
3m 33sThis episode introduces GeoDjango and PostGIS as a powerful combination for building geographic web applications. You will learn why traditional databases struggle with spatial data and how spatial extensions solve this problem.
PostGIS Geometry vs Geography
3m 25sThis episode explores PostGIS data types, specifically focusing on the difference between Geometry and Geography types. You will learn when to use flat-plane Cartesian math versus spherical earth calculations.
Setting Up Your Spatial Environment
3m 53sThis episode covers the initial setup of a GeoDjango and PostGIS project. You will learn how to enable the PostGIS extension and configure your Django settings to connect to a spatial backend.
Coordinate Reference Systems and SRIDs
3m 29sThis episode breaks down Coordinate Reference Systems and SRIDs. You will learn what WGS84 is and why projecting your map data correctly is crucial for accurate distance measurements.
Designing Geographic Models
3m 31sThis episode demonstrates how to design geographic models in GeoDjango. You will learn how to define PointField and MultiPolygonField attributes to store spatial data in your Django application.
The GDAL and OGR API
3m 20sThis episode introduces the GDAL and OGR API wrapper inside GeoDjango. You will learn how to inspect and read external vector files like Shapefiles natively within Python before importing them.
Ingesting Spatial Data with LayerMapping
3m 51sThis episode covers automating spatial data imports. You will learn how to use the LayerMapping utility to map external Shapefile data directly into your GeoDjango models effortlessly.
The GEOS API: Pythonic Geometry
3m 24sThis episode focuses on the GEOS API for Pythonic geometry manipulation. You will learn how to perform topological operations like unions and intersections in-memory without hitting the database.
Mastering Spatial Lookups
3m 55sThis episode explains geographic query lookups in the Django ORM. You will learn how to use spatial filters to find relationships like which points are contained within specific boundaries.
High-Performance Distance Queries
4m 01sThis episode tackles high-performance proximity and distance queries. You will learn how to use distance lookups and the geographic distance object to find nearby locations efficiently.
Geographic Database Functions
3m 44sThis episode explores spatial database functions accessible through GeoDjango. You will learn how to compute areas, extract centroids, and generate GeoJSON directly in the database layer.
Raster Data in PostGIS
3m 31sThis episode introduces PostGIS rasters and GeoDjango RasterFields. You will learn how to store and query continuous spatial data like elevation models or temperature maps.
Geolocation with GeoIP2
3m 49sThis episode covers IP-based geolocation using GeoDjango's GeoIP2 module. You will learn how to map user IP addresses to cities and countries using MaxMind datasets.
Testing Spatial Applications
3m 34sThis episode focuses on testing spatial applications in GeoDjango. You will learn how to configure your test suite, handle PostGIS template databases, and set up user privileges.
Deploying GeoDjango Applications
4m 04sThis episode wraps up the series by discussing deployment considerations for GeoDjango apps. You will learn about GDAL thread safety and how to configure your WSGI processes to prevent crashes.