2020#52 Readings of the Week
5 minutes read | 1045 words by Ruben BerenguelThis one is actually making it on time. Don’t get used to it.
You can also get these as a weekly newsletter by subscribing here.
🍿 How to market Haskell to a mainstream programmer
This is a fascinating talk by Gabriel Gonzalez at Haskell Love. It touches on several ideas I either mention or keep in mind (or wanted to explore!) in my MapCamp talk, Commoditisation and Programming Languages. Focusing on a strong language point, winning the position and from there expanding “vertically in the stack” as I think I mention in the talk is probably the best approach.
Haskell mini-patterns handbook
The patterns here look excellent from my limited Haskell experience.
Strange Numbers Found in Particle Collisions
The fact that I know the words used in all this makes it all the more dizzying.
Much Ado About The OODA Loop
I have been reviewing OODA concepts (we’ve just had MapCamp Berlin), re-reading Boyd’s Destruction and Creation and this post by Cedric is probably one of the clearest takes on it.
🍿 Zero-Overhead Abstractions in Haskell using Staging
By Andres Löh at Haskell Love. Macros are powerful and dangerous at the same time. Sadly I didn’t fully grasp how to use staging fully from this talk, but knowing it is an option is good enough at the moment.
The Case of the Top Secret iPod
It’s a bit a-ha, so what? Once this iPod appears in public (if ever) it will be more interesting.
Stackage for Rust?
I have written some Haskell for fun (and used two libraries from the author). It was interesting to learn about the story of Stackage and his versioning point of view
Inside the hidden world of competitive lockpicking
There are communities for anything… A long time ago (20 years ago or more!) I found a PDF about lockpicking and taught myself the basics so I could pick basic locks. It’s fun.
Why Is This Idiot Running My Engineering Org?
The leaders who have a low tolerance for risk — and I say leaders instead of managers because on engineering teams these concepts also apply to Staff and Principal engineers — will respond to risk by either avoiding it outright or figuring out how to spin the situation so that it is Not Their Fault(TM)
Haskell to Core: Understanding Haskell Features Through Their Desugaring
This is still above my headOption
.
The rise, fall, and rise of the status pineapple
The Psych cast would approve this.
🍿 Technique for writing debuggable Haskell functions
I have used similar approaches in other languages. Or at least what I understand as similar approaches (make a “human debuggable” version of what you want to do, then do it). Of course, there are Kan extensions here, which is kind of a next level 🤣.
🍿 Communicating and documenting architectural decisions
An interesting video on LADR and other decision-capturing techniques. Highly recommended.
đź“š Tiny Habits
It’s OK. If you can understand the behaviour model from the author, and combine that with small habits you get the gist. It’s one of those books that could be a long blog post, but it’s full of stories and tips. So, not bad but I still think Atomic Habits is the better of the habit books.
How JIT Compilers are Implemented and Fast: Pypy, LuaJIT, Graal and More
If you find this interesting, you may enjoy reading the Futamura papers
Music for Plants
Fascinating account of all the ways music affects plants.
Expression is Compression
Interesting, although more precisely knowledge is compression. Thus, expression/teaching is compression too, since it is the transfer of knowledge. By the way, I saw that Picasso evolution in a neat Twitter thread. I wonder if David did see it. If you understand Spanish, it’s very well narrated. It has some comments pointing to similar evolutions (in particular to the Apple trees by Mondrian, some of my favourite paintings)
Predictions As A Substitute For Reviews
This sounds as a very tempting approach. Not because weekly reviews need a substitute, but because getting better at predicting and setting an expected value to what you put your time can help your decision-making (cf. Weekly Readings 51).
Turning the IDE Inside Out with Datalog
I had the idea of using Prolog to define a type system and explore languages… All has been invented, and this is super interesting. Worth noting the reference about the new type checker for Rust in a Prolog-ish dialect.
Is Every Game of Slay the Spire Winnable?
An interesting analysis (at a high StS level). I have beaten the game once or twice, getting the final Heart takes a while. An easy game to recommend by the way: hard enough to keep you engaged and simple enough to understand to be fun, if you know what I mean.
How Go 1.15 improved converting small integer values to interfaces
Python does the same for a set of small integers (from -5 to 120 something, if my memory serves). It can make a huge difference in many cases, since these numbers are commonly used as ranges in loops, and the impact on hot paths is significant.
Mitochondria May Hold Keys to Anxiety and Mental Health
One in 5,000 people has an inherited mitochondrial disease of some kind, with consequences that can include diabetes, vision and hearing problems, learning difficulties and other disorders.
As an alternative, he suggests that behavioral interventions based on mitochondrial function, such as exercise, could be the way to go. Exercise, he says, may be “the best thing you can do for your mitochondria.”