My first encounter with the SICP book (Structure and Interpretation of Computer Programs) was in 2018 through the “Teach Yourself Computer Science” website.

It is known as the Wizard Book in hacker culture according to Wikipedia.

Eli blogged about his 10 months experience working through the entire book.

Kai Wu did a great job wrting about why one should study SICP.

One of the impact after learning SICP is, you will understand why you don’t need looping constructs.

A few years later (2021), I’ve decided to study SICP seriously and do most of the exercises.

So I began my journey.


I want to learn the principles of programming properly.

I never quite understood functional programming (FP). After all these years doing OOP (C#) and some FP in JavaScript, I hope I can finally pick up a new programming paradigm such as FP.