This page contains summaries of the books I have read. This page will constantly update as I read more, so bookmark it if you want to check back in a few months.
March 6, 2017
Being Mortal
While medical science has given us the ability to extend life, it does not ask – or answer – the question of if that extended life still has meaning. I read this book last year, but never got around to summarizing my notes. It is written by Dr. Atul Gawande, the author of “The Checklist Manifesto”. In this book, Dr. Gawande calls for change in the way medical professionals deal with illness and final stages of a patient’s life.
March 9, 2017
Hit Refresh
The son of an Indian Civil servant studies hard, gets an engineering degree, immigrates to the United States, and makes it in tech. But wait, there is more to it. Hit Refresh is less about the personal life of Satya and more about the amazing transformation happening inside Microsoft. This is my informal summary of Hit Refresh, an autobiography of Satya Nadella.
January 10, 2018
Age of Absurdity
I usually don’t read satire, but so far the best one has been “The Age of Absurdity” by Michael Foley, and it was one of the best books I read in 2017. It critiques the eccentricities of modern life, revealing some rather uncomfortable truths. I have tried to summarize the book to the best of my understanding, but it goes much deeper than my naive first impressions.
January 25, 2018
The Google Resume
While preparing for the Microsoft and CityView interviews, I did a lot of meta reading on interviews and resume building. I came across a few really good resources such as The Google Resume from Gayle Laakmann McDowell. I also read a bunch of blog posts which I have grouped in this same post. 
February 3, 2018
Six Easy Pieces
A really good introductory book to big ideas in Physics, by Richard Feynman. It is very approachable, and can be read by a high-school student as well as someone doing a PhD. He explains some really advanced concepts by relating them to everyday objects and events in life. The book literally changes the way you look at the world.
April 13, 2018
Thinking in Systems
Since reading Meditations by Marcus Aurelius, I had yet to come across a book with such a high signal to noise ratio. Just finished reading Thinking in Systems by Donella Meadows, and this fits the bill. I had to pause, think and ponder after reading each paragraph in order not to miss the profound underlying concepts. Very easy to read, this is one of those books that changes how you look at the world.
June 4, 2018
After procrastinating for years due to its sheer size, I have finally picked up and started reading DDD. This is a must-read for developers of object-oriented software working on a complex domain. I found myself nodding on almost every sentence in this book, relating so much to my work at CityView, which has a super-complex domain of municipal software.
October 30, 2018
Bad Blood
In October, I dove deep into theme reading on scandals. Spent the cold nights binge-reading three wonderful books on the major frauds in three different industries. The biggest Ponzie scheme ever, the biggest medical fraud in Silicon Valley, and the collapse of Enron.
December 21, 2018
Young Money
For years, thousands of graduates of the world’s most prestigious colleges and universities have gone to Wall Street, most only halfway knowing what they’re getting themselves into. This is the book that exposes the truth. 
January 15, 2019
As a bibliophile, 2018 was a great year. I read 70 books and skimmed through many more, averaging at least five books per month. Here is a list of all the books I read last year. Here are all the books I read in 2018. 
March 27, 2019
What is the jobs-to-be-done?
  • A job is essentially the progress that a person is trying to make in a particular circumstance. 
  • When we buy a product, we essentially hire something to get a job done. 
  • Deeply understanding your customers' struggle for progress and then create the right solution and experiences to ensure you solve your their jobs well, every time. 
Questions to ask:
  • What progress is that person trying to achieve?
  • What are the circumstances of the struggle? Who, when, where, while doing what?
  • What obstacles are getting in the way of the person trying to make that progress?
  • What does success mean for them? With what trade-offs?
  • What causes that person to use a particular product and service?
How to identify jobs?
  • If you observe people employing a workaround or "compensating behavior" to get a job done, pay close attention. It's usually a clue that you have stumbled on to a high-potential innovation opportunity. 
  • What are the important, unsatisfied jobs in your own life, and the lives of those closest to you? 
  • Observe your customers using your products. In what circumstances do they use them? What are the functional and emotional dimensions of the progress they are trying to make? Are they using them in unexpected ways? 
