I've spent a lot of time using Docker recently and I've been pleasantly surprised. Once you grok the concepts, the tooling is slick.
miniblog.
Related Posts
The book 'The Art of the Metaobject Protocol' has two chapters in the public domain and available online!
Chapter 5: Concepts
Chapter 6: Generic Functions and Methods
Contrasting Rust traits with C++20 concepts: https://mcla.ug/blog/cpp20-concepts-are-not-like-rust-traits.html (Rust traits are stricter, which can enable better errors)
I'm comfortable with git, and recently learned mercurial, and I've concluded: commits are the wrong abstraction.
Work-in-progress and finished work are different concepts. Rebases and even branches are for WIP. Signing is for finished work. Timestamps and authors change for WIP.