Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

The programming project in SDS210

...

1. Why this project matters

The programming project is the capstone assessment of this course. Up to this point, you have worked through focused exercises and guided practicals designed to build your foundational skills. This project asks you to take the training wheels off. Instead of following a predefined path, you will define your own workflow, make independent design decisions, and implement a complete solution from scratch.

This step is critical: spatial data science requires much more than just writing code that executes without errors. You must be able to structure a vague problem into a clear computational workflow, select the most appropriate datasets and analytical methods, and write clean, readable, and reusable Python code. Furthermore, you need to confidently explain your analytical choices and ensure your work is fully reproducible by others.


2. What you will learn

This project is your opportunity to use your newly developed toolkit in a more independent, connected, and critical manner.

By completing this assessment, you will practice translating a conceptual spatial question into a concrete computational script. You will source, inspect, and handle open data with a critical eye, seamlessly combining Python libraries (like Pandas, GeoPandas, and Matplotlib) for end-to-end analysis and visualization. You will organize your code into modular, reusable blocks and document your workflow so thoroughly that a peer could effortlessly reproduce your results. Finally, you will critically reflect on the challenges, decisions, and inherent limitations of your solution.

Beyond technical syntax, this project strengthens essential professional skills: debugging, problem-solving, technical communication, and managing a coding pipeline from conception to delivery.

What success looks like

A successful submission demonstrates that the core problem is clearly defined and scoped. The code runs seamlessly and is easy to read. The workflow follows a logical, step-by-step structure, and the repository contains everything needed for someone else to reproduce the exact results. Your written report effectively summarizes the core ideas, methods, and challenges encountered, while your live presentation proves that you fully understand your own code and the reasoning behind your design choices.


3. Timeline and milestones

The project runs alongside the second half of the course. Because coding involves inevitable roadblocks and debugging, you are strongly encouraged to begin early and make steady progress over several weeks rather than rushing near the deadline.

Suggested project rhythm

Key dates

Please mark the following project dates in your calendar:


4. Choosing a topic

You will select your project from a set of predefined topics. Each topic is anchored in open data and addresses a real spatial question. This provides you with a solid foundation to get started while leaving ample room for your own analytical decisions and creative problem-solving.

When choosing a topic, try not to base your decision solely on which one sounds the most “impressive.” Be candid with yourself about your current skill level, and pick a topic that offers a clear, manageable path toward a working solution.

A strong topic choice means you clearly understand the underlying real-world question, you can instantly visualize the first few coding steps required, and you find the subject matter interesting enough to stay motivated when you inevitably hit a bug.

How to choose well

When evaluating the available project topics, consider whether the subject genuinely interests you and if you understand the context of the data being used. Ask yourself if you can map out a rough workflow in your head right now, and whether the scope of the project is achievable within the next few weeks. Finally, ensure you can summarize the core objective of the project in just one or two sentences.


The next chapter introduces the available project topics in more detail to help you compare them before making your final choice.