Growth Notes #5

life

Oct 12, 2025 at 23:15 pm

Growth Notes: 5th October 2025 - 12th October 2025

Problem Solving

I've started solving problems actively on codeforces:

  1. A2147. Shortest Increasing Path
  2. C2091. Combination Lock
  3. A2125. Difficult Contest
  4. C2000. Numeric String Template
  5. A2133. Redstone?
  6. C2051. Preparing for the exam
  7. A2146. Equal Occurrences
  8. B2002. Removals Game
  9. A2151. Increasing Subarray
  10. B1975. 378QAQ and Mocha's Array
  11. A2145. Candies for Nephews

Also a few from CSES problemset:

  1. Weird Algorithm
  2. Missing Number
  3. Repititions
  4. Increasing Array

Participated in Leetcode Weekly Contest 471, solved only first problem and achieved 14292 rank.

The solutions to above problems are in my MahendraDani/programming repo.

Deep Dives

  1. Understood the basics and syntax of YAML from Kunal Kushwaha's YouTube video.
  2. Started learning Docker from YouTube. Turns out Docker containers are just namespaces, and writing a minimal version is simpler than one can image.

Learnings

Covered the basics of Go - complie-time, program structrue, standard libraries and more from The Go Programming Language book and Go by Example.

  1. Mini-project 01: uniq CLI utility by following the Build Your Own uniq Tool coding challenge. Here's the source code.

  2. Mini-project 02: Writing An Interpreter in Go. Following the book to build an interpreter for Monkey programming language. Chapter 01 - Lexer, done. Source Code - MahendraDani/monkey.

I am learning Go with a project-based learning approach. I learn a few constructs of the language, then try to build mini-projects that force me to use them, plus learn a few on the go, so I retain as well as apply the skills.

The notes and learnings are available at MahendraDani/gobyexample.

Reading List

  1. Optimism Shapes Reality. Honestly, I'll have to re-read this again to really understand. It's related to how to work fast at startups and what matters most - optimism.

  2. Chain of Thought Monitorability: A New and Fragile Opportunity for AI Safety. This paper proposes how CoT can be used to monitor the reasonining process of AI agents. Read my notes here.

  3. Putting the "You" in CPU. A series of 7 articles, which explains what is a CPU, what are processes, system calls, threads, memory management using paging with practical source code examples from Linux Kernel to back the theory. A must read for everyone who is curious to know how their computer works.

  4. Process and Threads. I read this after finishing Putting the "You" in CPU, and this article exactly feels like a summary of the series. A good article with examples of how concepts of processes and threads are used in different database systems and it builds up straight from "What is a CPU?".

  5. The Three Elements of Good Life. Needs to be read again.

  6. Rich Dad Poor Dad. Finished the first chapter this week. I fully agree with the point that we are not taught financial education in school. The writing in the form of story of the author and his friends doesn't make me feel it is a self-help book.

Quotes

  1. Four-level page tables(via).

Most Linux users probably have a sufficiently interesting life that they spend little time imagining how page tables are represented in the kernel.

  1. Rich Dad Poor Dad.

It's fear that keeps most people working at a job: the fear of not paying their bills, the fear of being fired, and the fear of not having enough money, and the fear of starting over. That's the price of studying to learn a profession or trade, and then working for money. Most people become a slave to money - and then get angry at their boss - Page 41.

And

People's lives are forever controlled by two emotions: fear and greed. Offer them more money and they continue the cycle by increasing their spending. This is what I call Rat Race - Page 48.