Programming is a lot like mathematics. Both are quite abstract for most people to grasp the underlying concepts. Translating them to everyday language is a very hard task, but it would help many learners.

I saw a video on the Diffie-Hellmann protocol with an explanation using colors. It was so easy to understand that I only needed to watch it once and I could explain how it works to others. Videos like this are marbles. They let the audience learn new things with ease. The protocol works with numbers and large primes and especially the modulo operator is a hard topic.

It’s hard to paraphrase an abstract idea to everyday language, but it’s really worth the effort. If someone is just getting started with programming, then every simplification goes a long way.

My studies were an antipattern to this. The tipical course first introduced a bunch of equations and variables, then we used them in the whole semester; there were no connection to practical use cases and that made understanding much harder.

A collections of such tutorials would benefit many. It’s often a hard task to create one, but a comprehensive library would help people see the true nature of programming; it’s much easier than you think.