This is an educational experiment, where budding software engineers ask me about somewhat uncomfortable topics which can be explained in simpler ways than how it is introduced in books. These would normally be topics that were taught in rather convoluted, unnecessary forms in a conventional classroom.
The idea here is that having a primer on a rather complex topic explained in easier terms would potentially help the audience to go home and dig into the topic further.
These are topics that have been requested so far, in chronological request order.
- Game Theory: Introduction to game theory.
- Complexity: Gentle introduction to computational complexity theory, with examples of common algorithms and it's O complexity.
- Transistors, Logic Gates, and ALUs: Logic gates with transistors - the most basic building block of modern computing.
- The History of the Web: The history of the world wide web.
- Locks: What locks (in programming) are, how to use them, and when and not to use them.
The notes used for each talk will be shared in the individual topic folder, after the talk has happened.
A simple readme will be provided in the topic directory for each topic, along with further reading pointers which will be a combination of links, papers, and books.
Topic suggestions are expected to sent in in a form of a pull request.
Topics may get rejected. General rules of thumb are noted below.
I don't have enough time to sit down and make nice slides for each talk. The talks are expected to be on topics which are presentable on a whiteboard. (or chalkboard, depending on the location this is being presented)
Generic topics which can be useful to as many people as possible is strongly preferred, meaning language/library specific topics will most likely be of lower priority than generic computing/programming topics.
On that note, a topic which requires a reasonable amount of prior knowledge (e.g. linear algebra would be an example) is most likely to be rejected.
I obviously have limited knowledge, and in the event I don't know anything about a requested topic - that will most likely get rejected.
This material is distributed under the Creative Commons Attribution-NonCommercial 4.0 International Public License. For commercial use, please contact me privately. (I'm generally permissive, so given that the clause is reasonable it most likely will not cost you anything. The non-commercial clause is to prevent abuse from certain bad players that come to mind.)