Blog
Why Odin?
A succinct introduction to the Odin programming language for experienced programmers, especially those familiar with Go, Java, and other GC-based languages.
Zero to Hello World in Odin
Write your first Odin program and learn about the structure of an Odin program/project.
Data and Memory Management in Odin
Learn how to work with data, and fearless memory management in Odin
Building an HTTP Server on a Thread-per-Core Framework, without Async/Await
How to build a production-grade HTTP server without async/await or coroutines. Discover how Tina HTTP uses thread-per-core state machines in Odin
The Tokio/Rayon Trap and Why Async/Await Fails Concurrency
Async/await makes concurrency easy to write, but incredibly complex to operate. Read on for why the Tokio/Rayon boundary is failing in production, and how explicit state machines fix it.
Why Queues Don’t Fix Overload (And What To Do Instead)
Why adding Kafka or bigger queues won't save your server from traffic spikes. Learn the physics of backpressure, load shedding, and the latency death spiral.
Practical Introduction to Async Generators in JavaScript
A comprehensive and practical guide to synchronous and asynchronous generators and iterators in JavaScript & TypeScript
Building a Formal Verification Tool from Scratch: Part 3 (Rethinking the Foundation)
We take a step back to rethink the foundation. Replacing dynamic arrays with fixed-size registers, upgrading our hash function, and learning why simple data structures make things easy.
Building a Formal Verification Tool from Scratch: Part 2 (The Virtual Machine)
Hardcoded solvers don't scale. We need an engine that operates purely on logic to verify any system. We build a custom Virtual Machine in Odin, tackling instruction sets (bytecode), tagged unions, and the subtle traps of memory identity.