About this episode
Dave Plummer is a programmer, former Microsoft software engineer (Windows 95, NT, XP), creator of Task Manager, author of two books on autism, and host of the Dave’s Garage YouTube channel, where he shares stories from his career, insights on software development, and deep dives into technology. Thank you for listening ❤ Check out our sponsors: https://lexfridman.com/sponsors/ep479-sc See below for timestamps, and to give feedback, submit questions, contact Lex, etc. CONTACT LEX: Feedback – give feedback to Lex: https://lexfridman.com/survey AMA – submit questions, videos or call-in: https://lexfridman.com/ama Hiring – join our team: https://lexfridman.com/hiring Other – other ways to get in touch: https://lexfridman.com/contact EPISODE LINKS: Dave’s X: https://x.com/davepl1968 Dave’s YouTube: https://www.youtube.com/@DavesGarage Dave’s Secondary YouTube Channel: https://www.youtube.com/@davepl Dave’s GitHub: https://github.com/PlummersSoftwareLLC Dave’s Books: https://amzn.to/41qd5IB SPONSORS: To support this podcast, check out our sponsors & get discounts: UPLIFT Desk: Standing desks and office ergonomics. Go to https://upliftdesk.com/lex ZocDoc: App that helps patients find healthcare providers. Go to https://zocdoc.com/lex Fin: AI agent for customer service. Go to https://fin.ai/lex Allio Capital: AI-powered investment app that uses global macroeconomic trends. Go to https://alliocapital.com/ Shopify: Sell stuff online. Go to https://shopify.com/lex OUTLINE: (00:00) – Introduction (01:14) – Sponsors, Comments, and Reflections (10:16) – First computer (15:54) – Dropping out of high-school (23:35) – Joining Microsoft (25:47) – MS-DOS (28:59) – Windows 95 (35:46) – The man behind Windows (40:42) – Debugging (45:59) – Task Manager (51:08) – 3D Pinball: Space Cadet (56:07) – Start menu and taskbar (1:07:06) – Blue Screen of Death (1:09:15) – Best programmers (1:17:16) – Scariest time of Dave’s life (1:24:44) – Best Windows version (1:26:34) – Slot machines (1:30:17) – Autism and ADHD (1:49:37) – Fastest programming language (1:53:42) – Future of programming PODCAST LINKS: – Podcast Website: https://lexfridman.com/podcast – Apple Podcasts: https://apple.co/2lwqZIr – Spotify: https://spoti.fi/2nEwCF8 – RSS: https://lexfridman.com/feed/podcast/ – Podcast Playlist: https://www.youtube.com/playlist?list=PLrAXtmErZgOdP_8GztsuKi9nrraNbKKp4 – Clips Channel: https://www.youtube.com/lexclips
Listen to the original episode
Episode summary
The following is a conversation with Dave Plummer—old-school Microsoft engineer behind Task Manager, built-in ZIP support, and the Space Cadet Pinball port; creator of Dave’s Garage; author of Secrets of the Autistic Millionaire. A super fun dive into the history and future of programming and building cool stuff in the garage. Tell me about your first computer, the state of the art back then, and when you fell in love with programming—even as you dropped out and found your way back?
My first hands-on was a TRS-80 Model 1 at RadioShack. I was in fifth or sixth grade, rode my bike there, set it up, and banged English into Level 1 BASIC until I learned better. I kept riding back every week. Those were the TRS-80, PET, and Apple II days.
Apple II or Commodore 64?
Commodore 64 for influence. I learned 6502 the hard way—hand-coded a bad Galaga clone, then nuked it by copying a blank floppy over my data. Machine code forced tape-like, strictly sequential thinking. I fell for computers immediately, and in university realized I loved programming no matter what job it led to.
You dropped out—how did you find your way back, and what advice do you give students?
I drifted out by not showing up. Nights at 7-Eleven and a subzero gas-dip full of splinters convinced me to go back at twenty one. In school, gravitate toward what you enjoy, and do the hard classes now—it is easier than doing it later.
How did you get to Microsoft from Saskatchewan—HyperCache—and why did Microsoft dominate? And what exactly was DOS?
I read Hard Drive at lunch, wanted in, scraped Microsoft emails from my HyperCache shareware cards, cold-emailed, and landed an MS-DOS internship. HyperCache was C with tight 68000 assembly, sold via Usenet and retailers. Microsoft had the highest density of smart people I have seen; Bill was relentless about a computer on every desk and hired up. DOS was a lean command launcher with tiny scripts and env vars—the six hundred forty kilobytes quote is a myth, but memory limits were real. I added CD-ROM caching to SmartDrive and moved code to high memory via the A twenty line. I briefly touched Win95 OLE; the new shell and Start menu felt magical. Most impactful OS for me: OS three sixty, then Windows ninety five at home, then Linux for servers and open source.
What did a productive day look like, and what was it like porting the Windows ninety five shell to NT? Give me NT’s origin, Dave Cutler’s leadership, the tooling, the debates, and the grind of debugging.
Morning was MSMail’s giant address book, then triage crashes from overnight stress runs via serial debuggers. Eighty percent was bug fixing and porting—making the Windows ninety five UI Unicode and risk-safe, finding wild code. NT was a clean sheet from Cutler and the DEC crew; he was brilliant and uncompromising. Better tools like git would have helped; debates on aliases got heated. I lost a MIPS fight over unaligned ID lists that made code thousands of times slower there. We debugged raw assembly across Intel, MIPS, Alpha, and PowerPC. Debugging is endurance; asserts are my religion. A greater than one hundred percent CPU bug in Task Manager proved to be a kernel accounting issue—I proved it with asserts and even my home phone in the message.
Task Manager—what is it, and how did you make it tiny, fast, and hard to freeze?
I built it at home, then swapped to real NT query APIs in-house. I obsessed over reliability and size—about eighty seven kilobytes—so I avoided the C runtime, called constructors manually, and shoved any slow call onto worker threads. I used dirty bits per row and column, Hamming-code style, so repaints were minimal and resizing stayed smooth even with many CPUs. The core is still there; modern layers add bulk.
Space Cadet Pinball—and even Solitaire and Minesweeper—why did they matter?
I ported Space Cadet by rewriting assembly to C so it ran everywhere; early, it drew at absurd frame rates, subtly changing physics. The table design is just great. Solitaire taught drag-and-drop; Minesweeper taught right-click.
You also shipped Windows activation, and you have opinions on Windows customization.
Late in XP, we had to land activation fast, so I wired it up with the DRM and key-math teams; phone activation was punishing on both ends. On customization, features like moving the taskbar can die to schedule and complexity; constant UI churn kills polish, while long-term ownership breeds craftsmanship. Jobs liked one right answer; Windows leans more open.
Tell me the Zip Folders story, the roots of ZIP, and why Windows ZIP can feel slow.
I wrote VisualZip at home, taped a dream house and red Corvette to my monitor for motivation, sold it as shareware, then Microsoft bought it; we removed encryption and multivolume for policy and simplicity. ZIP grew out of the BBS era with Phil Katz’s PKZIP. Windows ZIP traces to a single-core design—it does not multithread compression.
Blue screen and reboot wisdom—and your favorite code, debugger, and how you code today. Also, your Lua and Python detour with Tempest.
NT’s blue screen colors came from the MIPS firmware editor palette; rebooting clears leaks and weird states. I love the Windows kernel’s quality and Bob Day’s named-pipe work. Laura Butler’s lightning debugging blew me away. Task Manager runs for billions. Today I design for simplicity first, then grow. I am using Lua and Python to feed Tempest state into a dueling deep Q agent; I still love modern C plus plus and C-with-classes.
Your shareware company’s AG case—and the broader trust question with OS nudges.
Banner ads accidentally scaled sales; the AG forced once-a-week nags and fixing a default disk checkbox that looked like negative option billing. I dislike adversarial OS nudges and would rather pay than be upsold. I learned to avoid fear and be mindful of how messages land—sex, fear, and greed are the levers.
Top Windows versions?
Windows two thousand Server for me; for consumers, XP. What metric are you using—impact, stability, or design feel?
Given your love of hardware and software, how do slot machines really work? And what other old systems do you love tearing into?
They are dopamine machines with a random number generator at the core. The outcome is decided first, then the game invents a little movie of spinning reels to fit it. Underneath it is basically a Windows PC wrapped in a secure enclave. People have hacked them in the past by slipping in custom ROMs. Outside casinos, I restore sixties muscle cars and old computers, especially PDP elevens. I built a maxed out one with four megabytes of memory and real blinking lights, even rewrote parts of the BSD kernel to drive the panel. You can halt, inspect the address and data buses, and deposit to memory with switches. It has a quirky dual floppy with a single stepper moving both heads together.
You have written about autism. How does your mind work differently, how does ADHD fit in, and what are the toughest parts day to day?
Monotropism sums it up for me: I do one thing intensely, then move on. I can bring extreme focus if I love the task and see progress, but ADHD makes acquiring that focus hard. Once I lock in, it is very hard to distract me. The hardest part is I cannot infer what others are thinking from subtle cues—phone calls are brutal, sarcasm flies past me, and I default to literalism. Early at Microsoft I corrected a tiny timeline error while being introduced to Bill Gates. Right point, wrong moment. I have learned that even accurate corrections can land badly.
What helps you flourish, especially on big software teams and as a manager?
Lead with work, not vibe. Bring a portfolio, GitHub history, working code, algorithms. On teams, my blind spot was assuming everyone is motivated like me. They are not. Some want recognition, some money, some decision power. I now ask explicitly about goals and needs because I am not good at the social dance. Satire and subtle nudges do not land for me.
Do you have a quick litmus test for autism? And how do you post‑process social moments and think about empathy?
Ask which matters more to society: cooperation or creativity. Neurotypicals tend to pick cooperation; people like me lean creativity. Or ask: ten chairs, six people sit—how many chairs are left? I will say ten, literally true. I took figures of speech literally as a kid. After interactions, I replay uncomfortable moments to see what I missed and whether I need to fix something. Once I had a car restored and failed to praise the craftsmen in person; years later I emailed to thank them because I finally realized what that meant to them. I do feel empathy—deeply—once you tell me what you are feeling. Until then, I assume you would handle it like I would.
How should we communicate with you? And what is masking and what triggers meltdowns?
Be specific. Do not hint. Say, Dave, do this. Masking is acting normal—managing hands, tone, posture, facial expressions—so others receive you well. It is a contrivance and it is work. Meltdowns are overwhelm: the frontal cortex goes offline, you drop into fight or flight. Travel chaos, arguments, accumulated stress—one more trigger and the switch flips.
What about love and relationships—what works for you?
We have been together thirty seven years, married thirty one. I miss signals, so I tend to grow on people. We use explicit check‑ins—she asks, you good?—and my tone on yeah versus yeah tells her a lot. Many people feel a little autistic; I wrote a short manual for my kids to leverage the strengths and mitigate the rough edges.
Why do so many great programmers sit somewhere on the spectrum, and what are you building right now?
Single‑minded focus and bottomless curiosity help. Right now I am training an agent to play Tempest; most of the code works and I am tuning layers and hyperparameters. My goal is for it to beat me. On the PDP eleven, I want to bring up a loud RA eighty two fourteen‑inch disk, add the controller, and integrate the driver into the kernel.
Tell me about the one terabyte RAM box and the GitHub Primes benchmark—what wins and how is it set up?
We run the same prime sieve up to one hundred million, as many times per five seconds as possible, across about one hundred languages. Each runs in its own Docker container, with strict rules like one bit per integer and allocating inside the timed loop. Zig and C plus plus trade the top spot as people optimize; Rust, Nim, Haskell, and even wildcards like PowerShell show up. A couple of great maintainers in Europe keep it organized.
What is your happiest moment in coding, and how are large language models changing the craft and its future?
Pure joy is when a complex system runs as I imagined. AI helped me learn Python fast—I can read what it generates and trim it—but you still need to know how to program and what to ask for. I see the future shifting toward assembling components and specifying interactions precisely, with the AI generating scaffolding. We are not at whole‑cloth Linux kernel generation yet. Abstraction keeps rising; I was lucky to live across layers from TTL logic to AI tools.
At the deepest level, what is this all about for you?
Making complex, useful things other people can use—and raising a couple of good kids to hand the baton to.