I build things to understand how they work. Languages, kernels, proofs, and the machinery in between — I would rather take an abstraction apart and rebuild it than take it on faith.
KISS. Keep it simple. A small kernel with clear rules beats a large system with unclear ones, and most complexity is a decision nobody went back to question.
First principles. Learn from the inside out. When something becomes interesting enough, implement it, break it, or state its assumptions precisely enough to be checked.
Observable machinery. Hidden state should stay inspectable; a design that cannot be seen is a design that cannot be fixed.
Finish the experiment. Even an unfinished project should leave behind something that teaches.
Rust is where most of the work happens. Lean when a claim deserves a proof, Typst when an idea deserves an explanation, Nix when an environment deserves to be reproducible, C and assembly when the machine itself is the point.
Reading more mathematics, formalizing the parts worth keeping in Lean, and poking at the boundary between languages, systems, and logic.
