danielchasehooper.com
Testing Opus 4.5 For C Programming
A grumpy C programmer sees what all the fuss is about Read the whole article on danielchasehooper.com →
Hot reloading is better than SwiftUI previews
Did you know you can change the code of a SwiftUI app while it’s running? And that you can do it without using Xcode? The technique is called ‘hot reloading’ and I’ll show you how to do it by making a Todo app Read the whole article on danielchasehooper.com →
I Made A Real-Time Build Visualizer
Sometimes software takes a long time to compile just due to how much code it has, like in the LLVM project. But often a build is slower than it could be for dumb, fixable reasons. I’ve had the suspicion that most builds are doing dumb stuff, but I had no way to see it. So I’ve been working on a cross-platform tool to help visualize builds, and you can try it! Read the whole article on danielchasehooper.com →
A Fast, Growable Array With Stable Pointers in C
My last article about generic data structures in C was written to set the stage for today’s topic: A data structure with constant time indexing, stable pointers, and works well with arena allocators. Its been independently discovered by multiple programmers over the years and so goes by different names. A 2001 paper called it a “levelwise-allocated pile” (bleh). Zig calls it a “Segmented List”. Then there’s C++ with std::deque, which is only superficially simi...
Type Safe Generic Data Structures in C
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 structure: maps, arrays, binary trees… but for this article I illustrate the ideas by implementing a basic linked list. Read the whole article on danielchase...
A New Sudoku Layout With 81 Uniquely Shaped Cells
My journey making a Sudoku variant that doesn’t have rows or columns Read the whole article on danielchasehooper.com →
Learn Shader Programming with Rick and Morty
An interactive guide on making animations on the GPU Read the whole article on danielchasehooper.com →
Why Swift’s Type Checker Is So Slow
How a 10 year old design choice for Swift’s type checker still haunts us to this day Read the whole article on danielchasehooper.com →
Making a 3D Modeler, in C, in a Week
The origin story of a 3D Modeler made very quickly Read the whole article on danielchasehooper.com →
Good Ideas in Computer Science
Ideas every programmer likes and why Garbage Collection and Object Oriented Programming don’t count Read the whole article on danielchasehooper.com →