How to trigger a change?
  • Identify the forces that compel change to a new solution. What circumstances create these forces? How can you improve them?
  • Identify the forces that oppose any change. What circumstances are creating these forces? How can you eliminate/reduce them?
How to get hired for a job?
  • New products succeed not because of the features and functionality they offer but because of the experiences they enable. 
  • Figure out what do you need to design, develop, and deliver in your product offering so that it solves the consumer's job well? 
The Goal
  • To develop your brand, one that customers automatically associate with the successful resolution of their most important jobs. 
  • A successful brand provides a clear guide to the outside world as to what your company represents
Avoid This
  • Surface Growth: Trying to create many products for many customers - and losing focus on the original job that brought you success in the first place. Hurts your brand. 
  • As you grow up, it's very common to lose focus on the job that sparked your existence in the first place. You start to act as if your business is defined by the products and services you sell, instead of the jobs that you solve. 
November 16, 2019
Well, not really. But it was the old title of Chad Fowler’s excellent book I am reading, which offers solid career advice for programmers. If you are a programmer, and want to keep your job and not get outsourced, you’d be doing yourself a favor by reading this book.

November 29, 2019
This is my collection of highlights and notes from Gerald Weinberg's Are Your Lights On? It's not a summary, but rather a copy + paste of the text that resonated with me most. 
January 1, 2020
  1. It doesn't have to be crazy at work
  2. Autobiography of Benjamin Franklin
  3. The Subtle Art of Not Giving a F**k
  4. Meditations
  5. Competing Against Luck
  6. Buffett's biography
  7. Brain Book
  8. Skin in the Game
  9. The Everything Store
  10. Peak
  11. The Little Book of Talent
  12. Risk Savvy
  13. The 4-Hour Workweek
  14. Wise Guy
  15. Enchantment by Guy Kawasaki
  16. Mysterious affair at Styles
  17. Manual by Epictetus
  18. Warren Buffett Speaks
  19. Disrupted
  20. Badass: Making Users Awesome
  21. I will teach you to be rich
  22. Purple Cow
  23. Crush It!
  24. How to Fail at Everything and Still Win Big
  25. Chop wood, carry water
  26. Food Rules
  27. The Art of Worldly Wisdom
  28. Refactoring
  29. Code Complete

March 5, 2020
In a well-maintained system, it might take a while to figure out how to make a change, but once you do, the change is usually easy and you feel much more comfortable with the system. 

In a legacy system, it can take a long time to figure out what to do, and the change is difficult also. You might also feel like you haven’t learned much beyond the narrow understanding you had to acquire to make the change. 
May 15, 2020
Life will follow the path it began to take, and will neither reverse nor check its course. It will cause no commotion to remind you of its swiftness, but glide on quietly. It will not lengthen itself for a king’s command or a people’s favour. As it started out on its first day, so it will run on, nowhere pausing or turning aside. What will be the outcome? You have been preoccupied while life hastens on. Meanwhile death will arrive, and you have no choice in making yourself available for that.
If there is one book that has had the biggest influence on me as a professional software developer, The Pragmatic Programmer would be it. I read the original book many years ago, and it changed how I view software development. I recently re-read the newer version of the book, which was published last year to celebrate its 20th anniversary. Here is a complete summary of the book. It’s not a detailed book review, but a collection of passages from the book that resonated with me the most.
The role of software testing is to provide information about the quality of a product. In his book Perfect Software and Other Illusions About Testing, Gerald Weinberg, who is one of my favourite writers, lists a few reasons why developers, testers, and managers avoid testing the product that they are ultimately responsible for. 
January 3, 2021
Jerry Weinberg's unique take on how to find ideas for writing. What's funny, is that all the advice for writers in this book is equally applicable to software developers. 

Just replace writing with programming.