Check this page every week for updates on course content and requirements.
π UPDATES: the content of Weeks 07-11 was updated again on 19 March 2026. Mini-Project 2 now runs until Wednesday 1 April, the W09 Lab includes group formation and GitHub Pages setup, and the W11 pitch is formative rather than graded.
π₯οΈ Week 01 19 Jan 2026 - 23 Jan 2026
π Formative
Setup and first data exploration
Reserve 1β2 hours to set up and interact with the platforms of communication (Slack) and for coding (Nuvolos) we will use throughout the course, and to experience the kind of data analysis you will be doing in the near future.
Youβll use a Jupyter notebook to explore yearly heatwave counts, then compare your step-by-step process with an AI-only approach to understand when each method works best.
Note
No need to install anything.
All assessed work in this course can be done on Nuvolos Cloud with VS Code preconfigured. You do not need to install anything on your machine unless you prefer to.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105W studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from David (Mon 5-7pm, Wed 5-6pm), Sara (Thu 11am-1pm), and Tabby (Fri 10:30am-12pm).
Office Hours: Book via StudentHub for one-on-one support with Tabtim Duenger (Tue 5-6pm), Jon Cardoso-Silva (Wed 2-5pm), or Sara Luxmoore (Fri 12-1pm).
For the full schedule, see the Contact Hours page. For extensions and admin queries, email Kevin at .
From data to insight: the importance of clean data ποΈ Slides
Introduction to course goals and assessment. Reveal solution to the formative. Discuss the AI diagnostic, when AI helps versus when it fails. Notebooks as a professional tool.
Exploring daily temperatures with pandas π£οΈ Roadmap Tutorial
Build on Week 01βs yearly heatwave data by exploring raw daily temperature records. Learn to load CSV files into pandas, apply basic DataFrame operations like filtering and sorting, and connect daily observations to the summary data you worked with in practice.
π₯οΈ Week 02 26 Jan 2026 - 30 Jan 2026
π Formative
Python foundations and file management
Complete foundational Python lessons through DataQuest, focusing on variables, data types, and collections. Learn to organise your workspace with proper folder structures and document your learning using Markdown formatting in Jupyter notebooks.
Tip
Actively post questions to Slack or attend support sessions if you get stuck.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105W studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from David (Mon 5-7pm, Wed 5-6pm), Sara (Thu 11am-1pm), and Tabby (Fri 10:30am-12pm).
Office Hours: Book via StudentHub for one-on-one support with Tabtim Duenger (Tue 5-6pm), Jon Cardoso-Silva (Wed 2-5pm), or Sara Luxmoore (Fri 12-1pm).
From tables to live data: pandas and one API ποΈ Slides
Connect your DataQuest Python foundations to real data analysis. Explore how collections (lists and dictionaries) relate to DataFrames from Week 01. See a live API demonstration with weather data and preview next weekβs JSON work.
From collections to DataFrames π£οΈ Roadmap Tutorial
Practice connecting the Python collections you learned in DataQuest (lists and dictionaries) to pandas DataFrame operations. Apply bracket notation and indexing skills to real data analysis tasks.
π₯οΈ Week 03 02 Feb 2026 - 06 Feb 2026
π Formative
Terminal navigation and Python control flow
Play Shell-it game to learn file system navigation, practise terminal commands for professional workflows, and complete DataQuest lessons on loops and conditionals. Create your first notebook using terminal commands, explore different file formats, and document your learning journey.
Note
Warm-up: Shell-it (paths and terminals)
Play βShell-it: The London Episodeβ at least 10 times: https://shell-it.vercel.app/. Spend one minute reflecting on paths and directories before opening the Nuvolos terminal.
Tip
Actively post questions to Slack or attend support sessions if you get stuck.
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105W studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from David (Mon 5-7pm, Wed 5-6pm), Sara (Thu 11am-1pm), and Tabby (Fri 10:30am-12pm).
Office Hours: Book via StudentHub for one-on-one support with Tabtim Duenger (Tue 5-6pm), Jon Cardoso-Silva (Wed 2-5pm), or Sara Luxmoore (Fri 12-1pm).
Operating systems, file I/O, and Git setup ποΈ Slides
Understand how operating systems organise files and why paths matter for reproducible code. Learn about environment variables and their role in software. See a live demonstration of collecting API data and saving to JSON and CSV files. After the break, hands-on Git setup session where you create your personal repository and practise the basic Git workflow.
Control flow practice with temperature data π£οΈ Roadmap Tutorial
Apply loops and conditionals from DataQuest to real temperature analysis. Fetch July 2024 weather data from Open-Meteo API, save to JSON files, then use control flow to categorise hot days.
π₯οΈ Week 04 09 Feb 2026 - 13 Feb 2026
π Formative
London heatwave analysis
Build your first complete data pipeline: fetch historical temperature data from Open-Meteo for London (1990β2025), transform the JSON data into a usable format, and create a heatwave summary table showing yearly counts.
π’ Release
Mini-Project 1 (20%) - Weather data analysis TODO: link + deadline details
π Support
Click here to see how to get help this week
There is a way to get help every single day of the week. Donβt hesitate to contact us for help. We love hearing from you!
Here are the best ways to get help with your DS105W studies this week:
Slack: Post questions or comments to the #help channel at any time. Jon monitors regularly throughout the week, with dedicated support from David (Mon 5-7pm, Wed 5-6pm), Sara (Thu 11am-1pm), and Tabby (Fri 10:30am-12pm).
Office Hours: Book via StudentHub for one-on-one support with Tabtim Duenger (Tue 5-6pm), Jon Cardoso-Silva (Wed 2-5pm), or Sara Luxmoore (Fri 12-1pm).
Working with DataFrames ποΈ Slidesπ₯οΈ Live Demo
Understand why tidy, reproducible steps matter for data analysis. Learn how Python collections (lists and dictionaries) connect to pandas DataFrames, and practice essential operations like selection, grouping, and creating simple plots.
Data quality and transformation workshop π₯ Pair Programming
Work with real-world messy data to understand when to clean versus when to investigate inconsistencies. Practice applying transformations to datasets and learn to document your data quality decisions clearly.
Master pandas transformations including .apply() with custom functions and .groupby() aggregations. Learn principles of seaborn visualisation design and standards for communication of insights.
Visual communication workshop π£οΈ Roadmap Tutorial
Practice creating multiple chart types from the same data, learn to justify your choices for different audiences, and develop skills in writing compelling narrative titles.
π₯οΈ Week 06 23 Feb 2026 - 27 Feb 2026
π Reading Week
Focus on Mini-Project 1. Support sessions available.
β²οΈ Deadline
Submit your Mini-Project 1 (20%) via GitHub until Thursday 8 pm.
MP2 launch: methodology first, then technical setup ποΈ Slides
Draft a methodology proposal for MP2, stress-test it with peer judgement, and learn the technical foundations: TfL API key handling and how json_normalize() reshapes nested JSON into tabular data.
Start MP2 with NB02: collect, unnest, adapt π£οΈ Roadmap Tutorial
Collect one shared data sample with the TfL API, work through one guided json_normalize() unnesting pass, then adapt collection and normalisation to match your own methodology decisions from the Lecture.
π’ Release
Mini-Project 2 (30%) - London travel time analysis βοΈ Assignment brief Starts in Week 07. Deadline: Wednesday, 1 April 2026 at 8 pm.
Reshaping and merging data in pandas ποΈ Slidesπ₯οΈ Live Demo
Learn pd.concat(), .melt(), .pivot_table(), and pd.merge() to reshape and combine your collected data with the ONS Postcode Directory. Build NB02 for Mini-Project 2.
Reshaping and merging workshop π£οΈ Roadmap Tutorial
Practice melt, pivot, and merge operations on your own MP2 data. Contextualise your postcode selections with ONS attributes and save processed outputs to data/processed/.
EDA critique, refinement, and visual judgement ποΈ Slides
Stress-test your MP2 assumptions against real outputs, check data quality systematically, compare mean versus median, and learn visual communication principles for your final narrative. Build NB03 for Mini-Project 2 and learn how sns.FacetGrid supports fair multi-group comparison.
Open EDA workshop, group formation, and GitHub Pages π£οΈ Roadmap Tutorial
Apply the W09 EDA checklist to an unfamiliar dataset, refine your MP2 NB03 plan, form your Group Project team, and publish a first GitHub Pages site from docs/index.md.
π₯οΈ Week 10 23 Mar 2026 - 27 Mar 2026
π₯οΈ Lecture
Git collaboration and SQL for data projects ποΈ Slidesπ₯οΈ Live Demo
Learn how teams sync work with git fetch, git pull, and merge-conflict resolution, then connect that workflow to an introduction to SQL using the IMDb dataset from W09. Understand when SQL is a better tool than pandas for structured data tasks.
π» Lab
Project board setup and team workflow π£οΈ Roadmap Tutorial
Set up a project board for your Group Project, assign roles and tasks, and practise the Git workflow your team will need once multiple people are contributing to the same repository.
π¦ Group Project
Use this week to set up your teamβs workflow, organise work through a project board, and prepare your GitHub Page for the formative W11 pitch.
Agentic AI coding and Git for teams ποΈ Slidesπ₯οΈ Live Demo
See how agentic AI coding can improve productivity in real data projects through GitHub Copilot prompts, skills, and related workflows inside a new VS Code setup on Nuvolos with powerful AI-enabled features. Return to Git as a team by looking at collaboration patterns, GitHub Issues, Pull Requests, and the habits that help groups coordinate work cleanly.
π£οΈ Monday Session
Group project setup and pitch presentations (Formative) π₯ Group Work
Finalise your group setup, present your project idea as a GitHub Page, and receive feedback from Jon and the teaching team. Use the session to agree how your team will work together after term ends and across the Easter Break.
β²οΈ Deadline
Submit your Mini-Project 2 (30%) via GitHub by Wednesday 1 April 2026 at 8 pm.
π¦ Group Project
Reserve time this week to discuss and plan how your group will keep working after term ends and after the Easter Break. The Group Project is a 40% group submission due on Tuesday 26 May 2026 at 8 pm. You will also submit an individual reflection explaining how you contributed to the project. That reflection is worth 10% of your final course grade.