Schedule · Fall 2026
The semester at a glance
Dates are Mondays. Exam dates are set by the faculty and will be confirmed here and on the WhatsApp channel.
| Week | Date | Topic | CS50 | Lab |
|---|---|---|---|---|
| 01 | Sep 21 | Welcome: What This Course Is and How It Works Course introduction (held) | — | |
| 02 | Sep 28 | Everything Is Bits: Representation, Algorithms and Scratch First lab: Scratch and bits | Week 0 · Scratch | lab-01 |
| 03 | Oct 5 | C: Source Code, the Compiler and Your First Real Programs | Week 1 · C | lab-02 |
| 04 | Oct 12 | Arrays, Strings and the Command Line | Week 2 · Arrays | lab-03 |
| 05 | Oct 19 | Algorithms: Searching, Sorting and Big O Projects assigned (personal announcement) | Week 3 · Algorithms | lab-04 |
| 06 | Oct 26 | Memory: Pointers, the Heap and Hexadecimal | Week 4 · Memory | lab-05 |
| 07 | Nov 2 | Data Structures: Linked Lists, Hash Tables and Trees | Week 5 · Data Structures | lab-06 |
| 08 | Nov 9 | Midterm Exam Midterm week (date to be confirmed by the faculty) | — | |
| 09 | Nov 16 | Python: The Same Ideas in a Tenth of the Lines | Week 6 · Python | lab-07 |
| 10 | Nov 23 | Artificial Intelligence: How It Actually Works | Week ai · Artificial Intelligence | lab-08 |
| 11 | Nov 30 | SQL: The Language of Data Project prototype check-in | Week 7 · SQL | lab-09 |
| 12 | Dec 7 | The Web: HTML, CSS and JavaScript | Week 8 · HTML, CSS, JavaScript | lab-10 |
| 13 | Dec 14 | The Internet, Hardware and Security | Week cyber · CS50 Cybersecurity (lectures 0–1: Securing Accounts, Securing Data) | lab-11 |
| 14 | Dec 21 | Human–Computer Interaction and How Software Gets Built Project workshop | Week 9 · Flask (optional: if your project has a web part) | — |
| 15 | Dec 28 | Demo Day and Where Computer Science Goes Next Project demo day | Week 10 · The End | — |
| F | Jan 2027 | Final examJanuary 2027, official date announced by the faculty | ||
Modules
How the ideas build on each other
Bits and thinking come first, C gives you the machine, algorithms and memory make you a programmer, and Python, data and the web put it all to work.
- Module 1 weeks 1–2 0 1
Foundations: Bits and Thinking
What computer science is, how everything becomes bits, and your first programs in Scratch: the ideas of every language, without the syntax.
- Module 2 weeks 3–4 int main(void)
The C Language
Source code to machine code. Variables, conditionals, loops, functions, then arrays, strings and command-line arguments. You start writing real programs.
- Module 3 weeks 5–8 *p → &x
Algorithms, Memory and Data Structures
Searching, sorting and Big O; pointers, the heap and hexadecimal; linked lists, hash tables and trees. The part of the course that makes you a real programmer.
- Module 4 weeks 9–11 SELECT *
Python, AI and Data
The same ideas in Python in a tenth of the lines; how machine learning and large language models actually work; and SQL, the language of data.
- Module 5 weeks 12–13 </>
The Web and the Internet
HTML, CSS and JavaScript in the browser; then what happens between your laptop and a server: IP, TCP, DNS, HTTP, and how to stay safe.
- Module 6 weeks 14–15 v1.0
Humans, Systems and Your Project
Human-computer interaction and how software is built in industry, then demo day: your project, live, from your own repository.