Real-world analogies in computer science

The Concurrent Systems course that started this week has a reputation of being difficult. The lecturer said the faculty can’t quite figure out why. Rumors hold that it took some poor soul nine tries to pass the course. “It’s not the worst of the compulsory courses, though,” the lecturer consoled us. “That record is held by the Models for Programming and Computing course, at eleven tries.” My Models for Programming and Computing exam is on Tuesday.

The Concurrent Systems course is full of real life analogies. There’s dining philosophers, sleeping barbers, banker’s algorithms. All three of the problems have animations to illustrate how they work (the dining philosophers animation is kind of hard to follow).

I once described to my sister how a file system sometimes rejects files after a system crash. This happens, when the file’s size changes and the computer crashes before this change has been updated in the file system. When trying to repair itself, the file system rejects the file, just as a mother bird rejects a baby bird that’s fallen out of its nest and smells wrong (if been touched by a human, for example).


There are 2 other entries posted on this day.