Skip to content

Instantly share code, notes, and snippets.

@kunagpal
Created March 30, 2025 11:56
Show Gist options
  • Save kunagpal/2a8f8fd1c6f52552b3e30a844007111d to your computer and use it in GitHub Desktop.
Save kunagpal/2a8f8fd1c6f52552b3e30a844007111d to your computer and use it in GitHub Desktop.
Food for the mind

Must-reads

Title Author Key takeaways
The 7 habits of highly effective people Stephen R. Covey Understanding the foundations of interpersonal communication.
Verbal Judo George J. Thompson People may or may not remember what you said or did, but they'll never forget how you made them feel.

Advanced

Title Author Key takeaways
Difficult conversations Douglas Stone, Sheila Heen
Key takeaways
* True conflict > false harmony, you can't resolve a harmony.

* Playing the blame game forces the other side to become defensive.

* Forcing opinions onto others pushes them into a corner, destroying any change at reconciliation.

* Logic isn't always the best starting point for conversations, people aren't always rational.

* Listen to the other person first, so they will reciprocate in kind. Don't assume you know someone's intentions beforehand.
Radical Candor Kim Scott
Key takeaways
* Fear of delivering critique does more long-term harm than good.

* Personalized, regular feedback is crucial to an environment for long-term team success.

* Sandwiching critical feedback between praise diminishes it's effect and makes the praise sound fake.

* A healthy team has room for disagreement, freedom to only agree isn't exactly freedom.

* Effective praise is timely and recognizes specific traits, behaviours, or actions to ensure continuity Vague praise is lazy and insincere.

* Effective critique separates the person from the problem, making it easier for the recipient to accept and assimilate the feedback in time.
Thanks for the feedback Douglas Stone, Sheila Heen
Key takeaways
* Useful feedback balances between acknowledgement and pointers for growth.

* In the long-run, it's exhausting to be with someone unwilling to introspect.

* Feedback comes in 3 flavours: Appreciation, Coaching, and Benchmarking.

* Genuine appreciation points to specifics. Generic prasies fall flat quickly.

* The fastest way to grow is to spend time with the people/situations/problems you have the hardest time with.

* Foresight ensures that short-term gain translates to long-term gains.

Must-reads

Title Author Key takeaways
Atomic Habits James Clear Making small adjustments at a time to make good habits visible, appealing, and long lasting.
Essentialism: The disciplined pursuit of less Greg Mckeown
Key takeaways
* Being busy is not the same as being productive.

* If you don’t prioritize your time, someone else will.

* If you’re too busy to even think about your work, your too busy overall.
How we learn Benedict Carey Don't practice until you get it right the first time, practice until you can't get it wrong.

Advanced

Title Author Key takeaways
Give and Take Adam Grant Tuning a balance between giving (assisting others) and taking (returns for oneself) without burning out
Leadership and Self deception Recognizing how becoming too inwardly focused destroys interpersonal relations, and learning how to break out of this state.
The happiness advantage Shawn Achor
Key takeaways
* Contrary to popular opinion, happiness is an important pre-requisite to success, and not just it’s result.

* Efforts to diminish/ignore undesirable points leaves us with just the average, missing out on chances for genuine improvement.

* Socially isolating in times of crisis decreases the chances of making it out on top.

* People who’ve found meaning and purpose in their work have larger chances of long term success, and are less likely to be deterred.

* Focusing merely on what is missing/imperfect, or negative breeds a sense of despair that makes work an uphill battle.

* The simple act of showing gratitude for all the good things is a counterweight to despair.
The obstacle is the way Ryan Holiday
Key takeaways
* Sensitivity to negative stimuli has been evolutionarily essential to survival, so we’re more receptive to negative signals.

* The above often leads us to blowing difficulties out of proportion.

* Instead, a more effective (and long lasting) strategy is to step back, distance yourself from the problem.

* The above makes it easier to find ways to turn the obstacle on itself, instead of whining in a corner about problems.
What got you here won't get you there Marshall Goldsmith
Key takeaways
* Don’t win the battle and lose the war.

* Knowing what to stop doing is as important as knowing what to do to grow.

* Zooming out and focusing on broader goals beyond one’s immediate interests is a prerequisite for growth.

* Feedback of any kind just tells you that change is needed, and not necessarily how to change.
Your brain at work David Rock
Key takeaways
* The fear of loss far outweighs the joy of an equivalent gain.

* People often work long and hard to remain on the “popular side” of a situation.

* Important traits to watch out for are: Status, Certainty, Autonomy, Relatability, Fairness.

* Changing someone else’s thinking is the hardest thing in the world.

* People love learning, but they hate being taught.

* Material rewards are only useful sparingly, they provide diminishing returns in excess.

Must-reads

Title Author Key takeaways
Extreme Ownership Jocko Willink, Leif Babin Building teams for long-lasting success and efficacy.
Multipliers Liz Wiseman, Greg Mckeown
Key takeaways
* A leader's job is to enable others to do more of the same instead of doing all the work themselves.

* Multipliers go beyond tapping into team intelligence, they stretch, challenge, and enhance it.

