Hello, I’m Serge and here’s some of my recent blog posts:

On Poetry

Building a simple poet assistant utility, exploring the enchanted world of dictionaries and rhymes. (9 min to read)

Tiny Great Languages: PL/0

Explore PL/0, a simplified subset of Pascal, and learn how to build a lexer, a parser and an interpreter from scratch. (8 min to read)

Tiny Great Languages: APL

Hey, life ← {⊃1 ⍵ ∨.∧ 3 4 = +/ +⌿ ¯1 0 1 ∘.⊖ ¯1 0 1 ⌽¨ ⊂⍵} and no, your browser encoding is correct, it's just 'A Game of Life' in APL. (9 min to read)

Tiny Great Languages: Lisp

From RPN languages to (lots (of (irritating) superfluous) parenthesis), or (Lisp (is (simply (prefect))))! (7 min to read)

Tiny Great Languages: MOUSE

From "2+2=4" to "2 2 + 4 =", reverse Polish notation, concatenative languages, Forth and its smaller siblings. (9 min to read)

Tiny Great Languages: BASIC

Entering the microcomputer era and attempting to create a programming language that dominated home computers in the 1970s (7 min to read)

Tiny Great Languages: Assembly

Summing up years of building interpreters and compilers for various programming languages. The first chapter is about assembly language. We will try to implement a tiny two-pass assembler for CPython VM. (7 min to read)

AI or ain’t: LLMs

Finally, building a simple GPT model that would finish our sentences. (15 min to read)

AI or ain’t: Neural Networks

Neural network and deep learning introduction for those who skipped the math class but wants to follow the trend (11 min to read)

AI or ain’t: Markov Chains

Exploring the world of Markov chains, learning how they predict text patterns and make a basic implementation that talks nonsense like Homer Simpson. (8 min to read)

AI or ain’t: Eliza

Explore the intriguing history of Eliza, a pioneering chatbot, and learn how to implement a basic version in Go, unraveling the roots of conversational AI. (11 min to read)

Minimal cross-platform graphics

Exploring how to use 2D graphics in various desktop operating systems, the old-school way. In this part we learn how to create an empty window under Linux, macOS and Windows. (22 min to read)

What is Git made of?

Build your own tiny Git from scratch to learn the internals of Git version control system. (11 min to read)

Post-apocalyptic programming

In a post-apocalyptic future with no internet or stackoverflow, let's try to build a programming environment from scratch. (33 min to read)

On Transpilers

Exploring various transpilers from C to "better C" and how they can help replacing C in existing project. (8 min to read)

All posts