2025-06-18
You can use `fzf` to review git commits
jvns.ca/til/fzf-preview-git-commitsI just learned that
you can use it to review a git commit like this and I thought that was really
cool.
2025-06-16
CSS Classes considered harmful
www.keithcirkel.co.uk/css-classes-considered-harmfulThe solution to all of these problems
I humbly put forward that modern web development provides us all the utilities to move away from class names and implement something much more robust, with some fairly straightforward changes:
Attributes
Attributes allow us to parameterise a component using a key-value representation, very similar to Map<string, T>. Browsers come with a wealth of selector functions to parse the values of an attribute.
2025-05-23
honk
humungus.tedunangst.com/r/honk
Take control of your honks and join the federation.
An ActivityPub server with minimal setup and support costs.
Spend more time using the software and less time operating it.
2025-05-15
Writing that changed how I think about PL
bernsteinbear.com/blog/pl-writingEvery so often I come across a paper, blog post, or (occasionally) video that completely changes how I think about a topic in programming languages and compilers. For some of these posts, I can’t even remember how I thought about the idea before reading it—it was that impactful.
2025-04-29
No-engine gamedev using Odin + Raylib
zylinski.se/posts/no-engine-gamedev-using-odin-and-raylibGames can be made in many different ways. Many games are made using big, general purpose game engines such as Unity and Godot. I enjoy using the Odin Programming Language combined with Raylib.
Odin is a C-like programming language and Raylib is library for drawing graphics, checking input and playing sounds. So it’s just a program that uses a simple library, no engine!
There are no objectively best ways to create games.
2025-03-18
CASCII - ASCII Diagram Builder
cascii.appA well-equipped ASCII diagram builders freely available on the internet.
It stresses portability, simplicity, and immediateness.
2024-09-16
Technical Writing One introduction
developers.google.com/tech-writing/one2024-09-15
Writing an OS in Rust
os.phil-opp.comThis blog series creates a small operating system in the Rust programming language. Each post is a small tutorial and includes all needed code.
2024-06-28
Advanced Bash-Scripting Guide
tldp.org/LDP/abs/html/index.html2024-06-24
Microfeatures I Love in Blogs and Personal Websites
danilafe.com/blog/blog_microfeaturesIn this post, I talk about pleasant but seemingly minor features in personal sites
2024-06-20
Go's 'range over function' iterators and avoiding iteration errors
utcc.utoronto.ca/~cks/space/blog/programming/GoIteratorsAndAvoidingMistakesWhy does SQLite (in production) have such a bad rep?
avi.im/blag/2024/sqlite-bad-rep2024-06-18
Comparing Objective Caml and Standard ML
adam.chlipala.net/mlcompUnderstanding a Python closure oddity
utcc.utoronto.ca/~cks/space/blog/python/UnderstandingClosureOddity2024-06-17
How I learned Haskell in just 15 years - duckrabbit solutions
duckrabbit.tech/articles/learning-haskell.html2024-06-14
Putting Go's Context package into context
blog.meain.io/2024/golang-contextinterstar/cardigan-bay: A new wiki engine in Clojure ...
github.com/interstar/cardigan-bayA single-user “wiki” engine powering the ThoughtStorms wiki.
2024-06-13
My personal C coding style as of late 2023
nullprogram.com/blog/2023/10/08A simple, arena-backed, generic dynamic array for C
nullprogram.com/blog/2023/10/052024-06-09
The Hare programming language
harelang.orgHare is a systems programming language designed to be simple, stable, and robust. Hare uses a static type system, manual memory management, and a minimal runtime. It is well-suited to writing operating systems, system tools, compilers, networking software, and other low-level, high performance tasks.