* Providing a starting point without sharing the complete solution is key to developing thinking in others.

* Debate a decision without settling it, instead of settling a decision without debating it.

* Holding people accountable for their actions/decisions encourages them to make sound choices.

* New(er) managers must stifle the urge to solve all problems and answer all questions to incentivize team growth.
The five dysfunctions of a team Patrick M. Lencioni Internal factors that keep teams from rising to their true potential, and how to keep tham at bay.
Turn the ship around! L. David Marquet Top down leadership does not scale, a true measure of a team is how well it performs without a leader driving excellence.
97 things every Engineering Manager should know Camille Fournier
Key takeaways
* Give people a little more freedom than they're comfortable with.

* Overcommunication is underrated.

* Don't elevate the means above the end.

* Squash bugs and inefficiencies, not ideas, dreams, or opinions.

* Friends are ephemeral, foes are eternal.

* Fear makes teams act unpredictably.

* Don't assume serenity due to a lack of complaints.

Advanced

Title Author Key takeaways
Creativity, Inc. Amy Wallace, Ed Catmull
Key takeaways
* Good ideas can't succeed without support.

* Taking responsbility doesn't require permission.

* Mediocre teams screw up good ideas, great teams fix/replace bad ideas.

* Ideas come from people, so getting the right people together in the right environment is crucial.

* Detaching the feeling of shame from failure is critical for creativity to flourish.

* Excessive focus on short-term goals short circuits long-term planning/thinking needed to develop teams.

* Secrecy by default sends a sign that people are untrustworthy.

* Leadership is meant to facilitate recovery, as much as preventing risk.

* Improving a process is only helpful if it improves overall results.

* Bureaucracies are a result of ad-hoc rule layering without due consideration of the interactions between rules.

* Sticking to familiarity is the best way to miss out on unexpected innovation.

* Groups are more conservative than the sum of their parts. Moving a group therefore takes more energy, even when individuals are on board.
Switch: How to change things when change is hard Chip Heath, Dan Heath
Key takeaways
* Effecting change on any level doesn't require authority or gargantuan resources.

* It's important to start by recognizing what is working in a given situation, and then working to magnify it.

* Responding positively to the initial improvement steps sustains momentum.

* Changing anything requires enthusiasm as much as reason, so appealing to both: emotion and reason is key.

* Providing a glimpse of the destination does wonders to push people in the right direction.
The infinite game Simon Sinek
Key takeaways
* In the game of business,there are two modes: Finite and Infinite, focused on short and long-term gains respectively.

* There is no permanent residence for "best", there is only continuous "better", day by day.

* The order in which people present/reveal information often holds clues to their intent and preferences.

* True motivation comes from a sense of belonging and shared purpose, more money stops being effective after a certain point.

* Banking completely on systems and more processes insteead of understanding people's circumstances is a sign of lazy leadership.
The Leadership Challenge James M. Kouzes
Key takeaways
* Trust requires an understanding of each other's values and desires.

* Helping the team find in daily work doesn't hurt.

* Belief in the messenger enhances belief in the message.

* How you spend your time is a certain indicator of what is most important to you.

* When in a position of leadership, assume everything you say is broadcasted through a megaphone, everything you write is broadcast in realtime to your entire company, and every move you make is being examined under a microscope.

* What feels rewarding (and not just rewarded) is what gets done.

* Never test the depth of water with both feet!

* Recurring mistakes don't result in learning.

* Giving short-term power away makes you more powerful in the long-run.

* Freedom is meaningless without the ability to make controlled mistakes and disagree.

* The leader of the past tells, the leader of the future asks.
The mythical Man-Month Frederick P. Brooks, Jr.
Key takeaways
* Communication between people collaborating on a software project is the most complex part of the system.

* Adding more people to a late-running project often decreases productivity.

* Software systems become delayed one day at a time.

* Focus on technical proficiency, results and productivity will follow.

* A leader's responsibility is to keep all hands on the same mental model to avoid a fracture.

Must-reads

Title Author Key takeaways
Building Microservices Sam Newman
Key takeaways
* Deciding how and where to adopt microservices.

* What it takes to work effectively with microservices (anti-patterns, known pitfalls, and the like).

* The role of a Platform team in making microservices effective.
Clean Code Robert C Martin Small details matter.
How to be a Programmer Robert L. Read Over time, the most difficult programming problem to be solved isn't necessarily technical
Release It! Micheal T. Nygard
Key takeaways
* Paying attention post-launch is as important during design and implementation.

* Most systems spend much more time in production than in development.
System Design Interview Alex Xu Practical examples of recurring system design problems, and how they can be solved.
The Phoenix Project Gene Kim, Jez Humble Keeping chaos at bay, one step at a time.
You don't know JS Kyle Simpson See title!

Advanced

Title Author Key takeaways
Algorithms to live by Brian Christian, Tom Griffiths
Key takeaways
* The relevance of algorithms in daily life.

* Humans can learn a thing or two from computers.

* Throwing in more data and constraints doesn't necessarily make a problem easier.

