Skip to content
Kharita Challenges

Problems

Real geospatial problems, graded automatically. Choose a track, a level and what you want to hand in.

9 of 59 problems

Pick one for me
  1. Not started, Build the global seismic reconnaissance watchlistDecision supportPython

    Turn a fixed USGS event feed into a mapped, reproducible shallow strong-event watchlist for requesting impact products.

    Spatial AnalysisintermediateDifficulty: intermediate240 XP~40 min5 checks

    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, Cartography
    Open problem
  2. Not started, Where should a waterway survey start?Decision supportSQL

    Screen large global urban footprints for mapped river contact while keeping scale limitations explicit.

    Spatial AnalysisintermediateDifficulty: intermediate320 XP~50 min9 checks

    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 Management
    Open problem
  3. Not started, Where should the sewer service desk review closure lag?Decision supportPython

    Turn a fixed 311 complaint cohort into a map of requests open longer than an analyst-defined day.

    Spatial AnalysisintermediateDifficulty: intermediate320 XP~50 min5 checks

    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 Management
    Open problem
  4. Not started, Which capitals are more than an hour from a scheduled airport?Decision supportGeoJSON

    Nearest-neighbour from 200 national capitals to 872 civil airports, geodesically, with a threshold that has to be applied honestly.

    Spatial AnalysisintermediateDifficulty: intermediate230 XP~40 min5 checks

    You hand in a GeoJSON result.

    Datasets

    • Populated places · Point · 1,251 features · EPSG:4326
    • World airports · Point · 893 features · EPSG:4326

    What you’ll do

    • Filter the places to national capitals and the airports to civil scheduled-traffic fields
    • Find each capital's nearest qualifying airport with a geodesic distance
    • Keep the capitals beyond 75 km and report the airport and the distance
    nearest neighbourgeodesichaversinelogisticsglobalAlso trains Data Management
    Open problem
  5. Not started, Build an earthquake contact reconnaissance queueProjectDecision support3 steps

    Screen strong shallow events, quantify airfield and settlement proximity, and hand over a traceable contact map.

    Spatial AnalysisadvancedDifficulty: advanced550 XP~95 min12 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Select the event queue · SQL
    2. Measure contact gaps · Answers
    3. 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, Cartography
    Open project
  6. Not started, Defend a borough greening shortlistProjectDecision support3 steps

    Measure canopy and summer vegetation on their own grids, then add low-ground context and apply one transparent shortlist rule.

    Remote SensingadvancedDifficulty: advanced620 XP~110 min13 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Audit the vegetation rasters · Answers
    2. Deliver the borough evidence table · Dataset file
    3. Add low-ground context and shortlist · GeoJSON

    Datasets

    • Greater London land cover 2021 (ESA WorldCover 10 m) · Raster · EPSG:4326
    • Greater London, Sentinel-2 red and NIR, 11 July 2025 · Raster · EPSG:32630
    • Greater London elevation (Copernicus DEM GLO-30) · Raster · EPSG:4326
    • London boroughs · Polygon · 33 features · EPSG:4326

    What you’ll do

    • Audit the two vegetation measures from observed raster pixels
    • Hand over a per-borough canopy and NDVI table as a GIS file
    • Add area-weighted low ground and an explicit shortlist flag
    zonal statisticsNDVIland coverDEMmulti-criteriaLondonAlso trains Spatial Analysis, Data Management
    Open project
  7. Not started, Plan a cycle redistribution shiftProjectDecision support3 steps

    Classify the dock snapshot, propose bounded bike moves, and size the resulting shift with its unserved stations visible.

    Spatial AnalysisadvancedDifficulty: advanced600 XP~100 min11 checks

    Worked in 3 steps, each checked before the next one opens.

    1. Classify the snapshot · SQL
    2. Map feasible transfers · GeoJSON
    3. Size the preliminary shift · Answers

    Dataset

    • Santander Cycles docking stations (live snapshot) · Point · 799 features · EPSG:4326

    What you’ll do

    • Classify full and empty active stations in SQL
    • Build a bounded nearest-source transfer map
    • Size a shift and report unserved empties from the same rules
    nearest neighbouroperationscapacityCRStransportLondonAlso trains Data Management, GIS Architecture
    Open project
  8. Not started, Screen capital access exceptionsDecision supportGeoJSON

    Use airport and port proximity to flag capitals that need direct logistics verification.

    Spatial AnalysisadvancedDifficulty: advanced580 XP~100 min6 checks

    You hand in a GeoJSON result.

    Datasets

    • Populated places · Point · 1,251 features · EPSG:4326
    • World airports · Point · 893 features · EPSG:4326
    • Ports · Point · 1,081 features · EPSG:4326

    What you’ll do

    • Compute nearest-neighbour distances from capitals to two facility layers, geodesically
    • Apply an ordered rule set to derive a category
    • Return the exceptions with the distances that justify them
    nearest neighbourgeodesicclassificationlogisticsglobalAlso trains Data Management
    Open problem
  9. Not started, Which neighborhoods merit a service follow-up?Decision supportSQL

    Join geocoded service requests to neighborhood polygons and map a review share only where the sample supports it.

    PostGIS / SQLadvancedDifficulty: advanced390 XP~65 min8 checks

    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 Management
    Open problem