One topic that I admire more than I know is programming languages, all the discussion around programming mechanisms, code puzzles, esoteric programming languages and code golfs.
Some articles about this capture my attention and challenge me with subjects that I have never heard about (and always expand my mental model of computer science). Working with Infrastructure and Cloud architecture keeps my hands off coding during the days, but it is a relief to read about it even without understanding the majority of it.
The last article that challenged me in that way was Small Programs and Languages and that article was so good that it nerdsniped me into learning a little about Forth from Easy Forth which uses a Forth implementation in Javascript to allow executing commands directly on the page, making it easy to play with the syntax.
Besides Forth that article showed me some information, puzzles and content around programming languages that I liked too:
The Author reinforced for me how Forth is a great language to learn if you come from traditional Java and Python
How some programming puzzles can be challenging like that Interpreter for J in a cryptic C code
A Lisp interpreter in Lisp, really a lot of functional programming for me
I learned of the existence of SNOBOL, and how the author used that to create an interpreter for Forth and the practice of defining a target program to run your interpreter
Following the idea about small programs to small languages the author cites 3 “syntactically tiny languages” Forth, Lisp and Tcl that seem to be great because with few core concepts you can create functional programs.
I really liked the Assembly nights idea from the author, an old PC without internet only for coding and programming.
In the end a parallel outside programming was created about how miniatures or reductionism can help us learn more about concepts and really understand big things, and help to understand why all that is an enjoyable activity.