what i learned / non fiction


I wish wrote brief reviews of the books I had read, atleast as future references for me or what I learned from it. Atleast one solace for me is this - "Reading and experience train your model of the world. And even if you forget the experience or what you read, its effect on your model of the world persists. Your mind is like a compiled program you've lost the source of. It works, but you don't know why." So what I learned would have got compiled into my run time and even I don't remember exactly where I picked up something, it would have made a permanent wiring change anyway which is what I am today. 

Here goes a brief of some of the books I read that helped with my work in some or other way -  

  1. The Mythical Man-Month: Essays on Software Engineering – Fred Brook
    1. One of the first books I read on software engineering. Classic observations that adding people in delayed projects will delay it further etc came from this book. It will help to think about the practices we follow in our projects and gives perspectives to use in standard conversations we get into with clients regularly about various issues about estimation, project management, people etc.
  2. The design of everyday things – Donald Norman
    1. Classic book on design – will be helpful to think about importance of design in everything we use. Using the knowledge in the head (what the users would know already) and in the world (common practices, universal laws, natural expectations) to design something optimal, human centered design, designing for errors are some learnings from this.
  3. Psychology of Computer of Programming – Gerald Weinberg
    1. I got to know psychology is even something to consider in the context of my work from this. Hawthorne effect (being observed itself improves performance), qualities of good leaders of software projects, realization that learning how to learn and figuring out more ways to learn than formal training and experience are some things that I picked up from here. Also realized that being a true professional is an individual responsibility, not the responsibility of the company or manager that we work for.  
  4. Making Things Happen : Mastering Project Management – Scott Berkun
    1. Many of us go into project and program management without any formal training on it, it is supposed to have come through on the job learning and learning from our own managers. This book helps to evaluate the practices we follow to be compared with the best and see what tweaks would help us more or changes might need to make for better results.
  5. Extreme Programming Explained – Kent Beck
    1. Way before knowing what agile methodology is, I read this book which changed the perspective on other ways to approach software projects. I attempted some of the basic practices of XP like pair programming in my project which was a waterfall one when I was a module lead after reading this book. First heard about the concept of Continuous Integration from this.
  6. Drive: Surprising Truth about what motivates us – Dan Pink
    1. I learned from this book that simple carrot/stick approach of motivation works to an extent beyond which only autonomy, mastery of work and purpose really drives people.
  7. Zen and the Art of Motorcycle Maintenance – Robert Pirsig
    1. This is philosophy book, but beautifully written. Reason why this could be interesting is the know a different perspective of Quality – quality that is inherent in something that is beautiful, graceful – when we see something of high quality, we know it has a unique quality, but can’t name why exactly. We try to measure quality in code as no blockers, less defects, but quality has many more elements beyond it – that sense of quality in every aspect of what we do was something new to think about. It has also some perspectives on different modes of our understanding of the world which is a good mental model.
  8. The Seven Habits of Highly Effective People – Stephen Covey
    1. This book gave the basic idea that we do tasks that are Urgent/Not Urgent, Important / Not Important and if we don’t do more of Not Urgent / Important (long term, strategic) items, what we do will not be sustainable and eventually we will run into problems.
  9. Outliers – Malcolm Galdwell
    1. The thumbrule that it takes 10000 hours to achieve mastery in something – so it basically takes deliberate practice to become good at anything we do.
  10. Innovation and Entrepreneurship – Peter Drucker
    1. I learned the basic idea of entrepreneurship itself through this book. Examples of various kinds of ideas (from idea behind selling a razer to selling airplanes and how insurance and credit changed industries etc), sources to identify an innovative opportunity etc were interesting.
  11. Made to Stick: Why Some Ideas Survive and Others Die – Dan and Chip Heath
    1. I believe we end up pitching different kind of ideas to our customers, teams and management – for our projects, new ways of doing things, building business case for as basic as getting someone a promotion to getting budget or why we need a new project etc. How to pitch such ideas in an impactful way was a revelation. Formula for SUCCESS of an idea – succinct, unexpected / surprise, concrete, credible, emotion and stories – is a good model to adopt.
  12. Don’t make me think : A common sense approach to web usability – Steve Krug
    1. Usability of the software we work on is not just designers job – if we have a good understanding of those concepts, it will help us in building more intuitive applications and suggest better solutions.
  13. Secrets of Consulting: A Guide to Giving and Getting Advice Successfully – Gerald Weinberg
    1. We are all into consulting which we don’t realize – our customers are looking to us for giving them advice on what to do. This book had a lot of practical suggestions on how to do it effectively. One basic thing I learned is that when we are confused, frustrated or any of those emotions, stating it directly saying “I am frustrated with this, can you help me understand this better” might lead to a solution than beating around the bush.
  14. Peopleware: Productive Projects and Teams – DeMarco and Lister
    1. How to create a well jelled team (a term I picked up from this book) is something to be learned from this book. I learned about furniture police, elite teams, peter principle, parkinson’s law etc from this. Must read for anyone whether or not they manage people eventually – it helps to think about working as part of a productive team.
  15. Thinking Fast and Slow – Daniel Kahneman
    1. Truly an eye opener. Fundamentally about two systems of our thinking – intuitive, fast thinking which we need for many of day to day tasks vs deliberate, analytical, slow thinking to find solution to a new problem. When to use what, how do we identify biases that creeps in because of a particular mode of thinking, how to overcome etc. It gave me understanding of the decision making we do during appraisal rating to voting to doing day to day chores.
  16. How to Win Friends & Influence People – Dale Carnegie.
    1. For people like me who need to put conscious effort in navigating social circumstances compared to the natural extroverts, insights from this book helps – atleast to act like an extrovert when needed.

No comments:

Post a Comment

weekly notes - wk 17 / 2024

  1. I took a break from work (mostly) for a week. I had felt exhausted, out of energy and was wound up so much that I was easily triggered....