June 20, 2026
Backprop, but make it stressful
Show HN: Microcrad – Micrograd Reimplemented in C
A tiny AI toy in C has coders cheering, nitpicking, and reliving school trauma
TLDR: microcrad is a tiny educational project that rebuilds a simple machine-learning teaching tool in C so people can see how training works step by step. The community seems amused and impressed, with the main debate being whether C makes this gloriously clear or gloriously painful.
A tiny project called microcrad just landed on Hacker News and instantly triggered the classic internet combo: admiration, nostalgia, and extremely specific nitpicking. The creator, Orazio, pitched it as a learning project — basically a stripped-down way to see how machines “learn,” built in the famously unforgiving C programming language. No giant data centers, no fancy speed tricks, just a small, readable system that shows every step. And that simplicity is exactly why people perked up: for many readers, this was less “new AI breakthrough” and more “finally, a way to understand the black box without needing a PhD and a supercomputer.”
But the real juice is the crowd mood. A big chunk of the reaction was a mix of “this rules” and “you chose to do this in C on purpose?” The educational angle won a lot of love, especially from people who said they learn best when all the hidden magic is exposed. At the same time, the language choice sparked the usual low-key drama: some treated C like a badge of honor, while others basically heard “manual memory management” and got flashbacks. That led to the funniest running joke in the room: the project is about teaching backpropagation, but commenters were also bracing for a side quest in pointer pain and memory bugs. In other words, the community verdict was delightfully split between “beautiful teaching tool” and “congratulations on reinventing anxiety in code form.”
Key Points
- •microcrad is a C reimplementation of Andrej Karpathy’s scalar-valued autograd project micrograd.
- •The system represents each scalar as a `Value` node in a computation graph and computes gradients with a reverse backward pass.
- •The implementation avoids tensors, vectorization, GPUs, and other performance optimizations, using scalar chain-rule operations instead.
- •A small multi-layer perceptron is built on top of the autograd engine to support forward passes, backpropagation, and gradient descent in C.
- •The repository is positioned as an educational tool, not a production deep-learning framework, and uses reference counting to manage graph memory.