Problems
Real geospatial problems, graded automatically. Choose a track, a level and what you want to hand in.
- Not started, Build the global seismic reconnaissance watchlistDecision supportPythonSpatial AnalysisintermediateDifficulty: intermediate240 XP~40 min5 checksSpatial AnalysisintermediateDifficulty: intermediate
Turn a fixed USGS event feed into a mapped, reproducible shallow strong-event watchlist for requesting impact products.
You hand in a Python script.
Dataset
- Global M5.5+ earthquakes, Jan–Mar 2025 · Point · 86 features · EPSG:4326
What you’ll do
- Apply two inclusive, unit-aware filters to the frozen event snapshot
- Carry stable event identifiers and response metadata into a point GeoDataFrame
- Map event magnitude as a proportional point result without claiming it is impact
USGSearthquakesGeoPandasemergency screeningglobalAlso trains Python, Data Management, CartographyOpen problem - Not started, Where should a waterway survey start?Decision supportSQLSpatial AnalysisintermediateDifficulty: intermediate320 XP~50 min9 checksSpatial AnalysisintermediateDifficulty: intermediate
Screen large global urban footprints for mapped river contact while keeping scale limitations explicit.
You hand in a spatial SQL query.
Datasets
- Urban areas · Polygon · 2,143 features · EPSG:4326
- Rivers and lake centrelines · LineString · 461 features · EPSG:4326
What you’ll do
- Apply a spatial join to real river and urban geometry
- Keep zero-contact footprints in the inventory
- Distinguish map-scale contact classes for survey planning
Natural Earthurban waterPostGISspatial screeningcategorical mapglobalAlso trains PostGIS / SQL, Cartography, Data ManagementOpen problem - Not started, Where should the sewer service desk review closure lag?Decision supportPythonSpatial AnalysisintermediateDifficulty: intermediate320 XP~50 min5 checksSpatial AnalysisintermediateDifficulty: intermediate
Turn a fixed 311 complaint cohort into a map of requests open longer than an analyst-defined day.
You hand in a Python script.
Dataset
- NYC 311 sewer requests, 1–7 June 2025 · Point · 408 features · EPSG:4326
What you’ll do
- Calculate closure lag from timestamp fields without inventing values for open requests
- Select the service manager's review queue
- Map the concentration of selected requests while retaining per-request details
NYC 311urban servicestemporal GISheat mapGeoPandasAlso trains Python, Cartography, Data ManagementOpen problem - Not started, Which airfields should the response desk check?Decision supportSQLPostGIS / SQLintermediateDifficulty: intermediate260 XP~45 min6 checksPostGIS / SQLintermediateDifficulty: intermediate
Use a metre-based spatial join to identify civil airfields near strong, shallow earthquake epicentres, with the facilities drawn on the map.
You hand in a spatial SQL query.
Datasets
- Global M5.5+ earthquakes, Jan–Mar 2025 · Point · 86 features · EPSG:4326
- World airports · Point · 893 features · EPSG:4326
What you’ll do
- Filter events by magnitude and depth
- Join the selected events to civil airfields within 250 km in metres
- Return traceable, mapped airport points and measured distances
PostGISearthquake responseairportsgeographyglobalAlso trains Spatial Analysis, CartographyOpen problem - Not started, Build an earthquake contact reconnaissance queueProjectDecision support3 stepsSpatial AnalysisadvancedDifficulty: advanced550 XP~95 min12 checksSpatial AnalysisadvancedDifficulty: advanced
Screen strong shallow events, quantify airfield and settlement proximity, and hand over a traceable contact map.
Worked in 3 steps, each checked before the next one opens.
- Select the event queue · SQL
- Measure contact gaps · Answers
- Hand over the access map · Python
Datasets
- Global M5.5+ earthquakes, Jan–Mar 2025 · Point · 86 features · EPSG:4326
- World airports · Point · 893 features · EPSG:4326
- Populated places · Point · 1,251 features · EPSG:4326
What you’ll do
- Select a reproducible event queue in SQL
- Measure two independent global proximity indicators
- Deliver an auditable access map with an explicit contact-gap distinction
projectUSGSnearest neighbourlogisticsglobalAlso trains Python, Data Management, CartographyOpen project - Not started, Which neighborhoods merit a service follow-up?Decision supportSQLPostGIS / SQLadvancedDifficulty: advanced
Join geocoded service requests to neighborhood polygons and map a review share only where the sample supports it.
You hand in a spatial SQL query.
Datasets
- 2020 Neighborhood Tabulation Areas · MultiPolygon · 262 features · EPSG:4326
- NYC 311 sewer requests, 1–7 June 2025 · Point · 408 features · EPSG:4326
What you’ll do
- Join incident locations to neighborhoods with a boundary-inclusive predicate
- Compute elapsed-time review share with a clear denominator
- Suppress very small denominator areas before mapping percentages
NYC 311PostGISspatial joinservice operationsgraduated mapAlso trains Spatial Analysis, Cartography, Data ManagementOpen problem