Veritasium does a great overview of maze-solving robots. He goes over the different algorithms as well as optimizations that weren’t optimal, but were faster because the mechanics of the path made it faster for the physics of the robots. There were also unique optimizations that take advantage of diagonals, gyroscopes, suction to make 6G turns, and other ideas.
It’s a reminder that even when something seems solved, there is likely huge optimizations still waiting to be discovered.
javidx9 walks us through his 3 month adventure writing a NES emulator in C++. He does a great job walking through the topics with beginner friendly explanations and good production values of diagrams and coding.
The stories of Melvin Kaye have become part of programming folklore. Little is actually known of him beyond the fact he did lots of interesting programming with a very early Royal McBee LGP-30. He eschewed optimizing compilers and hand-crafted his code to take advantage of the most esoteric hardware quirks – such as using the LGP-30’s drum memory rotation speed to write delay loops in his code.
CppCon has a bunch of other great ‘Back to Basics’ videos that cover a whole host of great topics: safe exception handling, move semantics, type erasure, lambdas, and a bunch of other critical but oft misunderstood elements of C++
In this video, you get a refresher on RAII.
“Resource Allocation is Initialization is one of the cornerstones of C++. What is it, why is it important, and how do we use it in our own code?”
Quanta Magazine makes a wonderful set of videos on mathematics, computer science, physics, biology, cosmology, and science fields. They distill amazing discoveries down to quick videos that often include interviews with the very scientists involved. One series I really like is their yearly summary videos that sum up some of the biggest breakthroughs of the year.
The 2021 video has a really great interview on how we’re starting to formalize and start really understanding how neural nets used in AI algorithms work. They used a clever idea of starting with how these networks worked if the net width was infinite.
It’s a great part of my effort to move away from emptier forms of social media consumption and more intentionally spend my time/energy on creative, positive, constructive, uniting, uplifting, and educational efforts.
Back in the day, people learned programming by typing in BASIC programs from books and magazines. Besides the books that came with my TSR-80, if there was one book that got my programming bug off the ground, it had to be this one: Basic Fun with Adventure Games. A book I bought for $0.75 at an school book sale when I was around 5th grade.
What made this book so amazing is that it not only contains a full text adventure game you can type in, but it also teaches you how to write your own adventure game – from concept to implementation. I remember being blown away at how good this book was. Even today it holds up to teach the requirements and skills needed to program your first game. It certainly worked well enough for me as a 10-12 year old to completely write my own game about finding the deed to a castle after your rich uncle died. Highly recommend checking it out.
It was the most amazing 75 cents I spent in my entire childhood and still holds a special place in my heart. My copy still sits on my bookshelf next to the college programming textbooks.