Bocconi links: course synopsis, course schedule
Room: Aula 5 (Sarfatti 25, ground floor)
Office hours:
Resources:
Date | Time | Topics |
---|---|---|
Fri Sep 5 | 12:00 | Introduction |
Part 1: How computers work | ||
Boolean logic | ||
Integers, characters and text | ||
Fri Sep 12 | 12:00 | Hardware: integrated circuits |
*Tue Sep 16 | 10:15 (2h30) | [Tutorial] Python formatted strings and list
comprehensions |
[Tutorial] Boolean logic and integers |
||
Hardware: instructions, memory | ||
Wed Sep 17 | 10:15 (2h30) | Software: compilation, OSs, virtualized memory, stack |
Fri Sep 19 | 12:00 | Part 2: Software development |
Compiler invocation and build tools | ||
*Mon Sep 22 | 13:45 (2h30) | (continued) |
*Thu Sep 23 | 10:15 (2h30) | Programming languages |
Wed Sep 24 | 10:15 (2h30) | Portability, ABIs |
*Mon Sep 29 | 13:45 (2h30) | Regular expressions |
[Tutorial] regular
expressions |
||
*Tue Sep 30 | 10:15 (2h30) | Version control systems |
[Tutorial] git |
||
Wed Oct 1 | 10:15 (2h30) | Software licenses, development methodologies |
Fri Oct 3 | 12:00 | Part 3: Correctness |
Specifications | ||
Wed Oct 8 | 10:15 (2h30) | Undefined behavior |
Fri Oct 10 | 12:00 | Fixed-point and floating-point arithmetic |
*Thu Oct 14 | 10:15 (2h30) | (continued) |
(partials) | ||
Wed Oct 29 | 10:15 (2h30) | Documentation, tests, fuzzing |
Fri Oct 31 | 12:00 | Static and dynamic code analysis, debugging |
Wed Nov 5 | 10:15 (2h30) | Part 4: Performance |
Pipelined CPUs, memory | ||
Fri Nov 7 | 12:00 | Caches, benchmarking, instrumentation |
Wed Nov 12 | 10:15 (2h30) | Stochastic instrumentation |
Wed Nov 19 | 10:15 (2h30) | [Tutorial] performance |
Wed Nov 26 | 10:15 (2h30) | SIMD, multithreading |
Wed Dec 3 | 10:15 (2h30) | distributed computing, hardware acceleration |
Fri Dec 5 | 12:00 | (continued) |
* = room different from usual Aula 5.