Introducing the Algorithm Codex
A New Journey Into the Science of Computation
Hey, this is just a quick informative post to talk to you about what’s coming next in The Computist Journal.
As part of our ongoing work in curriculum design for the Computer Science career at the University of Havana, we are launching a public project we’ve dubbed The Algorithm Codex. It’s a big name, I know, but we have big goals for it. We plan to cover the vast majority of algorithms taught at the undergraduate level in a typical CS major, moving from the absolute basics of searching and sorting to more complex structures like trees, graphs, and string matching. We’ll even dive into some of the more advanced final boss topics in number theory and computational complexity.
This is an ongoing effort that we will be updating weekly as new chapters and algorithms are finalized.
What exactly is the Codex?
The whole project is designed as a living reference book. This means it isn’t just a collection of source code; it’s a narrative experience built on the philosophy of literate programming. Every algorithm comes with intuitive explanations, correctness proofs, and back-of-the-envelope complexity analysis.
We aren’t going to get bogged down in dense, impenetrable math. Instead, the Codex is meant to serve as a complement—not a replacement—for traditional textbooks. It’s a place for students and enthusiasts alike to find a quick, clear reference to the best, most well-known, and occasionally the most obscure but cute algorithms ever devised.
The project is entirely open-source on GitHub, and the accompanying book is, of course, free to read online. It’s still very early stages but it’ll grow, in time, as good things do. I have big hopes for this project.
What’s the deal for you?
Since I am one of the main contributors to this project, I’ll be using The Computist Journal to post deep dives into some of these algorithms over the next few months. I’ll be interleaving these with our usual topics—CS theory, AI, and the philosophy of computation—but for a while, a large part of my focus will be on these fundamental building blocks.
You can expect the usual Computist style: intuitive explanations, clear visualizations, and a focus on why things work the way they do.
We are kicking things off this week with an entry on the basics of search. We’ll be understanding and designing from scratch what is arguably the most beautiful and quintessential algorithm in computer science: Binary Search.
So, if learning about algorithms is your kink, hit that subscribe button. I’ll see you next Tuesday with the first entry.


