Git rebase -i is not that scary
a guide to interactive rebasing.
The latest blog posts to take off on Hacker News. 21,814 posts.
a guide to interactive rebasing.
We removed over 80% of Claude Code's system prompt for more advanced models. How to apply the lessons we learned to your own context engineering in Claude Code and with your own agents.
When seeing the title of this post, I bet in some people's minds, the first thought was "Rust devs!". This connection is not unfounded. Rust devs tend to be passionate about memory safety. Some of it, I'm sure, may have been caused by a classic language wars attitude: my language is better than yours, and here is why…
Calibrate your enthusiasm
I've written more shell scripts than I can count, but I still stumble upon tricks that honestly blow my mind far too often than I care to admit. Latest thing that blew my head clean off? The shell colon.
Go 1.26 made Green Tea the default GC. We observe its cache-friendliness with perf, visualize the heap to see how Go allocates, and poke at a sparse-page problem a non-moving collector like Go's struggles with.
sqlite-backed shell history
My wife and I have been looking for an app to track things like habits, hobbies, and when we last did certain chores.To be honest there are probably hundreds of different habit trackers on the App Store. Next to todo list apps they are supposed to be the easiest apps to create so it is not really that surprising there…
As I’m writing this, we’re in the middle of an AI-induced mass psychosis. People are literally token-maxxing themselves into hospital beds, scrambling to capture some of that market value before everything is automated away. I can’t blame them. Models keep getting better, programmers are being laid off left and right…
Define a simple, standard API for parsing and generating JSON documents so that doing so does not require an external library. Enable many JSON processing tasks to be accomplished with little coding. This is an incubating API .
I always liked to see and touch the cover artwork of the CDs and LPs I bought in the past, but in the end the convenience of digital streaming won me over and I accepted no (or stamp-sized) artwork. Lately I’ve been missing this more and more and ultimately decided to try to do something about it. So I built a…
In this series of articles, I aim to demonstrate how OpenGL, Vulkan, Metal, and DirectX work by writing a simplified clone from scratch. Surprisingly, many people struggle with the initial hurdle of learning a 3D graphics API. To help with this, I have prepared a short series of lectures, after which my students are…
What would have happened if Emacs' default buffer had been a terminal emulator? Conceptually, from the outside, it would be perceived as a terminal…
It all started with a routine task. I use GitHub issues for all of my public-facing projects but my preference is keeping track of things in Org Agenda. To reconcile the two, I would manually...
In a previous post SIMD Matters I discussed the big wins I got from graph coloring to make the contact solver faster. That same approach exists in Box3D. I like to call this approach “wide SIMD”. The idea is to process multiple work units at the same time. In the contact solver this means solving four contact points…
An illustrated guide that starts from the basics, explains the Jacobian Conjecture, and follows what happened to it in July 2026.
SIMD has a reputation for being complex. I've met many very good software engineers who dismiss it as something too complex to learn or a niche optimization meant for only the highest-performance software, not useful in everyday programming.
See how a beam engine works through interactive 3D figures exploring steam, pressure, Watt's condenser, valves, linkages, and the governor.
Writing code in 2D: a spatial programming language with vertical operands, quantum uncomputation puzzles, and a 3-bit adder in a single 2D expression.
Hello there! This is my personal website and it is allergic to SEO.
That is the first line of the 80s microcomputer BASIC game The Wizard's Castle initially written for the Exidy Sorcerer platform.
Bring reactive notebooks into your Python projects, without leaving your IDE
Or: the difference between vibe-coding and vibe-engineering.
The git flag I assumed was an LLM hallucination
Enjoy Emacs and its built-in language server (LSP) superpowers, for JVM languages. Let's walk through basic language setups, specialized workspace configuration handling, and dive deep into some advanced JSON-RPC and advice-based workarounds for Scala (Metals) and Kotlin that make development truly seamless from Emacs…
I like using Vim to make ASCII art. I don't use any plugins; Vim already has a bunch of built-in features that are super useful for making ASCII art!
After quite a long while, Hyprland 0.55 is upon us! This is an enormous update by each measurable metric - commits, contributors, features and changes.
The Wasm GC and exceptions proposals are both enabled by default in today’sWasmtime 47 release! We are excited to help bring more languages to WebAssemblyand everywhere that Wasmtime runs. Getting to this point involved large Wasmtimecha...