Neil Blakey-Milner

Weeknotes: 2024-W52

Published: , updated:


Summary

Mostly vacation week. Threat of rain still precluded doing much personal outdoor exploration, but read quite a lot and discovered the places to reliably get espresso-based drinks nearby the cabin.

Decided to head home a day early so we could start the post-vacation recovery early. Most glad to be back to the routine of walking about at least twice a day - even walking if in the (very light) rain. Despite the rain, these were two really enjoyable photography outings rather than just walks.

Photos

(Based more on time of processing than time of taking…)

Mallard at Madrona Park Beach on Lake Washington


Mossy growth on a rock near Copper Creek


Wood carving of a bear at Paradise Village Restaurant in Ashford

Enjoying

Newly discovered

Peter Norvig’s Advent of Code notebooks

(More rediscovered than discovered.)

Every year, Peter Norvig puts together a Python notebook of his Advent of Code solutions. His solutions are generally concise, focused, and informative, and his 2024 Advent of Code notebook is as well.

Highlights

On Long Term Software Development - Bert Hubert

it bears reiterating: complexity is the end-boss of software development. Complexity can slay the best programmer and even the best team. It is the ultimate enemy. Yet, because of entropy and human behaviour, complexity will always increase unless you act upon it consciously.

If you have a limited amount of code to deal with, this code could be quite complex in nature. As the amount of code increases, it needs to be ever simpler if you still want to have a handle on it.

– “On Long Term Software Development”, Bert Hubert


Cognitive load is what matters - Shallow Modules - Artem Zakirullin

Mantras like “methods should be shorter than 15 lines of code” or “classes should be small” turned out to be somewhat wrong.

Having too many shallow modules can make it difficult to understand the project. Not only do we have to keep in mind each module responsibilities, but also all their interactions. To understand the purpose of a shallow module, we first need to look at the functionality of all the related modules. 🀯

– “Cognitive load is what matters”, Artem Zakirullin

The genius puzzle game that gamers are missing out on

the genius puzzle game that gamers are missing out on - Luke Muscat

Luke Muscat (of Fruit Ninja and Jetpack Joyride fame) hits the nail on the head with this video, explaining why variant sudoku is picking up steam right now, and why I enjoy watching the Sudoku videos put out by Cracking the Cryptic most days. The interactions between “geometry” and different combinations of older, tweaked, and newer variant rules (on top of the “usual Sudoku rules”) cause close to newly emergent approaches to each puzzle.

Reverse engineering the Stream Deck Plus

Reverse Engineering The Stream Deck Plus - Den Delimarsky

This tale of reverse engineering the Stream Deck Plus was an enjoyable read - showing the relative simplicity of what can happen with the right bit of know-how, doing something that might seem impossible or unapproachable to people.