Blog
Notes on what I'm building and what I'm learning.
React Native tells you something's wrong. It rarely tells you what.
22 September 2026Five bugs from one migration session. Every error was accurate. None of them pointed at the actual problem.
The right answer, the wrong shape
19 September 2026Five bugs from one day. Every one passed a value that was correct in one layer and unusable in the next. Nothing crashed, every endpoint returned 200, and every fix was a coercion.
There's no sender to hide
15 September 2026Whispers is CircleNet's anonymous message feature. The interesting thing isn't that it hides who sent a message. It's that there's nothing to hide in the first place.
The user doesn't see status codes
15 September 2026Five bugs from one CircleNet session. Two crashed the server, three returned success. From the user's seat they looked identical: nothing happened.
What eight thousand lines taught me about building alone
12 September 2026CircleNet started as one file. By the time it stopped being one file, I understood why people don't build social platforms solo.
The difference between a side project and software you use
12 September 2026FixLog is the only app I've built that I depend on daily. That changed how I build everything else.
Building the same app three times
12 September 2026What I learned rebuilding CircleNet in vanilla JS, Next.js and React Native against one backend.