Add lecture_timings_2025_plovdiv.md

This commit is contained in:
Aitor Morales-Gregorio 2025-09-30 02:28:36 +02:00
parent 8635fb282b
commit 33b0801b2b

View file

@ -0,0 +1,53 @@
# Timings and improvement notes of the Parallel lecture 2025 in Plovdiv
Lecturers: Zbysek, Aitor
Kitchen analogy was massively improved, now all the elements matched the computer architecture lecture and confusion about threads/processes was reduced by a lot. Recipe/program analogy was shorter, but still had the IO concurrency time savings.
Live coding of race conditions made the problem very clear and demonstrated why a lock is a great solution to avoid them, made introducing the GIL much easier and less confusing. Zbysek initially started live-coding in an ipython shell (due to mixing this live coding with the one later), but then had to switch to a script. Live coding could be a few minutes shorter (maybe 5 or so).
Overall the first introductory part was much better than before, there were less confused faces. The students were able to explain the main concepts to each other (one sick student missed the first part).
Some students complained that in the first 1h30 we spoke a lot on top of each other. Still, Tiziano was happy with Aitor's mitigation of Zbysek going too deep in the technical explanations. The speaking on top of each other was reduced a lot in the next two parts. It was not necessary to talk so much on top of each other, some students had a hard time following the lecture because of this (more than one student mentioned it, some said it was not so bad).
Some of the questions in the quiz are misleading and not really "fair". We should introduce one question about using multithreading to control hardware (e.g. a laser, camera, and lever in a mouse experiment), also this should be added to the use cases for parallelization (Nassi had this use case, also a student brought it up).
Introduction of htop was not well done, we had to go back and explain some of the parts. In the Exercise A some students were not using htop (even though it is explicitly and clearly asked), unclear how to fix this. Maybe clearer explanation of the parts of htop would help, making it the natural tool for the exercise. We did say that they need it, so maybe they were not paying attention.
Exercises should be revised and streamlined. Exercise C is computationally too heavy, Aitor just showed the results and the students seemed to understand well the gist of the problem (numpy doing multithreading without asking). Exercise C can be changed into a live demo permanently; with simplification of the exercises the lecture might fit into 3h instead of 4h (we used ~3h40 in total in Plovdiv). The students appreciated the extra time for pelita.
Time is in German time zone
```
Aitor:
9h05 Start (many students arrived late)
9h08 End of the discussion with their partner
9h10 start decoding of kitchen analogy
9h15 start recipe (shopska salata) analogy
Zbysek:
9h32 start race condition live coding (ipython but then script)
9h55 lock introduced to script
Aitor:
10h00 introduce the GIL
10h07 start numpy hypothesizing
~10h12 introduce multiprocessing (embarrasingly parallel problems)
Zbysek (& Aitor):
10h21 start Blooket quiz (questions are linguistic rather than technical)
10h41 coffee break (intentionally late, also the snacks and coffee were not ready on time)
Zbysek:
11h11 back from break, start htop demo (messy)
~11h20 start exercise A
~11h50 start discussion
12h02 end of exercise A, start live coding demo of map
12h10 start exercise B
12h28 discussion
12h35 lunch
Aitor:
14h08 start exercise C demo (students quite late)
14h25 start of final presentation (Zbysek had some slides here too, asyncIO etc)
14h41 END (intentionally early, much appreciated extra time for pelita)
```