Reading
Things I have read and would hand to someone else. One line each on why.
Software design and architecture
-
A Philosophy of Software Design John Ousterhout
Treats complexity as the one enemy, and everything else in design as a move against it.
-
Design It! Michael Keeling
Architect is a way of thinking rather than a title. Whoever makes the structural calls is doing the job.
-
Designing Data-Intensive Applications Martin Kleppmann
Frames every data system around reliability, scalability and maintainability, then shows what each one costs.
-
Documenting Software Architectures: Views and Beyond Bass, Clements, Bachmann, Garlan, Ivers and Little
Decides what documentation a team should produce, for whom, and how much is enough.
-
Effective TypeScript Dan Vanderkam
Sixty-two specific habits, starting with what `any` quietly switches off.
-
Fundamentals of Software Architecture Mark Richards and Neal Ford
Everything in software is a trade-off. If a change looks like a pure win, you have not found the cost yet.
-
Learning Domain-Driven Design Vlad Khononov
The code should use the exact words the business uses, and the book shows what it costs when it does not.
-
Refactoring: Improving the Design of Existing Code Martin Fowler, 1999
Refactoring is a disciplined technique with a catalogue and a definition, not a word for cleanup.
-
Software Architecture for Developers, Vol 2: Visualise, Document and Explore Your Software Architecture Simon Brown
Where the C4 model comes from. Ask a builder for a design and you get layered plans; ask a developer and you get a shrug.
-
Software Architecture: The Hard Parts Neal Ford, Mark Richards, Pramod Sadalage and Zhamak Dehghani
No distributed design is simply best. The goal is the least-worst set of trade-offs.
-
The Pragmatic Programmer: From Journeyman to Master Andrew Hunt and David Thomas, 1999
Take responsibility and provide options rather than excuses. The rest of the craft follows from that.
-
Tidy First? Kent Beck
A change either alters behaviour or it does not, and mixing the two in one commit is the mistake.
-
UML Distilled Martin Fowler
UML as sketch rather than blueprint. Short, and honest about which parts you will never use.
-
Working Effectively with Legacy Code Michael C. Feathers
Two ways to change code exist. Edit and pray, or cover and modify. This is the book for the second.
-
You Don't Know JS Kyle Simpson
Goes to the bottom of the parts of JavaScript everyone else waves at.
Testing, reliability and security
-
A Practitioner's Guide to Software Test Design Lee Copeland, 2004
Testing compares what is with what ought to be, and the honest goal is managing risk rather than proving correctness.
-
Agile Testing: A Practical Guide for Testers and Agile Teams Lisa Crispin and Janet Gregory, 2009
What a team does about quality when there is no separate QA phase to hide behind.
-
Alice and Bob Learn Application Security Tanya Janca
Never trust anything outside your own code: every input needs its type, size and format checked before use.
-
Growing Object-Oriented Software, Guided by Tests Steve Freeman and Nat Pryce
Where the outside-in, test-driven style of design comes from, argued in full.
-
How Google Tests Software James A. Whittaker, Jason Arbon and Jeff Carollo, 2012
What happens to quality when the engineer who writes a feature owns its testing.
-
Perfect Software and Other Illusions About Testing Gerald M. Weinberg, 2011
Testing buys information for a decision. It does not buy quality, and it never buys certainty.
-
Release It! Michael T. Nygard
Any call over a network can block forever. The stability patterns here are how a system stops waiting.
-
Systems Performance: Enterprise and the Cloud Brendan Gregg
For any resource, ask three things. How busy is it, is work piling up behind it, and is it throwing errors.
-
Threat Modeling Adam Shostack
Four questions. What are you building, what can go wrong, what will you do about it, and did you do a good job.
-
Unit Testing: Principles, Practices, and Patterns Vladimir Khorikov
Judge every test by whether it lets you change the code safely, which rules out most of the ones people write.
Leadership and organisations
-
Debugging Teams Brian W. Fitzpatrick and Ben Collins-Sussman
You are not your code. The book repeats it until criticism of the work stops reading as an attack on the person.
-
Thanks for the Feedback Douglas Stone and Sheila Heen
Splits feedback into appreciation, coaching and evaluation, which explains most of the times it goes wrong.
-
The Engineering Executive's Primer Will Larson, 2024
You already have a strategy. The job is writing it down honestly enough that people can argue with it.
-
The Gervais Principle, Or The Office According to "The Office" Venkatesh Rao, Ribbonfarm, link
Reads The Office as a working theory of organisations, split into sociopaths, the clueless and losers.
-
The Hard Thing About Hard Things Ben Horowitz
There are no recipes for hard things. The hard part is never setting the goal.
-
The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change Camille Fournier
Management is a distinct skill rather than a reward for being a senior engineer.
-
The Staff Engineer's Path Tanya Reilly
What senior technical work looks like when the job stops being writing the code yourself.
-
Think Like a CTO Alan Williamson
Vision and execution together. What breaks engineers-turned-CTO is thinking in five-year blocks while today's systems still run.
Strategy and business
-
7 Powers: The Foundations of Business Strategy Hamilton Helmer
Names the seven conditions that let a business hold a lead instead of being copied flat.
-
Blue Ocean Strategy W. Chan Kim and Renée Mauborgne
How to create demand in uncontested space instead of fighting over the demand that already exists.
-
Good Strategy / Bad Strategy Richard Rumelt
A strategy is a diagnosis, a guiding policy and coherent action. Anything else is a goal with adjectives.
-
Inspired: How to Create Products Customers Love Marty Cagan
Valuable, usable, feasible. The product manager's one job is holding all three at once.
-
MAKE: The Bootstrapper's Handbook Pieter Levels
Solve your own daily pain, ship it in public, and let the audience come from the building.
-
Million Dollar Consulting Alan Weiss
Process expertise beats subject expertise, and the fee should follow the client's outcome rather than your hours.
-
Million Dollar Weekend Noah Kagan
Now, not how. If there is a version you can do in minutes, do it before you work out the whole plan.
-
Playing to Win: How Strategy Really Works A.G. Lafley and Roger L. Martin
Strategy is an integrated set of choices about where to play and how to win, rather than a plan or a vision.
-
The 33 Strategies of War Robert Greene
Far-sighted vision beating the reactive animal, worked through thirty-three historical cases.
-
The Almanack of Naval Ravikant Eric Jorgenson
Seek wealth rather than money or status. Wealth is assets that earn while you sleep.
-
The Art of War Sun Tzu, translated by Lionel Giles
Five constant factors decide the contest before it starts.
-
The Business of Expertise David C. Baker, 2017
Expertise flows from focus, and focus flows from positioning. The chain runs one way.
-
The Freelancer's Bible Sara Horowitz
Treats a client list as a portfolio with levels, which changes how you weigh any single one.
-
The Millionaire Fastlane MJ DeMarco
Three financial roadmaps with three different destinations, and most people never notice which one they are on.
-
The Minimalist Entrepreneur Sahil Lavingia
Profit is oxygen rather than the finish line. Aim to be profitable from day one.
Marketing and positioning
-
$100M Offers Alex Hormozi, 2021
How to build an offer nobody can price-compare, so you stop competing on being cheaper.
-
Building a StoryBrand Donald Miller, 2017
The customer is the hero and you are the guide. Brands that cast themselves as the hero lose.
-
Marketing Warfare Al Ries and Jack Trout
Treats marketing as a contest for position against competitors rather than a service to customers.
-
Obviously Awesome April Dunford
Positioning is the frame a customer uses to decide what you are, which makes it context rather than messaging.
-
The 1-Page Marketing Plan Allan Dib, 2018
A nine-square canvas covering before, during and after the sale, on one page.
-
The 22 Immutable Laws of Marketing Al Ries and Jack Trout
First beats better. The contest is for the mind, not the market.
-
The Copywriter's Handbook Robert W. Bly
A copywriter is a salesperson behind a keyboard rather than an artist.
-
The Mom Test Rob Fitzpatrick
Three rules for asking customer questions that nobody can lie to you about, including your mother.
-
The New Positioning Jack Trout with Steve Rivkin
The mind is the battleground, and it has five hard limits you cannot argue your way past.
-
The Referral Engine: Teaching Your Business to Market Itself John Jantsch, 2010
Referrals are a system rather than a personality trait, and almost nobody builds the system.
-
They Ask, You Answer Marcus Sheridan
Buyers decide before you ever speak, so answer the questions they are already searching for.
-
This Is Marketing: You Can't Be Seen Until You Learn to See Seth Godin, 2018
Marketing is change made by service rather than by shouting at more people.
Selling and persuasion
-
Influence: The Psychology of Persuasion Robert B. Cialdini
Six levers of compliance, plus a clear ethics line separating the people who use them from the people who exploit them.
-
Never Split the Difference: Negotiating as if Your Life Depended on It Chris Voss
Tactical empathy. Name the other side's feeling out loud and watch what it does to the room.
-
SPIN Selling Neil Rackham, 1988
Situation, problem, implication, need-payoff. The question order that separates big sales from small ones.
-
The Trusted Advisor David H. Maister, Charles H. Green and Robert M. Galford, 2000
Trustworthiness = (credibility + reliability + intimacy) / self-orientation. The denominator is the one people miss.
-
The Win Without Pitching Manifesto Blair Enns, 2010
Substitutes are the whole game. A client can ask you to work for free only because someone else will.
-
To Sell Is Human: The Surprising Truth About Moving Others Daniel H. Pink
One in nine US workers sells for a living, and the other eight do it anyway without the title.
People and relationships
-
Captivate: The Science of Succeeding with People Vanessa Van Edwards
Play the social position you actually hold rather than faking one, then work from there.
-
Give and Take Adam Grant, 2013
Giving first wins over a long enough horizon, and the book is honest about who it ruins in the short one.
-
How to Win Friends and Influence People Dale Carnegie, 1936
People run on feeling rather than logic, which is why criticism backfires so reliably.
-
How You Can Talk to Anyone in Every Situation Emma Sargent and Tim Fearon
Your belief sets your thoughts, and your thoughts set how the conversation goes before you open your mouth.
-
Never Eat Alone Keith Ferrazzi and Tahl Raz, 2005
Builds relationships as a practice rather than an emergency, with the mechanics written out.
-
The Art of Gathering: How We Meet and Why It Matters Priya Parker
A category is not a purpose. Naming the type of event tells you nothing about why anyone should come.
Writing
-
Draft No. 4 John McPhee
Structure comes out of the material rather than being laid on top of it.
-
Made to Stick Chip Heath and Dan Heath
The curse of knowledge, measured. Tappers thought listeners would name the song half the time; they got 2.5 percent.
-
Nobody Wants to Read Your Sh*t Steven Pressfield
Attention is a trade, not a gift. Your reader is busy and starts out bored.
-
On Writing Stephen King
Writing as telepathy, one mind moving a picture into another across time and distance.
-
On Writing Well William Zinsser
Writing is a transaction between two people, and what you sell is who you are rather than the topic.
-
Several Short Sentences About Writing Verlyn Klinkenborg
The sentence is the unit of composition, and your one real job is making them one at a time.
-
Storyworthy Matthew Dicks
Every good story is about one five-second moment when something inside a person changes for good.
-
Style: Lessons in Clarity and Grace Joseph M. Williams
Diagnoses an unclear sentence mechanically, so you can fix it rather than sense that it is wrong.
-
The Sense of Style: The Thinking Person's Guide to Writing in the 21st Century Steven Pinker
Classic style treats prose as a window onto something real, with the writer and reader as equals.
-
Wired for Story Lisa Cron
A story is not what happens. It is how what happens lands on someone trying to reach a hard goal.
-
Writing Tools: 55 Essential Strategies for Every Writer Roy Peter Clark, 2008
Tools rather than rules. You reach for one when you need it instead of obeying all fifty-five at once.
Design and visual thinking
-
100 Things Every Designer Needs to Know About People Susan M. Weinschenk
The brain builds a story rather than recording one, and this catalogues the gaps it fills in for you.
-
Atomic Design Brad Frost
The web is a connected system rather than a stack of pages, so count components rather than screens.
-
Don't Make Me Think, Revisited Steve Krug, 2014
People scan, satisfice and muddle through. Design for the guesser, not for the reader you imagined.
-
Inclusive Components Heydon Pickering
Reach for the real HTML element before ARIA. A native button already ships with everything you were about to rebuild.
-
Making and Breaking the Grid Timothy Samara
A grid is a decision made once so it does not have to be made again on every page.
-
Refactoring UI Adam Wathan and Steve Schoger
Hierarchy is most of what makes something look designed, and the book shows the moves.
-
Resonate: Present Visual Stories that Transform Audiences Nancy Duarte, 2010
The audience is the hero and the speaker is the mentor. Yoda, not Luke.
-
slide:ology Nancy Duarte
Separates the document from the teleprompter from the presentation, which is where most decks go wrong.
-
The Back of the Napkin Dan Roam
Look, see, imagine, show. A four-step process for solving a problem with a drawing.
-
The Design of Everyday Things Don Norman
The difference between what an object can do and what it tells you it can do, and why bad doors exist.
-
The Non-Designer's Design Book Robin Williams
Naming a problem is what gives you power over it. Four principles, named, then applied.
-
The Visual Display of Quantitative Information Edward R. Tufte
A lie detector and a quality bar for every chart you are asked to approve.
-
Thinking with Type Ellen Lupton, 2010
Typography is an interface rather than decoration.
Thinking and decisions
-
A Technique for Producing Ideas James Webb Young
A five-step method for having ideas on purpose, in about forty pages.
-
Decisive: How to Make Better Choices in Life and Work Chip Heath and Dan Heath
Four repeatable moves against the four biases that wreck a decision.
-
How to Solve It George Pólya
The four-phase method for attacking a problem you do not yet understand, from a mathematician.
-
Ideaflow: The Only Business Metric That Matters Jeremy Utley and Perry Klebahn
Write ten ideas every morning. Quality is explicitly not the point, and that is the point.
-
Six Thinking Hats Edward de Bono
Six modes of thinking, taken one at a time, so a meeting stops arguing in six directions at once.
-
The Scout Mindset: Why Some People See Things Clearly and Others Don't Julia Galef
Soldier mindset defends a position; scout mindset maps the ground. The difference is what you want to be true.
-
Thinkertoys: A Handbook of Creative-Thinking Techniques Michael Michalko
Frame the challenge as "in what ways might I", then run it through a shelf of named techniques.
Doing the work
-
Discipline Equals Freedom: Field Manual Jocko Willink
The thing that looks like a cage is the thing that lets you move.
-
Show Your Work! Austin Kleon
Scenius rather than lone genius. Share the process and the audience arrives before the masterpiece does.
-
The Pathless Path Paul Millerd
The default path is a script somebody else wrote. This is an honest account of leaving it.
-
The War of Art Steven Pressfield
Names the force that stops you starting, then treats beating it as a professional habit rather than a mood.