About build-your-own.org

James Smith

Hi, I’m James Smith, a software developer with over 10 years of experience. This is the website for my books and blogs.

I have an interest in fundamental knowledge and first principles, which is reflected in the topics of my books. My books cover topics such as network programming, data structures, databases, compilers, assembly, etc.

I also believe in the “from scratch” approach to learning, inspired by Richard Feynman’s quote “What I cannot create, I do not understand”.

Welcome to build-your-own.org.

A website for free educational software development materials.


for updates and new books.

Build Your Own X From Scratch Book Series:

Build Your Own Redis
Build Your Own Database
Build Your Own Compiler
Build Your Own Webserver