Take Two: Eshell
This is a contribution to the Emacs Carnival 2025-06: Take Two collection of posts on Christian Tietze’s blog. My first take with Eshell many years back did not leave a good impression. My...
The latest blog posts to take off on Hacker News. 14,538 posts.
This is a contribution to the Emacs Carnival 2025-06: Take Two collection of posts on Christian Tietze’s blog. My first take with Eshell many years back did not leave a good impression. My...
This is a beginner-friendly post exploring some of my favourite parts of the D programming language , ranging from smaller quality of life stuff, to more major features.
At hackArcana, we deliver professional educational content authored by world-class experts in programming, binary analysis, and cybersecurity.
I built a small proof-of-concept for a system that enables real-time bidirectional editing between any modern code editor and a GUI, enabled by an LSP1 server. Code-based CAD I like working on small projects at home that benefit from CAD. I’m also a programmer with a personal development environment that I’ve spent…
Patterns for managing agent context.
I've always been told that caching is a tool to make software faster. That, given some careful considerations to consistency, caching makes it so that when...
LLMs make it easier to write code, but understanding, reviewing, and maintaining it still takes time, trust, and good judgment.
Context Engineering is the new skill in AI. It is about providing the right information and tools, in the right format, at the right time.
Last year, I discovered that the Kosinski compression format is actually LZEXE, which was used for compressing DOS executables back in the 90s and the late 80s. Its developer catalogues three versi…
See my follow-up article: “A Fast, Growable Array With Stable Pointers in C” I write type safe generic data structures in C using a technique that I haven’t seen elsewhere1. It uses unions to associate type information with a generic data structure, but we’ll get to that. My approach works for any type of data…
You are seeing this because the administrator of this website has set up Anubis to protect the server against the scourge of AI companies aggressively scraping websites. This can and does cause downtime for the websites, which makes their resources inaccessible for everyone.
This is a story about Imagebin. Imagebin is the longest-lived software project that I still maintain. I'm the only user. I use it to host images, mainly to include in my blog, sometimes for sharing in other places. Imagebin's oldest changelog entry is dated May 2010, but I know it had already existed for about a year…
[The wordpress markdown inclusion does a very bad job, it seems, there have been some idiotic formatting errors. I hope that these are fixed, now.] A years-long effort led by Kayvan Memarian and Pe…
A blog, mostly about programming
Once in a while you get introduced to a tool that instantly changes the way you work. For me, mise is one of those tools.
For the last few years, I've been developing caching library, and today I'd like to talk about the evolution of caches in Go and where we stand today. Especially since Go 1.24 was officially supposed to focus on caching improvements, but I haven't heard much news about them - time to fix that .
...so the malware would finally shut up and run
A Bloom filter is a data structure designed to tell you, rapidly and memory-efficiently, whether an element is present in a set.
Using logic programming to beat the game
A single-function JSON parser for the POSIX shell.
Or: The Day My Toaster Started Taking Phone Calls
Rust has a very powerful type system, but as a result it has some quirks, some would say cursed expressions. There’s a test file, weird-expr.rs , in the rust repository that tests for some of these and makes sure there consistent between updates. So I wanted to go over each of these and explain how it’s valid rust.
C23 has a new rule for struct, union, and enum compatibility finally appearing in compilers starting with GCC 15, released this past April, and Clang later this year. The same struct defined in different translation units (TU) has always been compatible — essential to how they work. Until this rule change, each such…
Update: See my follow up post, What should a native DOM templating API look like? .
The most famous quote from Knuth’s paper “Structured Programming with go to Statements” is this: There is no doubt that the grail of efficiency leads to abuse. Programmers waste e…
A conceptual model for thinking about time in programming that encapsulates the complexity that many programmers cite online
How to use uv and the Python inline script metadata proposal PEP 723 to run scripts seamlessly.
Why you should write more toy programs
I noticed about a 10x speed up across a number of projects, we'll avoid using a venv and run things as a non-root user too.