Sign up

Daniel Hooper

Not verified No WebSub updates No webmention support Not yet validated

Recent content on Daniel Hooper

Public lists
davewiner/hackerNewsStars
Fetched

Daniel Hooper
Text

Testing AI For C Programming

A grumpy C programmer sees what all the fuss is about

Read the whole article on danielchasehooper.com →

Daniel Hooper
Text

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 →

Daniel Hooper
Text

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 →

Daniel Hooper
Text

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 similar.

Read the whole article on danielchasehooper.com →

Daniel Hooper
Text

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 danielchasehooper.com →

Daniel Hooper
Text

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 →

Daniel Hooper
Text

Learn Shader Programming with Rick and Morty

An interactive guide on making animations on the GPU

Read the whole article on danielchasehooper.com →

Daniel Hooper
Text

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 →

Daniel Hooper
Text

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 →

Daniel Hooper
Text

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 →