<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://allenkao.com/feed/all.xml</id>
    <title>ALLEN KAO - all</title>
    <updated>2026-04-05T00:00:00.000Z</updated>
    <generator>Feed for Node.js</generator>
    <author>
        <name>Allen Kao</name>
        <email>hushkao@gmail.com</email>
        <uri>https://allenkao.com/</uri>
    </author>
    <link rel="alternate" href="https://allenkao.com/feed/all.xml"/>
    <link rel="self" href="https://allenkao.com/feed/all.xml"/>
    <subtitle>Posts tagged with 'all'</subtitle>
    <logo>https://allenkao.com/favicon.png</logo>
    <icon>https://allenkao.com/favicon.png</icon>
    <rights>All rights reserved 2026, Allen Kao</rights>
    <entry>
        <title type="html"><![CDATA[Why This Blog Exists]]></title>
        <id>https://allenkao.com/posts/why-this-blog-exists</id>
        <link href="https://allenkao.com/posts/why-this-blog-exists"/>
        <updated>2026-03-29T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[A blog post changed my career in grad school. Now I'm building the blog I wish I'd started then.]]></summary>
        <content type="html"><![CDATA[<div class="tldr my-4 p-4 border-l-4 rounded-r border-te-camel bg-te-border/40 svelte-1f0iuj8"><p>A bioinformatics blog changed my career trajectory in grad school. Years later, I’m building the public learning journal I wish I’d started back then: a second brain and accountability system in one.</p></div> <h2 id="the-blog-post-that-started-it">The blog post that started it<a class="link-hover" aria-label="Link to section" href="#the-blog-post-that-started-it"><span class="icon icon-link"></span></a></h2> <p>Sometime during my graduate studies, I found Stephen Turner’s <em>Getting Genetics Done</em> blog. One post in particular rewired how I thought about staying current in a fast-moving field: <a href="https://gettinggeneticsdone.blogspot.com/2012/05/how-to-stay-current-in.html" rel="nofollow">How to Stay Current in Bioinformatics/Genomics</a>.</p> <p>I read it and added every resource he mentioned to my RSS reader that same afternoon. That one post kicked off my genomics and bioinformatics career in a way no lecture or textbook had. Someone working in the field took time to write down what they knew and share it openly, and that alone made the whole field feel reachable.</p> <p>Years later, Turner wrote about <a href="https://blog.stephenturner.us/p/learning-in-public" rel="nofollow">learning in public</a>, crediting Simon Willison’s idea of blogging as an accountability mechanism. Willison, with 25 years of experience, still writes TIL (“Today I Learned”) posts about things as basic as bash for-loops. Writing it down forces you to explain what you think you understand. The gap between “I get it” and “I can explain it clearly” is where the learning happens.</p> <figure><svg viewBox="0 0 740 500" xmlns="http://www.w3.org/2000/svg" style="width:100%;max-width:740px;margin:1.5rem auto;display:block;" role="img" aria-label="A circular feedback loop showing four stages of learning in public: Read and Explore feeds into Write and Explain, which reveals Gaps and Questions, which drives Deeper Reading, which feeds back into better writing. Each cycle compounds understanding."><defs><linearGradient id="lg1" x1="0" y1="0" x2="0" y2="1"><stop offset="0%" stop-color="#2e6b4f" stop-opacity="0.15"></stop><stop offset="100%" stop-color="#2e6b4f" stop-opacity="0.05"></stop></linearGradient><linearGradient id="lg2" x1="0" y1="0" x2="0" y2="1"><stop offset="0%" stop-color="#b8956a" stop-opacity="0.12"></stop><stop offset="100%" stop-color="#b8956a" stop-opacity="0.04"></stop></linearGradient></defs><circle cx="370" cy="250" r="170" fill="none" stroke="#b0b3b8" stroke-width="1" opacity="0.7"></circle><text x="370" y="246" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="14" fill="#8a8d93" font-style="italic" opacity="0.85">each cycle</text><text x="370" y="264" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="14" fill="#8a8d93" font-style="italic" opacity="0.85">compounds</text><rect x="270" y="48" width="200" height="56" rx="0" fill="white"></rect><rect x="440" y="222" width="200" height="56" rx="0" fill="white"></rect><rect x="270" y="396" width="200" height="56" rx="0" fill="white"></rect><rect x="100" y="222" width="200" height="56" rx="0" fill="white"></rect><rect x="270" y="48" width="200" height="56" rx="0" fill="url(#lg1)" stroke="#2e6b4f" stroke-width="1.5"></rect><text x="370" y="73" text-anchor="middle" font-family="SF Mono,Menlo,monospace" font-size="11" letter-spacing="0.08em" fill="#2e6b4f">READ &#x26; EXPLORE</text><text x="370" y="92" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#2e6b4f" opacity="0.7">books, papers, experiments</text><rect x="440" y="222" width="200" height="56" rx="0" fill="url(#lg2)" stroke="#b8956a" stroke-width="1.5"></rect><text x="540" y="247" text-anchor="middle" font-family="SF Mono,Menlo,monospace" font-size="11" letter-spacing="0.08em" fill="#b8956a">WRITE &#x26; EXPLAIN</text><text x="540" y="266" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#b8956a" opacity="0.7">posts, notes, diagrams</text><rect x="270" y="396" width="200" height="56" rx="0" fill="url(#lg2)" stroke="#b8956a" stroke-width="1.5"></rect><text x="370" y="421" text-anchor="middle" font-family="SF Mono,Menlo,monospace" font-size="11" letter-spacing="0.08em" fill="#b8956a">DISCOVER GAPS</text><text x="370" y="440" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#b8956a" opacity="0.7">confusion, open questions</text><rect x="100" y="222" width="200" height="56" rx="0" fill="url(#lg1)" stroke="#2e6b4f" stroke-width="1.5"></rect><text x="200" y="247" text-anchor="middle" font-family="SF Mono,Menlo,monospace" font-size="11" letter-spacing="0.08em" fill="#2e6b4f">READ DEEPER</text><text x="200" y="266" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#2e6b4f" opacity="0.7">targeted, better questions</text><text x="500" y="138" font-family="Inter,system-ui,sans-serif" font-size="16" fill="#b0b3b8" opacity="0.6" text-anchor="middle">↘</text><text x="500" y="375" font-family="Inter,system-ui,sans-serif" font-size="16" fill="#b0b3b8" opacity="0.6" text-anchor="middle">↙</text><text x="240" y="375" font-family="Inter,system-ui,sans-serif" font-size="16" fill="#b0b3b8" opacity="0.6" text-anchor="middle">↖</text><text x="240" y="138" font-family="Inter,system-ui,sans-serif" font-size="16" fill="#b0b3b8" opacity="0.6" text-anchor="middle">↗</text><text x="540" y="148" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" font-style="italic" opacity="0.7" text-anchor="start">forces clarity</text><text x="540" y="368" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" font-style="italic" opacity="0.7" text-anchor="start">reveals what you</text><text x="540" y="383" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" font-style="italic" opacity="0.7" text-anchor="start">don't know</text><text x="200" y="368" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" font-style="italic" opacity="0.7" text-anchor="end">focuses attention</text><text x="200" y="148" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" font-style="italic" opacity="0.7" text-anchor="end">sharpens questions</text></svg></figure> <div class="in-article-ad"><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-1251836334060830" data-ad-slot="3423675305"></ins></div><h2 id="building-the-system">Building the system<a class="link-hover" aria-label="Link to section" href="#building-the-system"><span class="icon icon-link"></span></a></h2> <p>Writing is the hard part of learning. I’ve started drafting explanations of things I thought I understood and realized halfway through that I’d been carrying a wrong mental model for years. You can’t wave your hands in a blog post. The draft sits there, exposing every gap.</p> <p>I’m also 37, which means my brain has started deleting things I read to make room for mortgage rates and knee pain. I used to hold an entire paper in my head for weeks. Now I forget what I read last Tuesday. Half this blog is a letter to my future self, who will need the help more than I’d like to admit.</p> <p>But a blog is chronological. Posts pile up. Six months later, even with the posts, I can’t remember what I wrote about multi-omics integration or where I left off with network pharmacology. I needed something structural alongside the timeline.</p> <p>That’s why I built a <a href="https://allenkao.com/wiki">wiki</a>, inspired by Andrej Karpathy’s <a href="https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f" rel="nofollow">LLM Wiki</a> concept: let an LLM handle the bookkeeping (cross-references, summaries, consistency checks) while you focus on curating sources and asking good questions. Every atomic concept gets its own page: “ADME determines whether a drug reaches its target.” “Negative feedback loops enable homeostasis.” One claim per page, with links to related concepts and source citations. The pages connect through typed relationships (<em>depends-on</em>, <em>enables</em>, <em>challenges</em>, <em>creates-tension</em>), forming a knowledge graph I can browse visually.</p> <p>The fields I’m working in (computational biology, AI, drug discovery) are converging fast. A concept from systems biology connects to how you’d design an agentic AI workflow. Protein language models borrow the same pretraining logic as GPT, but the inductive biases differ in ways that matter. The wiki is where those cross-domain links become visible, and the blog posts are the public output built on top of it.</p> <h2 id="what-youll-find-here">What you’ll find here<a class="link-hover" aria-label="Link to section" href="#what-youll-find-here"><span class="icon icon-link"></span></a></h2> <p><em>Book and paper digests.</em> I read something, pull out the one idea that changes how I think, and write about why it matters. More conversation with the source material than summary.</p> <p><em>TILs.</em> Short notes when I learn something surprising. A tool that solved a problem. A finding that contradicted my assumption. Quick to write, useful to revisit.</p> <p><em>Mini reviews with hands-on analysis.</em> I survey a method or field, then run it on public data to see what happens. These double as portfolio pieces and learning exercises.</p> <p><em>The <a href="https://allenkao.com/wiki">wiki</a>.</em> The connective tissue. Browse the knowledge graph, search across concepts, or trace how ideas in one domain relate to another.</p> <p><em><a href="https://allenkao.com/learning">Learning maps</a>.</em> The books, papers, and lectures I found helpful, organized by domain.</p> <p>Every post shows the work: what I read, what surprised me, what I’m still confused about, what I’d try next. If I only wrote about things I fully understood, I’d never write anything.</p> <h2 id="starting-late-starting-now">Starting late, starting now<a class="link-hover" aria-label="Link to section" href="#starting-late-starting-now"><span class="icon icon-link"></span></a></h2> <p>I wish I’d started this years ago when I first read Turner’s blog. I didn’t, because I thought I needed to know more first. I’m still learning. I’ll always be learning. That’s the whole point.</p> <p>If you’re reading this, you’re watching someone figure things out in real time. I’ll get things wrong, and I’ll update posts when I do. The archives will show the trajectory.</p> <p>What would your career look like if you’d written down everything you learned, every week, for the last five years?</p>]]></content>
        <author>
            <name>Allen Kao</name>
            <email>hushkao@gmail.com</email>
            <uri>https://allenkao.com/</uri>
        </author>
        <category label="learning" term="learning"/>
        <category label="writing" term="writing"/>
        <published>2026-03-29T00:00:00.000Z</published>
    </entry>
    <entry>
        <title type="html"><![CDATA[The Pyramid Principle: Think Bottom-Up, Write Top-Down]]></title>
        <id>https://allenkao.com/posts/pyramid-principle</id>
        <link href="https://allenkao.com/posts/pyramid-principle"/>
        <updated>2026-04-05T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Five techniques from Barbara Minto's Pyramid Principle, and how to apply them when writing scientific reports for clients.]]></summary>
        <content type="html"><![CDATA[<div class="tldr my-4 p-4 border-l-4 rounded-r border-te-camel bg-te-border/40 svelte-1f0iuj8"><p>Minto’s Pyramid Principle says: answer first, then support with MECE groups, ordered logically. I pulled out five techniques from the book.</p></div> <h2 id="the-structure">The structure<a class="link-hover" aria-label="Link to section" href="#the-structure"><span class="icon icon-link"></span></a></h2> <p>Barbara Minto’s <em>The Pyramid Principle</em> (1987, still assigned at McKinsey, Bain, and BCG) comes down to one idea: state your answer first, then support it with groups of logically ordered evidence. Every level answers the question raised by the level above.</p> <figure><svg viewBox="0 0 740 420" xmlns="http://www.w3.org/2000/svg" style="width:100%;max-width:740px;margin:1.5rem auto;display:block;" role="img" aria-label="Pyramid Principle diagram: Answer at top inside SCQA ring, three Key Line points below connected by Why arrows, six evidence boxes at bottom grouped by MECE."><defs><linearGradient id="pg1" x1="0" y1="0" x2="0" y2="1"><stop offset="0%" stop-color="#2e6b4f" stop-opacity="0.15"></stop><stop offset="100%" stop-color="#2e6b4f" stop-opacity="0.05"></stop></linearGradient><linearGradient id="pg2" x1="0" y1="0" x2="0" y2="1"><stop offset="0%" stop-color="#b8956a" stop-opacity="0.12"></stop><stop offset="100%" stop-color="#b8956a" stop-opacity="0.04"></stop></linearGradient><linearGradient id="pg3" x1="0" y1="0" x2="0" y2="1"><stop offset="0%" stop-color="#b0b3b8" stop-opacity="0.10"></stop><stop offset="100%" stop-color="#b0b3b8" stop-opacity="0.03"></stop></linearGradient></defs><text x="18" y="78" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#2e6b4f" font-weight="400" opacity="0.85">↓ write</text><text x="18" y="95" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#2e6b4f" font-weight="400" opacity="0.85">top-down</text><text x="18" y="378" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" font-weight="400" opacity="0.85">↑ think</text><text x="18" y="395" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" font-weight="400" opacity="0.85">bottom-up</text><ellipse cx="370" cy="82" rx="145" ry="58" fill="none" stroke="#2e6b4f" stroke-width="1.5" stroke-dasharray="6 4" opacity="0.55"></ellipse><text x="230" y="32" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#2e6b4f" font-weight="400" opacity="0.9">SCQA intro</text><path d="M298 34 Q315 48 320 54" fill="none" stroke="#2e6b4f" stroke-width="1" opacity="0.5"></path><rect x="298" y="52" width="144" height="58" rx="0" fill="url(#pg1)" stroke="#2e6b4f" stroke-width="1.5"></rect><text x="370" y="78" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="16" font-weight="400" fill="#1a5a3f">Answer</text><text x="370" y="98" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#2e6b4f" opacity="0.8">(main point)</text><line x1="330" y1="110" x2="155" y2="175" stroke="#b0b3b8" stroke-width="1" opacity="0.5"></line><line x1="370" y1="110" x2="370" y2="175" stroke="#b0b3b8" stroke-width="1" opacity="0.5"></line><line x1="410" y1="110" x2="585" y2="175" stroke="#b0b3b8" stroke-width="1" opacity="0.5"></line><text x="235" y="150" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" font-style="italic" opacity="0.9">Why?</text><text x="370" y="150" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" font-style="italic" opacity="0.9">Why?</text><text x="505" y="150" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" font-style="italic" opacity="0.9">Why?</text><rect x="85" y="175" width="142" height="52" rx="0" fill="url(#pg2)" stroke="#b8956a" stroke-width="1.2"></rect><text x="156" y="196" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" font-weight="400" fill="#846c4a">Key Line</text><text x="156" y="214" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="11" fill="#846c4a" opacity="0.85">reason 1</text><rect x="299" y="175" width="142" height="52" rx="0" fill="url(#pg2)" stroke="#b8956a" stroke-width="1.2"></rect><text x="370" y="196" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" font-weight="400" fill="#846c4a">Key Line</text><text x="370" y="214" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="11" fill="#846c4a" opacity="0.85">reason 2</text><rect x="513" y="175" width="142" height="52" rx="0" fill="url(#pg2)" stroke="#b8956a" stroke-width="1.2"></rect><text x="584" y="196" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" font-weight="400" fill="#846c4a">Key Line</text><text x="584" y="214" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="11" fill="#846c4a" opacity="0.85">reason 3</text><line x1="85" y1="240" x2="655" y2="240" stroke="#b0b3b8" stroke-width="1" stroke-dasharray="4 3" opacity="0.7"></line><text x="680" y="244" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93" opacity="0.85">MECE</text><line x1="126" y1="227" x2="112" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><line x1="186" y1="227" x2="200" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><line x1="340" y1="227" x2="326" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><line x1="400" y1="227" x2="414" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><line x1="554" y1="227" x2="540" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><line x1="614" y1="227" x2="628" y2="278" stroke="#b0b3b8" stroke-width="1" opacity="0.4"></line><rect x="72" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="113" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">finding</text><rect x="162" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="203" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">conclusion</text><rect x="286" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="327" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">finding</text><rect x="376" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="417" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">conclusion</text><rect x="500" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="541" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">finding</text><rect x="590" y="278" width="82" height="40" rx="0" fill="url(#pg3)" stroke="#b0b3b8" stroke-width="1"></rect><text x="631" y="303" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="12" fill="#8a8d93">conclusion</text><text x="370" y="350" text-anchor="middle" font-family="Inter,system-ui,sans-serif" font-size="13" fill="#8a8d93" opacity="0.85">Order within each group: time | structure | rank</text></svg></figure> <div class="in-article-ad"><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-1251836334060830" data-ad-slot="3423675305"></ins></div><h2 id="why-most-reports-fail">Why most reports fail<a class="link-hover" aria-label="Link to section" href="#why-most-reports-fail"><span class="icon icon-link"></span></a></h2> <p>Minto opens the book with a scheduling memo. The original:</p> <blockquote><p>The Conference Room is booked tomorrow, but free Thursday. Thursday at 11:00 looks to be a good time. Is that OK for you?</p></blockquote> <p>The reader wades through logistics before finding the point. The rewrite:</p> <blockquote><p>Could we reschedule today’s meeting to Thursday at 11:00? This would be more convenient for Collins and Johnson, and would also permit Clifford to be present.</p></blockquote> <p>Same information. The second version leads with the request and gives reasons below it.</p> <p>Most writers use the writing process itself to figure out what they think. That works for the writer, but forces the reader to reverse-engineer the conclusion from a trail of observations.</p> <p>George Miller’s magic number seven (plus or minus two) means the reader’s working memory fills up after four or five items. If you haven’t given them a frame by then, they’ll invent one, and it probably won’t match yours.</p> <p>Minto’s fix: separate thinking from writing. Think bottom-up (gather, group, conclude). Write top-down (conclusion first, support below).</p> <h2 id="technique-1-scqa-introductions">Technique 1: SCQA introductions<a class="link-hover" aria-label="Link to section" href="#technique-1-scqa-introductions"><span class="icon icon-link"></span></a></h2> <p>Every document opens with a story the reader already knows, told in four beats:</p> <ol><li>Situation: a stable state the reader will accept as true without argument.</li> <li>Complication: something changed, went wrong, or is about to.</li> <li>Question: the question that naturally arises from the complication.</li> <li>Answer: your main point, which the rest of the document supports.</li></ol> <p>Minto shows that varying the order of these four elements changes tone without changing content:</p> <ul><li><em>Considered</em> (S-C-Q-A): “We bill clients for diversification work. No one has demonstrated a result. How do we fix this? Here’s a project plan.”</li> <li><em>Direct</em> (A-S-C): “Our first priority should be improving diversification outcomes. We’ve grown 40% in five years. Yet we can’t point to a single result.”</li> <li><em>Concerned</em> (C-S-A): “No diversification study has yielded demonstrable results. This is startling given 40% practice growth. We must fix this.”</li></ul> <p>Your Situation must be something the reader already agrees with. Your Complication raises the stakes. If the Complication doesn’t produce your stated Question, one of them is wrong.</p> <p>SCQA maps well onto scientific reports for non-technical stakeholders. The Situation is the biology they’ve already bought into. The Complication is the gap between what the data shows and what they expected. Most analysis reports bury this across ten slides and a “Background” section nobody reads.</p> <h2 id="technique-2-the-vertical-question-answer-dialogue">Technique 2: the vertical question-answer dialogue<a class="link-hover" aria-label="Link to section" href="#technique-2-the-vertical-question-answer-dialogue"><span class="icon icon-link"></span></a></h2> <p>Once you state your answer at the top, it raises a new question in the reader’s mind (“Why?” or “How?”). Your key line points answer that question. Each key line point raises its own question, answered one level below.</p> <p>Minto illustrates why order matters with a story from a pub. She tells a friend:</p> <blockquote><p>I was in Zurich last week, and within 15 minutes I saw 15 people with beards or moustaches.</p></blockquote> <p>The friend guesses she’s comparing cities, or disapproves of facial hair. Wrong. She then adds observations about New York offices and London. The friend guesses again: London is ahead of the trend? Still wrong. Her actual point:</p> <blockquote><p>It’s incredible to me the degree to which facial hair has become an accepted part of business life.</p></blockquote> <p>Had she stated that first, every detail would have clicked into place. Without the frame, the listener invents a wrong one. The pyramid terminates when the reader has no more logical questions.</p> <p>Minto is strict about this: never raise a question before you’re ready to answer it, and never answer a question before you’ve raised it. A section labeled “Our Assumptions” before the main argument answers questions the reader couldn’t have had yet. That information will have to be restated later.</p> <p>Try this on your next draft: read just the headings. If a heading says “Background” or “Methodology” instead of stating an idea, it’s not pulling its weight. Headings should state conclusions, not categories.</p> <div class="in-article-ad"><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-1251836334060830" data-ad-slot="3423675305"></ins></div><h2 id="technique-3-mece-groupings">Technique 3: MECE groupings<a class="link-hover" aria-label="Link to section" href="#technique-3-mece-groupings"><span class="icon icon-link"></span></a></h2> <p>Every group of ideas at any level must be:</p> <ul><li><em>Mutually Exclusive</em>: no overlaps. If two ideas partially cover the same territory, you haven’t separated them.</li> <li><em>Collectively Exhaustive</em>: no gaps. Together, the group accounts for everything relevant at that level.</li></ul> <p>Minto’s diagnostic: can you label every group with a single plural noun? “Reasons,” “steps,” “problems,” “changes.” If you can’t find the noun, the ideas aren’t the same kind of thing.</p> <p>If you can name the noun but one idea doesn’t fit it, you have a misfit. Move it or split it.</p> <p>Minto catches a common error with a real memo from a junior consultant at a printing company. The original lists eight problems: low productivity, same steps for every job, uncompetitive prices, behind schedule, low wages, staff shortage, high overtime, below PAR standards. Minto sorts them and finds two causal chains hiding in the list:</p> <ul><li>Low wages → can’t hire → behind schedule → high overtime → high costs</li> <li>Same steps for every job → below PAR → low productivity → high costs</li></ul> <p>What looked like eight separate problems is actually two causes with one shared effect. The “inductive list” was a deductive argument in disguise. One piece of evidence for anything forces deductive treatment.</p> <h2 id="technique-4-logical-ordering">Technique 4: logical ordering<a class="link-hover" aria-label="Link to section" href="#technique-4-logical-ordering"><span class="icon icon-link"></span></a></h2> <p>Ideas within each MECE group must follow one of exactly three orders:</p> <table><thead><tr><th>Order</th><th>Source</th><th>Test</th></tr></thead><tbody><tr><td>Time</td><td>Process or cause-effect</td><td>“What would I do first?”</td></tr><tr><td>Structure</td><td>Dividing a whole into parts</td><td>“Does this match a diagram I can draw?”</td></tr><tr><td>Rank</td><td>Classifying by shared characteristic</td><td>“Strongest first?”</td></tr></tbody></table> <p>Minto argues these are the <em>only</em> three because they correspond to the only three analytical activities the mind performs: determining causation, dividing wholes, and classifying likes.</p> <p>The ordering test is Minto’s sharpest diagnostic tool. She takes a messy list of eleven objections to entering the plastic bottle business and sorts them onto an ROI tree (a structural order).</p> <p>Once sorted, the argument becomes two claims: entry would dilute profitability short-term through lower EPS and long-term through lower ROI. The actual concern, a possible nonreturnable bottle ban, was buried at point #2 in the original list.</p> <p>If you can’t find the order, your grouping is wrong.</p> <h2 id="technique-5-induction-over-deduction-at-the-key-line">Technique 5: induction over deduction (at the Key Line)<a class="link-hover" aria-label="Link to section" href="#technique-5-induction-over-deduction-at-the-key-line"><span class="icon icon-link"></span></a></h2> <p>At the Key Line level, Minto says: prefer induction over deduction.</p> <p>A deductive Key Line walks through “what’s going wrong, what’s causing it, therefore what you should do.” The reader holds the problem in memory, matches each cause to each symptom, and drags the whole chain to the recommendation. By the time they arrive, they’ve forgotten the beginning.</p> <p>An inductive Key Line says: “Do these three things” and then explains each. The reader gets the answer up front, with clear fences between topics and all evidence for each recommendation in one place.</p> <p>Minto’s rule of thumb: present actions before arguments. The reader cares about what to do Monday morning. Two exceptions: the reader will strongly disagree with your conclusion (so you need to prepare them), or the action makes no sense without the reasoning behind it.</p> <p>Push deductive reasoning as low in the pyramid as possible. At the paragraph level, deduction flows naturally. At the section level, it becomes a mystery story.</p> <h2 id="applying-this-to-scientific-and-technical-writing">Applying this to scientific and technical writing<a class="link-hover" aria-label="Link to section" href="#applying-this-to-scientific-and-technical-writing"><span class="icon icon-link"></span></a></h2> <p>Minto wrote for consultants writing memos. I came to the book looking for something different: how to write analysis reports that translate scientific results into decisions for a client’s stakeholders. The transfer turns out to be direct.</p> <p>A typical bioinformatics deliverable buries the answer. It opens with “Methods,” walks through the pipeline, shows 15 figures, and arrives at a conclusion on page 22. The client’s VP skips to the last page, reads one paragraph with no context, and asks the project lead what it means. Everyone’s time wasted.</p> <p>The pyramid fixes this. A report on differential expression analysis might look like:</p> <ul><li><em>Situation</em>: You asked us to identify gene signatures distinguishing responders from non-responders in your Phase II cohort.</li> <li><em>Complication</em>: Standard bulk RNA-seq DE found 2,400 significant genes, too many to act on.</li> <li><em>Question</em>: Which genes are worth validating?</li> <li><em>Answer</em>: Three genes (X, Y, Z) survive all filters and have prior drug-target evidence.</li></ul> <p>The Key Line then gives three inductive reasons: each gene passes significance, replicates in an external cohort, and maps to a druggable target. Methods, QC, and sensitivity analyses go <em>below</em> the relevant Key Line point, not in a separate section at the top.</p> <p>Two practical translations:</p> <ul><li>Slide decks for client steering committees are natural pyramids. The title of each slide should be the conclusion (“Gene X replicates across cohorts”), not the category (“Replication analysis”). Minto calls these “headings that state ideas, not subjects.”</li> <li>MECE works well for structuring analysis results by question rather than by method. Don’t organize around “what we ran” (DE, enrichment, survival). Organize around “what we found” (response signature, pathway mechanism, clinical implication). Each finding gets its own branch, with methods as support underneath.</li></ul> <h2 id="where-the-pyramid-breaks-down">Where the pyramid breaks down<a class="link-hover" aria-label="Link to section" href="#where-the-pyramid-breaks-down"><span class="icon icon-link"></span></a></h2> <p>I’m less sure the framework fits exploratory scientific writing. A paper that says “we don’t know yet, but here are three promising directions” works as a pyramid. A paper that says “we found something unexpected and we’re not sure what it means” fights the “answer first” rule. Minto addresses this briefly in her “structureless situations” appendix, but it’s thin.</p> <p>MECE also gets tricky in biology. Gene ontology terms are famously non-exclusive. Pathway databases assign the same protein to multiple pathways. Forcing MECE on inherently overlapping biology might produce clean slides but misleading science. The framework is a communication tool, not a classification system.</p> <p>For any document where the goal is “the reader should understand my thinking in 30 seconds,” I haven’t found anything better.</p> <h2 id="the-full-map">The full map<a class="link-hover" aria-label="Link to section" href="#the-full-map"><span class="icon icon-link"></span></a></h2> <p>I distilled the book into an <a href="https://allenkao.com/learning/mindmap/pyramid-principle">interactive mindmap</a> covering why the pyramid works (cognitive science), how to build one (SCQA, vertical/horizontal logic), the three rules every grouping must obey, and the problem-solving toolkit (MECE, logic trees, abduction). Hover for Minto’s original wording.</p> <p>If MECE forces clean boundaries on your communication, what happens to the insights that live in the overlaps?</p>]]></content>
        <author>
            <name>Allen Kao</name>
            <email>hushkao@gmail.com</email>
            <uri>https://allenkao.com/</uri>
        </author>
        <category label="writing" term="writing"/>
        <category label="communication" term="communication"/>
        <category label="consulting" term="consulting"/>
        <category label="book-digest" term="book-digest"/>
        <published>2026-04-05T00:00:00.000Z</published>
    </entry>
</feed>