* It's crucial to recognize when a solution is good enough.
Clean Architecture Robert C. Martin
Key takeaways
* Knowing when, where, and how to draw boundaries between systems.

* Critically extrapolating the effects of present-day decisions into the future.

* Avoiding being swept up by recurring fads and treating changes by their principles.
Infrastructure as Code Keif Morris The first step to Platform as a product!
Software architect's handbook Joseph Ingeno
Key takeaways
* Just as is the case for code, architecture should be easy to change and reusable too.

* Any architecture isn’t just a system representation decision, it is also a conscious set of constraints and implementation choices (a forcing function).

* Contrary to popular belief, not all of a Software Architect’s work is purely technical. For example, mentoring and leading others to become better.

* Becoming (and remaining) a successful architect requires a desire to try out new things to keep skills on a razor’s edge.
Technology Strategy Patterns Even Hewitt
Key takeaways
* In most companies, the roles that end up being valued more reflect what members of upper management used to do.

* Deep technical details are far more interesting to the presenter/author than the intended audience. Knowing where to draw a line is crucial for success.

* There are no perfect decisions, only tradeoffs. As such, we’re only trading bad problems for more preferable ones instead of truly solving them.

* Data + Analysis = Insight.

* If no one is disagreeing with what you have to say, you’re probably not saying anything substantial.

* Having any central cross-functional teams stuck in a gatekeeping mentality quickly leads to the team focusing just locally instead of responding to what the broader organization needs. This leads such teams to falsely believe that their process runs the world.

* A culture of individual heroics leads to daily amazing feats going unnoticed, which breeds alienation of people who’ve stepped up to save the day.
The DevOps handbook Gene Kim, Jez Humble Building infrastructure systems that can be treated like cattle instead of pets.
The Software Architect Elevator Gregor Hophe
Key takeaways
* Being comfortable with ambiguity is an essential software architect trait.

* Therefore, the contribution of an architect is to making sense of the above ambiguity via decisions.

* In many cases, people with information don’t have decision making power and vice versa. A successful architect must learn to bridge that gap.

* For any company, technology isn’t the centre of all attention, it is a means to an end.

* Therefore, any technology effort needs to be counterbalanced by knowing how it contributes back to the organization’s success.

* Designing for flexibility and ease of changes is preferable to hoping for a perfect decision on the first try.

Must-reads

Title Author Key takeaways
Shape Up Ryan Singer Thinking about incremental software changes through the lens of what users want most, and why
Start with Why Simon Sinek Viewing an idea in terms of it's fundamentals instead of surface representations.
Thinking in systems Donella H Meadows Breaking complex situations down into atomic components to better understand their interactions and behaviour.
Upstream Dan Heath
Key takeaways
* Reacting to problems might feel productive, but it overlooks the possibility of preventing problems at the root.

* Reactionary handling is tempting as it's easier to measure, but it does not scale.

* It's difficult to measure or realize the true value of work that never had to be done due to upstream fixes.

* Continuous reactive handling is a symptom of over-narrowed focus, usually due to constant juggling between shifting priorities.

* Reactive efforts succeed by fixing bad situations, upstream efforts succeed by preventing bad situations.

* Not every problem must be solved, some are better off eradicated for good.

Advanced

Title Author Key takeaways
Decisive: How to make better choices in life and work Chip Heath, Dan Heath
Key takeaways
* Any analysis is useful only if it can be used in decision making.

* Any decision made without opposition should raise red flags. Be on the lookout for contrary evidence.

* Decisions that resolve to binary choices indicate over-narrow scoping.

* Suggesting alternatives is more productive than merely complaining about problems.

* Arguing in favour of an opposing position is a surprising way to resolve conflicts.
Measure what matters John Doerr Moving away from vanity numbers and arriving at real usable metrics for teams and organizations
Mental Models Peter Hollins
Key takeaways
* Reversible actions are underrated.

* One good test > a thousand opinions.

* Dealing with ambiguity becomes easier by first identifying what to avoid.

* Recognize personal weaknesses and plan around them instead of fighting them.

* Thinking about and assessing unknowns is more important than knowing facts.

* Work expands to fill time available for completion: working without deadlines never ends well.
Predictably Irrational Dan Ariely
Key takeaways
* Contrary to popular opinion, people are far from rational.

* This also means that people often don't know what they want until they've seen it.

8 As a result, people tend to (incorrectly) oversimplify comparisons to ease decision make.

* Being offered something for free makes us disregard potential downsides.

* Social norms are much more powerful and effective in shaping behaviour over rewards. The collision between a reward and a social norm destroys the latter.

* People are much more sensitive to potential loss than to potential gain, a byproduct of evolution and the survial drive.
Sprint Jake Knapp, John Zeratsky
Key takeaways
* The right combination of time constraints and big challenges bring out the best in us.

* The longer we work on something, the more we get attached to it. Don't prototype anything you're unwilling to discard.

* Test new ideas within a week as follows:

Monday: Understand problem size + scope.

Tuesday: Devise possible appraoches.

Wednesday: Shortlist approach

Thursday: Implement prototype with prior information + decisions.

Friday: Demo prototype with the intent to gain feedback.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment