What Am I Doing Nowadays

After finishing college, I have lots of free time till I join Google. So I have decided to explore and strengthen my knowledge of Distributed Systems. I am currently reading the following books:

  1. Distributed Systems for fun and profit - Completed this book. The book is very well structured. Though the concepts are not described in depth, the author has mentioned the references/papers for them which can be referred to get the complete understanding of the concepts. I am yet to go through the references for CRDTs and CALM theorem.
  2. Introduction to Reliable and Secure Distributed Programming - Completed first 4 chapters. Planning to implement the algorithms mentioned in the book for better understanding. Github repository of the implementation: link.
  3. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems - Completed couple of chapters. I have a hard copy of this book. This book maintains a very good balance between theory, applications and design of distributed systems. So I will definitely try to finish reading this book.
  4. Twitter, Reddit, HighScalability.com - I check Twitter 3-4 times daily, I follow people/pages who tweet mostly about topics related to Computer Science (mainly Distributed Systems, Machine Learning) and via this, I get the latest news, updates and research papers in those fields. I read posts from ‘All Time Favorites’, ‘Real Life Architectures’ in highscalability.com. Sadly the author has “Gone fishing”, so there are no new posts lately.

Yet to be started/read later

  1. Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services - Yet to be started. The contents of this book looks interesting and I can’t wait to start reading it! Given I already have a lot on my plate, I will start it as soon as I am done with Introduction to Reliable and Secure Distributed Programming.
  2. Kubernetes: Up and Running: Dive Into the Future of Infrastructure - Kubernetes is a container-orchestration system for automatic deployment, scalable and management of containized applications. It is currently the big thing in open source community and development (or deployment) of distributed systems.
  3. Programming Distributed Computing Systems, Foundational Approach - Completed first 2 chapters. Next few chapters include Pi Calculus, Actors, Join Calculus and other models of computation. I highly doubt whether I will be reading this book further, as this primarily concentrates of models of computation and distributed programming languages, which are currently not my priority. But I will surely be reading this in the near future.

Also working on my personal site (Which is this!). Source code here and progress document here.