The age of AI is here, and if you’re like me, you will notice that the shift from programming code by hand to having it written by AI happened so fast that you barely got time to adjust to this new reality.

In my opinion, it took away a lot of the messy and routine parts of the work and left us with the one thing that us humans can still do well. Thinking.

I am a sucker for good software, it is a joy to live in a world where you can find great open-source software that you can fork and tinker with.

I once read that someone was using AI to help him better understand Shakespeare novels, where he would let AI fill his knowledge gaps with ease. It is like having your own private tutor who can level with you.

So I thought what if I do the same with open-source code. What if I clone a new repo each month and try to unravel what makes a software good and write about it?

As an ode to the joy of software engineering, I am starting a new blog series called Eval-Apply, where I will take a peek underneath giant pieces of software, and share how they work.

I want to invite engineers of all experience levels to be able to read this so I will try to explain things wherever I can, and focus on high-level architecture of the software, deep dive into one or two interesting components of the system, and share any obscure findings that look cursed (but yet somehow work).

This is also an attempt to become a better reader of code, a skill that is increasingly becoming more in-demand as your AI keeps spitting more tokens per passing day.

Computational processes are abstract beings that inhabit computers. As they evolve, processes manipulate other abstract things called data. The evolution of a process is directed by a pattern of rules called a program. People create programs to direct processes. In effect, we conjure the spirits of the computer with our spells. ~ SICP