Digests ยป 205

this week's favorite

The Strange History of Ransomware

When people first hear about ransomware, there is always this moment of stunned disbelief. It sounds like a plot line snatched straight from dystopian fiction: you flip open your laptop only to discover you have been locked out of all your files.

Thirteen Years of Bad Game Code

There are many, many more embarrassing mistakes to discuss. I discovered another "creative" method to avoid globals. For some time I was obsessed with closures. I designed an "entity" "component" "system" that was anything but. I tried to multithread a voxel engine by sprinkling locks everywhere.

Rerere Your Boat...

One of the things I didn't touch on at all in the book is the git rerere functionality. This also came up recently during one of my trainings, and I realize that a lot of people probably could use this, so I wanted to let you all know about it.

Why are some programming languages "faster" or "slower" than others?

I have noticed that some applications or algorithms that are built on a programming language, say C++/Rust run faster or snappier than those built on say, Java/Node.js, running on the same machine.

A Diff Algorithm

A good diff algorithm will attempt to identify as much equality as possible. Everything else qualifies as differences. The metric for quality and precision is a smaller count of captured differences. The smaller this number the better, presuming differences aren't escaping undetected.