#479 – Dave Plummer: Programming, Autism, and Old-School Microsoft Stories

29 Aug 2025

Ask about this episode

Ask anything about it. ChatGPT or Claude reads this page and answers with the times it was said.

Connect VO and ask about every podcast you hear, including the moments you saved. Add to ChatGPT · Add to Claude

In short

Lex Fridman Podcast Episode #479 Notes

Episode Overview

  • Guest: Dave Plummer
  • Background: Former Microsoft software engineer known for his work on Windows 95, 98, NT, and XP. Creator of the Windows Task Manager, author, and YouTube host (Dave's Garage).
  • Topics Discussed: Programming, personal experiences with autism, Microsoft history, and insights into software development.

Key Themes and Discussions

  1. Early Experiences with Computers
  2. First Computer: TRS-80 Model I, which sparked Plummer's interest in technology.
  3. Significant Influences: The Commodore 64 and programming in machine language sparked his passion for coding.
  1. Journey to Microsoft
  2. Dropping Out of High School: Plummer's unconventional path led him to various jobs before pursuing programming.
  3. Joining Microsoft: Stumbled into a summer internship which led to a career at Microsoft, contributing to MS-DOS and Windows.
  1. Contributions to Microsoft
  2. MS-DOS and Windows Development: Insights into the early days of MS-DOS, Windows 95, and debugging practices.
  3. Task Manager: Discussed the creation and development of the Windows Task Manager and its impact on user experience.
  4. 3D Pinball - Space Cadet: Details on his contribution to this nostalgic game, emphasizing the fun and technical challenges involved.
  1. Autism and Personal Insights
  2. Understanding Autism: Plummer discusses monotropism, the focus and intensity associated with autism, and the challenges faced in social interactions.
  3. Misunderstandings in Communication: Acknowledges difficulties in interpreting social cues and emotional expressions, leading to awkward interactions.
  4. Emotional Post-Processing: Plummer's strategy for improving social interactions by analyzing past conversations.
  1. Programming Philosophy
  2. Approach to Coding: Emphasizes the importance of writing clean, structured code and the joy of building functioning systems.
  3. Future of Programming: Discussion on the potential of AI and coding assistants, predicting a shift in how programming might evolve.
  4. Vibe Coding: Describes a new way of coding alongside AI tools, emphasizing how good programmers can leverage such technologies.
  1. Reflections on Success and Meaning
  2. Satisfaction in Work: Finds meaning in creating useful and complex systems that can impact others positively.
  3. Perspective on Life: Believes in the importance of making cool stuff and raising good kids, passing on knowledge and creativity.

Key Takeaways

  • Personal Journey: Plummer's path illustrates the power of passion and curiosity in technology, emphasizing that success is not linear.
  • Cultural Impact of Software: Acknowledges the widespread influence of software created during the Microsoft era, such as Windows and Task Manager.
  • Empathy and Understanding: Highlights the need for better communication and understanding in both personal and professional relationships, especially for those on the autism spectrum.
  • Programming Evolution: As technology advances, the nature of programming may change significantly, but the fundamental skills of problem-solving and creativity will remain crucial.

Concluding Thoughts Dave Plummer's insights into programming, autism, and personal growth present a multifaceted view of the tech world, combining humor, humility, and technical prowess. His story serves as an inspiration for both aspiring programmers and individuals navigating life's complexities.

Written by AI. May contain mistakes. Listen to the episode to check what was said.

Hear the part that matters, and keep it.Open this episode in VO. Double tap your headphones to save a moment as you listen.
Get VO free

Transcript

Automatic transcript. May contain errors.

0:00The following is a conversation with Dave Plummer, programmer and an old school Microsoft software engineer who helped work on Windows 95 and T and XP. Building a lot of incredible tools, some of which have been continuously used by hundreds of millions of people, like the famed Windows Task Manager. Yes, the Windows Task Manager and the zip on zip compression support and Windows. and he poured the code for space cadet pinball aka 3d pinball to windows. Today he's loved by many programmers and engineers for his amazing YouTube channel called Dave's Garage. You should definitely go check out. Also, he wrote a book on autism and about his life story called Secrets of the Autistic Millionaire, where he gives really interesting insights about how to navigate relationships, trips, career, and day -to -day life with autism.

0:59All this taken together. This was a super fun conversation about the history and future of programming, computing, technology, and just building cool stuff in the proverbial garage. And now a quick few second mention of the sponsor, check them out in the description, or at LexFreemian .com slash sponsors. It's the best way to support this podcast. We got Uplift Desk, which is an incredible company that has been my go to for a long time for all my office in pocket studio furniture, Zogdog, which is a platform that connects patients with top -rated healthcare providers, Finn for AI agent for customer service, Alliocapital for folks who understand the turmoil of global markets, and finally Shopify, a company that we've talked about for 20 hours with DHH.

1:51Because they use Ruby on Rails and they show that it can scale. Anyway, choose wisely my friends and now onto the full batteries. I try to make them interesting, but if you skip, please search out the sponsors I enjoy their stuff maybe you will too. To get in touch with me, for whatever reason, got alexfreedman .com slash contact. Alright, let's go. This episode was brought to you by a company that I cannot sing enough praises to in fact today I got another desk from uplift to desk. The number of desks I have, the amount, the quantity of joy they bring to my life is immeasurable. Like I said, it's my go -to for all office and podcast studio furniture.

2:34I have a desk with a Linux box, I have a desk with a Windows box, I do editing on, I have a quadruped sitting on top of another desk that I'm working on. There's a quadruped and it's a four -legged robot and then there's a mini baby quadruped. They're both sitting on the desk and I'm working on them and it's connecting to the Linux box where there's a lot of I've taken apart, I have to bring it back together. And then of course the podcast dusty you see on the podcast that sort of woody color. I have three of those desks and I've been using that for many years long long long long long long before uplift desk with a sponsor and I just got a new desk today in the podcast studio where I have some more robots, Linux laptop, and I'm doing some more development to do some robotics related stuff in the podcast studio.

3:28Anyway, these are standing desks. You can customize the amount of options is incredible. I can vouch for these guys. Good people, good desks, good ergonomics, just incredible. Anyway, go to uplittdesk .com slash flex and use code LX to get for free accessories, free same -day shipping, free returns, a 15 -year warranty, and an extra discount off your entire order that's UPLIFDESK .com slash Lex. This episode is also brought to you by ZockDock, a platform that connects patients with top -rated healthcare providers if you're anything like me remembering to go see a doctor before things go terribly wrong.

4:14You know, checkups. Make sure everything's okay. It's a thing I just don't do. And I'm very stressed about. And really the main reason for the stress is because at least in my perception, a lack of tooling for finding a doctor, for having easy to use, fast, efficient, accessible, huge number of choices, tooling. And so, Zogdog does that incredibly well. I can recommend them. That's my go to place to find a doctor to find a healthcare provider. Me saying these words is motivating me to do so because I haven't seen a doctor in quite a while. And so hopefully my words motivate me and perhaps even motivate you if you're anything like me and have been avoiding this topic because everything's going to be fine until it's not.

5:07One day it's not going to be fine and you go into regret not going to zok doc calm slash legs that's g o c d o c dot calm slash legs. This episode is also brought to you by Finn a world class popular AI agent for customer service. They are trusted by 5 ,000 customer service leaders. They're even trusted by top AI companies, including Anthropic and Sintasia. That's how you know they're legit. When a legit AI company trusts your AI company to do some AI thing for you, that's how you know your legit. 59 % average resolution rate, 90 day money bag guarantee up to $1 million. $10, it's powered by the Finn AI engine, which is a continuously improving system that allows you to analyze, train, test, deploy and repeat that loop over and over and over until the thing gets smarter, smarter, smarter.

6:07And your customers are happy. Go to Finn .ai slash Lex to learn more about transforming your customer service and scaling your support team at Finn .ai slash Lex. This episode is also brought to you by Alio Capital, a company and app that I'm especially excited about because not only am I using it, I'm learning about investment from it. It's an investment app that's designed by people who understand global markets and the macroeconomics of a world that is increasingly becoming divided, as I've mentioned before, politically divided, socially economically divided. But all you owe is powered by altitude AI, which identifies shifts in inflation, interest rates, and global risks, and then adapts Europe or FOLO in real time.

6:55If your investment tooling doesn't have a little bit of the AI's spice in that delicious recipe, I suspect that you might be missing out on the quickly evolving space where AI is getting smarter and smarter and smarter. So I think it's very wise to be using tooling that's leveraging at least in part AI for doing the investment All you capital does that extremely well and is doing so for hands -on or hands -off investors said and forget it Trying not to think about it. It all stresses me out. I just want to know that whatever investment I'm doing It's in good hands Anyway, download their app in the App Store, Google Play, or text Lex to 511 -511.

7:42That's ALIO Capital, text Lex to 511 -511. Oh, and here comes the one small print thing I'm supposed to say, investing in Vals Vs, including the potential loss of principle. Best performance does not guarantee results. See terms and conditions, text fees may apply. And finally, friends, this episode is brought to you by Ruby on Rails. No, I'm just kidding. It's brought to you by Shopify, a platform designed to, and you want to sell, anywhere with a great looking online store. Why do I mention Ruby on Rails? If you're not familiar and you want to know what love is, you want to watch somebody fall in love and maybe you yourself fall in love all over again.

8:27to listen to the six -oral conversation with DHH, where he elucidates his deep love for the Ruby language and why that makes his creation of Ruby on Rails a continuation of the beauty that he spreads throughout the world. Anyway, the CEO of Shopify, Toby Luck, it clearly saw the same kind of beauty in Ruby on Rails and that's why so much of the software infrastructure of Shopify as far As far as I understand it's done in Ruby on Rails and Toby and the Shopify team have been really good at showing that the thing scales. I mean, he's a legit engineer. He's an engineer designed a leader that goes to the ground floor and still is coding.

9:09Still, I must understand how every piece works. It's really incredible all of those kinds of leaders and I got a chance to hang out with Toby. And he's also just a sweet person and a mind that goes effortlessly between the technical and the philosophical, which is some of the most fun people to talk to. Anyway, you, my friend, can sign up for a $1 per month trial period at Shopify .com slash Lex. That's all lower case. Go to Shopify .com slash Lex to take your business to the next level today. This is the Lex Fragment Podcast. The supported, please check out our sponsors in the description or at LexFragment .com like sponsors and consider subscribing, commenting and sharing podcasts with folks who might find it interesting.

9:56And now, dear friends, here's Dave Plummer.

10:19I do. I didn't own my first computer for a long time, but the first computer I ever used was a TRS 80 model one level one 4K machine. And I rode my bike in fifth or sixth grade, so I was about 11 to the local radio shack. And, you know, they had standard components, stereo systems, everything else the radio shack had, but they had a stack of boxes that was labeled computer. And so I was asking the people that worked there about it, and they said, just got it, and they hadn't set it up yet. And so I was rather precocious, and I figured I'll set it up for you. And they said, okay, have a shot. What, did you know what you were doing?

10:48Absolutely not. I mean, it's no worse than a component stereo. The only thing is the Tandy and their infinite wisdom use the same five pin dyn connector for power video and I think cassette, so they're all identical. If you plug the main wrong, you'd blow it up. So I read the label and got it working and wanted to play in with it and not knowing anything about computers. So I'm typing English commands into it. You know, print two plus two works perfectly yet more simple in English that you enter and do a basic level one interpreter, there's not gonna get it very far. So you're trying to talk to it in English?

11:19Yeah. Didn't know any better. And I still have an old full scap that I wrote in sixth grade of a program that's kind of a logically correct, but has no chance of working on any interpreter that existed at the time. So it took me a while to figure out I was actually going on with them. But I wrote my bike down there every Thursday and Saturday, and they had gracious to let me use the machines. One was this. 7980. Okay. What was the state of the art of computing back then? So what were we talking about? Well, the big three had come out. There was a TRS 80 model one, there was the PET 2001 and the Apple II came out roughly simultaneously.

11:52Apple II. Would you say that's the greatest computer ever built? Probably in retrospect. Well, I would probably give that to the Commodore 64. Yeah. You and I agree on this. That was my first computer probably many years after it was released. But yeah, Commodore 64 is incredible. But yes, Apple II had a huge impact on the history of personal computers. Right. It's hard to gauge the long -term impact, but I think the 64 itself probably influenced more people, so that's my reason for picking that one. You think so? The sales are certainly higher. So Commodore 64 sold a lot. Yeah. I mean, the numbers are hard to believe.

12:25It depends which numbers you believe, but even the medium estimates are pretty high. All right, cool. So you eventually graduated to the Commodore 64. Like, tell me about that machine. What did you do on the Commodore 64? Well, the first thing I did was overheat the floppy drive on it, which was unfortunate because it wasn't a warranty machine. My parents didn't have a lot of money, so we bought it from computer house as opposed to one of the major retailers, which meant when it died, it had to go back to Germany or something to be fixed. So I was left with no floppy, and so I had a cassette deck, which was the best you could do at the time.

12:56And so I was writing small things, and I had a machine language monitor that you could load from cassette. Didn't have an assembler built in, but at a disassembler, so you could enter the op -codes in 6502, in hex. and if you were careful about planning, you'd be able to write some basic programs. So that's kind of how I learned. And the first thing I ever wrote on it was a clone Gallagher. No, it's a bad clone of Gallagher, but it has the major enemies that attack over time. And it's all written in hand -coded machine language, and you can't relocate 6502. So if you need to add code in the middle, you need to manually sort of jump to somewhere else, do your work, jump back to where you were.

13:30It's just hideous spaghetti code. But it all worked eventually. And I went to make a backup of it to preserve it for future scholars or whatever I was doing. And I copied my blank floppy onto my data floppy. So that was my first experience with data management. So I don't have a copy of my first program anymore. What was I feeling like, you remember of just doing something if I may say so like stupid, you know, which is a part of the programming experience? Yeah, there was a huge amount of guilt, right? You destroy several weeks of work and you know it was because you rushed. or you did something stupid or you made it unwise choice.

14:06What would you tell me about the programming involved in that game? Literally machine language. So machine, so it's not even assembly. Not assembly yet because there's no assembler built in. So I should have ridden assembler, written in assembler is my first task, but I wasn't that clever or so. How hard is that to do? Trivial. And it's just one of the things that sticks, I think. You do it so many times. You know, if I give you a C issue, there are certain syntactic issues and see that you're never going to forget and get wrong. Yeah. And it's just one of those. Like what are the limitations of programming in machine code as a programmer?

14:38The biggest issue is you have to write completely sequentially because at least in that variant 65 or two, you can't add things later. You can only add things on the end. So it's like programming a tape in a way. What was the most complicated thing you built with machine language? That game would be, I mean an assembly language, I'd done a fair bit of complicated stuff, but in actual machine language, I think that game would be the only thing I'd actually do. Literally built a game. Not a great game, but it worked. Okay, all right, and then you erased it. I did. All right, when did you first fall in love with programming?

15:07When you figured out like this is a, this is something special. I think there was two stages for me. I always knew immediately that I was fascinated with these machines. From the TRStady Model 1, it's all I wanted to do is ride my bike back there and have more time with it. And I did that, you know, to wear out my welcome as much as I could. And the other revelation came I think about second or third year university when I realized I love programming, but I have no idea what I'm gonna do. Am I gonna make the 12 flash on a VCR somewhere or am I gonna go work on an operating system? I have absolutely no idea what I'm gonna do post graduation.

15:39But I love what I do. And so, I think that was a lot of consolation. It's like, it doesn't really matter what I'm doing at this point because I kind of love doing it, so. So you'll figure it out. Yeah. As long as you're following this kind of feeling, I knew I was in the right area, I find it. Yeah. All right, you dropped out of high school. Yeah, not the smartest move. Okay. But you ended up going back to school and being very successful at school and just in general Success was a programmer's a developer's a creator of software How were you able to find your wake and you tell that journey of dropping out and then finding your way back?

16:15There's no moment when I dropped out you just go less and less and less and feel you realize it's gonna be embarrassing If I show up because I haven't been there a long time and then pretty soon you're just not going and that's how you drop out of high school So you find yourself on that path stop doing that But that's precisely what I did. And so now I'm not at school and I have to get a job. So I'm working on 7 -Eleven and a paint warehouse and stuff like that. And 7 -Eleven is actually kind of an interesting job because it's a job I think to keep rotating for people that are smart enough to do the night shift with all the accounting and the administration.

16:44Stuff they make the night shift do. But that have reasons personally that they need to work at 7 -Eleven. And I was one of those people because I had no high school diploma. What is some memorable moments from that time of 7 -11. Maybe what do you appreciate about the difficulty of that job? Probably the worst moment for me. I mean, I got held up at knife point and stuff and that's all entertaining, but the worst thing is the most... The suckiest part for me was doing the gas dips. We've got a long, it's like a 15 or 20 foot wooden stick and it's measured in gradients of inches and feet and you drop it into the gasoline tank and then you bring it up and you measure where the gas lean sets because there's no electronic sensor.

17:22So I'm doing that and the first time I do it, I dropped the pole and I redrab it. Well, that's about a thousand splinters of wood into your hands and it's 40 below out and that really sucked. Oh wow. I don't wanna do this for a whole life. I knew that, so. Okay, so you stand there frozen with splinters in your hand. And at some point I have a revelation about my life that next time I'm gonna do it differently. And then how ludicrous that is hits me about three seconds later, right? And I think that was really the moment for me where I realized that I've got to do something different. And so even though I was 21, I went and I talked to the principal of my local high school, and I was like, can you let me back in?

18:02And he's no, you're too old. And we don't have room. It was his main reason. And I said, well, between now and then somebody's going to drop out. So you'll have room. So as soon as you have room, kind of come back. And he was gracious to let me come back. And so I did the three or four classes that I needed. Yeah, you know, just if you can linger on that, the slow dropping out. That's a weird thing that you can do with your brain. You realize to yourself that you don't have to do the thing that everybody else is doing. That's a dangerous realization because you kind of have to be part of society to do certain things.

18:38And if you realize you don't have to do whatever the else is doing, you can either have an incredible life or a really difficult life. Well, the problem with that process is you're making a much smaller decision. I'm just not going to go to class today. Yeah. And that's all you're deciding. But you do that enough times, you're making a much bigger decision. And that's the problem. So it's better to make, if you want to live life in an non -standard way, it's better to make the big decision explicitly. And then you can stop going. Yeah. Don't allow yourself to make the, it'll be made for you eventually.

19:11Yeah. OK. Well, you got back and you eventually want to college and were very successful as a student. And you want that good of a student before. No, I was a terrible student in high school. and even my first semester of college, I still wasn't taking it quite serious because I got Mercy past in geometry 90, which is like the makeup class for the geometry 12th grade class that I didn't have. And that scared me because I realized by 1 % or the grace of the professor that let me through, I just bowed to end my entire university career here. So fortunately, those marks don't count on the transfer because of remedial classes.

19:43And so I got kind of a fresh start the next semester and did it for real. I did it for me. And that made all the difference. What can you speak to maybe by way of advice on how to be successful as a student? Well, ideally there's some aspect of school that you do enjoy, whether it's arts, whether it's computer science, whether it's shop class, whatever. So go for those classes and just put up with and do the hard stuff because it's way easier than having to do it later. And that's easy to say when you're 50 something, it's harder to say when you're 15 something, but yeah, it makes a lot of sense.

20:14All right. What's the story of you joining Microsoft? How do we get to there from 7 -11 to Microsoft? Yeah, it's a big jump. So I had gone back to school, and I think it was my 30 -year of university. I was working for the phone company for the summer. It was a summer job, and I'm doing conversions of their UBNet to TCP -IP and modern networking, which really amassed these flopping cars, but then figuring out why their config .ciss doesn't allow Lotus to run anymore because it's got 10K less than it used to, and it's just a horrible time to be working in computers, but I was doing it. And at lunch, I'm sitting in the food court with the old and the board and I'm reading a book that I had bought called Microsoft or Bill Gates in the making of Microsoft hard drive I think is the title and it's a great book it's just sort of a matter of fact history of how Microsoft came to be what it's like how it operates what the people are like there and I'm reading this book and I become really entrassed by and fascinated because it sounds like exactly the place that I want to be but I'm in Saskatchewan so what am I going to do about it and what I want of doing was I had put myself through school with a program called HyperCash which is a file system cache for the Amiga, because Amiga didn't have any out of the box.

21:21And it had done reasonably well. And so I went through my registration cards, because in those days you had a four by six card that people would fill out with their name and their address. And if I had an email or email and they send it in, they get notifications of updates and so on, when it's shared with. And I went through the whole stack, looking for anybody with a Microsoft email address. And I found maybe three or four people, and I just called email them. And so, hey, I'm an operating system student and Saskatchewan looking for an opportunity. I don't remember exactly what I said. But one guy, Alistair Banks, he wrote back and he said, I know somebody that I can put you in contact with and he put me in contact with a guy named Ben Slifke, who did a phone interview, who eventually wanted a pirate to work in MSDOS for the summer.

22:02So that's how I got there. You put yourself to school by talking about HyperCache. You build a piece of software. It's the weight loss program for hard drives. That was sufficiently useful to a large number of people that would somehow give you money. Yeah, it made decent money. I saw a couple thousand copies, 20 bucks a copy or 40 bucks a copy. It was a language that was written in. See. So there were some assemblers. The actual really tight code to do the real work of transferring data to and from the cash was 68 ,000 assembly. Everything else was see. Okay. This is file system IO. device block IO.

22:38So any block that gets serviced from the drive would go through my cache first and it was an anyway associated cache and so we would try to match the geometry of the drive and do pre -fetch based on you're trying to read a whole track at one time that kind of thing. What was it like? Trying to get yourself to work out there at that time like where how are we able to find customers? Yeah, it's interesting. I think I started on use net and some of the Amiga forums I posted, here's my trial version, tried out for 30 days, see what you like. And eventually got picked up by a few retailers. And I remember I was with my now wife in her car, and she had a cell phone, because her dad was very concerned about her safety.

23:16And so this is late 80s, and she's got the antenna on the roof and the big box in the trunk, the whole deal. But we got a call from one of the software retailers that wanted to buy 50 copies, at 20 bucks, which to me is a thousand bucks, which in 1989 or whatever year it is, was a big deal. and so eventually a number of companies just bought inventory. Let's go to that time, it's such an interesting time with Bill Gates and Microsoft. Why do you think Microsoft was dominating the software and the personal computing space at that time? And really for many, many, many years after? At the time, it was the single most potent assemblage of smart people that I've ever been a part of.

23:52And I've been an academia and I've been an industry to a certain extent. And you know that when you work on a regular computer company, the one guy who actually knows what he's doing, his smarter friend, he probably works at Microsoft. So when you get there, you're the big cheese from your small town, you think you know a lot. And all of a sudden, you're just in an environment where like, oh, I'm just not going to speak because I want to look stupid. Okay. What about Bill Gates himself? What are some qualities of Bill Gates that you think contribute to the success of Microsoft? I think he was relentless in the pursuit of his one dream, which was his old slogan of a computer in every home and a computer in every desk There was a special interest and he was a smart guy super determined and he hired people that were as smart or smarter than him to help him executed and he built And almost unstoppable machine of intellect to go forth and make Let's say very simple products MS -DOS is not a complicated product by any stretch but it's exactly what the market needed at that time.

24:50Yeah, I mean, Emma's DOS changed the game. And that's actually the team you joined, Emma's DOS team. And I think you joined before Windows 95 was released. So tell me about the story of Emma's DOS. It's a success of Emma's DOS was probably pivotal to the success of Microsoft. Yeah, but for DOS, they were largely a language company. So they had made basic for a lot of computers. made a 4 -track compiler and a Pascal compiler, that kind of thing. But their deal to have MSDOS included with every version or every instance of the PC effectively, septem is a standard that they were able to leverage for decades going forward.

25:30And to certain extent they lucked into that and on the other hand they were smart to have done it. So because they didn't charge it, IBM a lot of money for it, but making it a standard really played out to their advantage over time. So at that time, MSDOS, no graphical interface. Can you just speak to what the heck MSDOS is? It's largely a command launcher. So you type in a name of a command. It looks up to see if that's in the current directory or on a special path to folders and it loads it into memory and executes it if it's there. And that's 90 % of what MSDOS does. Now it has environment variables and some complexity and a small scripting language built in.

26:08But it is basically just an operating system shell that allows you to use the resources of the computer like the hard drive or the CPU. And it doesn't allow you to multitask. There's no graphical interface. Now Microsoft did add a text -based graphical interface for things like an editor and quick basic in DOS 5, I believe. And it was a DOS shell, which was sort of a graphical file manager in NSDOS 4. So they experimented with it, but it's largely a command prompt. Did does it have ability to communicate with external devices? So drivers and all that kind of stuff like how expansive or an operating system was Emma's Doss.

Read the full transcript

26:45Well, it was limited by the original x86 instruction set, which limited it to 640K. And then there were various bandages on top of that to do high -mem and then extended memory of beyond that. And a lot of hoops have to be jumped through to make anything work without a consuming base RAM. Yeah. I mean, you programmed on Emma's Doss. What's it like? What are some interesting details there? Like you said, there's the memory constraints of 640 Kelbites. Yeah, 640k is the maximum that's ever gonna be available So it's not what's available to you as an operating system developer because whatever you use is what the user won't get So if you use 10k needlessly, you're gonna every machine in the world now has 10k less So it's kind of a big responsibility.

27:29Is that a true quote from Bill Gates where he said nobody will ever need more than 640k Yeah, I know it's not him. Okay. It's been a tribute to him, but not real. Okay, so what are some interesting aspects that you were able to do as an intern when you joined an MS Dawson beyond? One of the first things I did was to take Smart Drive, the Discache, because I had a familiar with Discaches, and to add CD -ROM Caching to it, because I was new, CD -ROMs were just coming out, Microsoft Bookshelf was one of the few products you could run for it. And as you can imagine, Caching a CD speeds it up by dozens of times if you're smart about it.

28:02So it was a big performance win, and a nice thing to work on. A bigger part of that was moving a bunch of smart drive and eventually the double space compression engine up into what's known as high memory. And without rat -hoeing on a technical aspect of it, on the XA6, there's something I believe called the A20 line. I probably have this backwards, or I got a 5050 shot at it, but if you've got the A20 line asserted, then your memory pointers wrap at the one megabyte mark. And if not, they don't. So you continue going up in memory. So you can rewrite memory above by combining your segment and offset registers to a number bigger than one megabyte And you get an extra 64k And you put your code in there and then you just put stubs to jump to it from low memory And so you can get another 64k out of the machine that way and we did that for a couple of products And that's I had no idea what high -mem was because I was an amiga programmer And I'd never written any x86 code before I got there.

28:54So So that was like a cool optimization that you got to be a part of yeah So what about Windows? There was a parallel development of Windows 95 right at that time. Did you get a chance to interact with those folks? I actually worked on Windows 95 for about three or four months. I was on the Commal late team doing the presentation cache, which is when you insert a, say, an Excel spreadsheet or chart into a Word document, you don't want to excel if you have to be loaded to render it every time. So there's a presentation cache of Enhance Metafiles, and I was working on that. So that shipped in Windows 95, But I moved to the Shell team about six months after getting to Microsoft and so I worked on NT from there forward.

29:32Okay, and what's 95? What's NT? What is 95 is an evolution of the original 16 bit Windows 3 .1, which was the very first popular version of Windows. And it adds 32 bit support and then VXT drivers and a bunch of new technology and an entirely new user interface. And it's something that at the time was revolutionary that people lined up at night to wait in line to buy the thing. Can you just take us back to that time and describe why 95 was such a big leap from 3 -1? So, Apple already had a graphical interface. One of those 3 -1 had a graphical interface. Well, why was when those 95s had gigantic leap?

30:10I don't want to make it as basic as the start menu, but I think it's a big part of it. I know when I first saw it, I couldn't quantify what about it was different and awesome, but I realized that I wanted to be a part of it, and that's why I started writing a shell extension which became a zip folder at some point but I was just fascinated by the new shell and that's why I went up working on the team that brought that shell over to the NT in what's Windows today. Would you say that's the greatest operating system ever? What's the most impact for operating system ever? When does it fight with the number two for me?

30:42I think OS 360 is going to be number one. Okay, interesting. Did you take a machine and write a cobalt program forward in 1962, jumping your time machine, go to Pekipsi and boot up an IBM Z17 mainframe and run it today. And they've been doing it for however many years that is. And it's all in the business side so we as consumers don't have much access to it, but I think it was probably as influential in the commercial side as Windows 95 was in the home side. And then probably Linux would be number three for me. I put Linux as bigger than Unix, which doesn't work because you can't have one without the other.

31:15But the impact of Munich's BSD and so forth is largely in the academic space. It's by programmers for programmers. So yeah, Linux created, I mean, it was the embodiment of the open source spirit at this largest scale. All right. So as we go, it's created a community. And it created a spirit programming that propagates to this day. That's true. That's true. like scale matters. Yeah, and as penetration on the server side of things now is, I don't know if it's equivalent to what system 360 achieved, but it's almost ubiquitous. So, yeah, the world, this is the quiet secret of the universe, is it runs on Linux.

31:59Okay, so tell me about the days, your work days, what were they like back then? Back in the MSDOS, Windows 95 days. Take me through a productive day. Well, your date starts coming in and you got to download the address book which is Microsoft has between 10 and 15 ,000 employees at this point And we're all on MS mail. We're just getting off of the ptp 11 called Miss Piggy, which were on Whizmail and We're running MS mail, but MS mail has a fixed address book that every user must download every morning and when there's 10 ,000 people downloading 10 ,000 people It gets pretty messy and I think we're on 10 megabit networking at the time So your first hour is downloading the address book, which was always frustrating.

32:40But you'd use that time to look at the crashes that would have happened overnight from a process we called stress, which is NNT. All the machines that are unused run tests all night long and they try to crash themselves. And if they managed to crash themselves, it will drop into a debugger with a serial cable to another machine and you can connect to that other machine and remotely debug the crashed machine. So you come in and they will have triage bugs. You know, there was a crash in the start menu, so we'll assign that to Dave. And so you come in and that's your first thing is to connect because you got to get that machine back to the guy that owns it and Unlock the machine.

33:12So That's your first hour of your day is basically tree on for bugs that have come up from stress overnight And then at that point is probably back to coding which unfortunately 80 % of the time is fixing bugs Especially in my career. It was porting code and fixing bugs I wasn't writing a lot of new code. There were exceptions. I wrote a lot of new code on the side to get it out of my system from a day to day grind of always fixing bugs in other people's code, which is amazing learning experience. So you did a lot of the at Microsoft, you did a lot of the porting of what is it when does 95 code to NT?

33:47Yeah, we took the entire Windows 95 user interface and we ported it to NT, which meant making it unicode for one thing. So everything that was eight bits is now 16 bits. So pointers it's it's quite a mess when you switch the code over. You can imagine. Can you give us insights in what is involved in porting? So breaking it into somebody's house and going through all their stuff and seeing the stuff in their drawers that they didn't want you to see. You find all the good stuff, the pretty pictures hanging on the wall and you find some disturbing stuff in the nightstand. I saw a code that was like 200 -some characters wide with, you know, profanity and swears in it.

34:23It's, you've actually got all cleaned up over the years by the time I left, but it was not always the most professional code in the world. Right, because every single piece of code you have to go through. Line by line. So you see it all. Yeah. Yeah. I mean, that's the, that's the story of programmers. You think you write a piece of code and you think you'll never, you'll never be seen by anybody and sometimes oftentimes that code is going to be seen by a very large number of people that come after you, including you five years later. You yourself looking at your own code. Okay, so tell me about Windows NT.

34:58That was a giant leave too. It was. It was basically a clean sheet design. So they went and they got Dave Cutler from Digital Equipment who had done operating systems for them, VMS and RSX -11. He had done. And so he came over after I believe it was Prism and Micah where some projects at deck west that got canceled. And so he had a whole team of guys with their projects canceled and basically they took a whole bunch of them and came to Microsoft I don't know the specific deal, but they all showed up. So you get Dave Cutler and Mark Likowski and all these really smart guys from deck. And they did basically a clean sheet, but they also had OS2 as a starting point.

35:35But OS2 is of course written in assembly language and NT is going to be written in C. So to what extent they were able to leverage any of that, I don't actually know. But at least they had a system to start with. You said that Dave Cutler is the man, the mind behind windows. Can you explain? So Dave Keller is the architect of the kernel. So he is Linus in the next world. It's Dave C in the Windows world Dave C and it's not that there weren't other people that contributed of course huge pieces to it But I think he's the driving force behind it and always largely has been and he's still I think he's 85 now He still codes every day.

36:12He's Microsoft fellow. He's far as I know still goes into work. So Can you speak to the genius of that guy like what's what's interesting about his mind having having worked with him having interacted What do you call it? Well, the dude's wicked smart, but he's also like a farmer. He's like the guy that will follow you around and make sure that stuff gets done and gets done right to make sure that you're not checking any crap into his operating system and he won't tolerate it. He's a real taskmaster in that regard, but I think it really paid off because it was a very big paradigm shift for Microsoft developers to be subjected to the Dave Cutler digital equipment style of leadership.

36:50What did you learn from that about successful software teams where there's a lot of people collaborating? As Microsoft had a lot of brilliant engineers back then, and like you said, they had to create completely new systems. Many of us still used today. What have you learned about great software engineering teams from that time? Tools are everything, I think, for one. We're talking people are everything. We'll just give that a granted. But the tool set is a huge factor. If we would have had Git, it would have been immensely easier. We were using Diff and manual deltas to do the sporting and stuff.

37:30So being able to fork a branch of source code would be a luxury that is new to me. So at the time, it would have been really handy. What were some memorable conversations from that time when you walked over next door? But what I was not present for was somebody was complaining, new hire came into the team and was working on what I believe was called Cairo and Cairo is going to be the next future operating system was going to be beautiful and have a whole new user interface newer than what is 95 and it never materialized but while they were working on it one of the guys was working on Cairo was kind of flaming on the open NT dev alias, which is thousands of people how shitty the anti -boot experience was and And the response that came back was an epic flame that I wish I would have saved that I won't name the guy who wrote it.

38:15He knows who he is, but it was the work of art of angry flame mail. Kind of like the one you see lying a center view now and then about kernel stuff. So it's a very similar sentiment. Were there like kind of intellectual debates? Like there's some heated stuff. It was years. Yeah, it got contentious. So you've got intellect competing and eventually the technical merits for some people a second day or even it's about besting the other person in that argument And it's no longer productive at that point half the time, but there was a fair bit of that Yeah, I've seen those kind of debates in like programming language design communities Like a grid of un -Rossum the leaders of those communities.

38:56You can wear them down because people get You almost like forget get the mission you're on and start being very nitpicky about the details. I mean, engineering minds get together and you just go to war over the stupidest like syntax subtlety. Well, I shouldn't say stupid, but it's a small syntax subtlety for it. That's for programming language. I'm sure there's internal battles about specific kernel components. Yeah. I mean, there's one that I lost that still bugs me for this day. I think. Yeah. Yeah. Because that's what I was right. Well, when we were doing the shell, we were reporting everything from acid unit code.

39:36So every character that was eight bits now becomes 16 bits. Now the problem is I'm on a MIPS box because I'm porting it to risk. And you can't have underlying addresses. But if you take two idealists, which are basically past components, you take the one for C, cool and backslash, take the one for Windows, take the one for systems 32, and you add them together. But if you've got an odd number of characters, now you're at an odd address in this thing. And it takes me an immense amount to work to turn on exception handlers to do unaligned bite access to pull the string out and copy it manually. It's literally like a hundred to a thousand times the amount of work to read a string out of this idealist on a remips machine because it's unaligned.

40:13So I'm having the argument that even though it's late and the one is ninety five, they've already shipped one beta that we should now just guarantee that IDs lists are always an even number of bytes or do some hack to just make sure this never happens so the code that references the monotone hard work and just blaze through it. And it became a shouting match and sort of a personal match and I lost that one. And I still think that I know today that that code running on Windows is thousands of times slower than it has to be and it nobody cares because it's pretty fast. But it could be a lot faster.

40:42Yeah. So, yeah, I mean, you mentioned MIPS and RISC. How deeply do you have to understand the lowest level? So, the lowest level of the software and even the hardware with the stuff you were building? What are the layers of the abstractions yet to understand to be successful with all the stuff you're doing with NT and before that with MSTOS? Well, about half your day is going to be spent debugging. And most of the time is going to be spent in call stacks that are in pure assembly language because there's no source level debugging. So it's not like we're in Visual Studio and you hit a break point and it pops up and there's the source code.

41:19You can go look at the source code, but you're looking at the raw assembly dump from the machine or time. Even if you're programming in C, the debugging isn't assembly. Yeah, 100%. Oh, man. So it's a little cumbersome. Oh, yeah. We're doing four instruction sets because we're doing Intel, MIPS Alpha and PowerPC. So depending on which machine it crashes on, you've got an entirely different instruction set that registers. So you get reasonably adapted debugging all four, but I had more experience in MIPS. So MIPS stuff would come my way. That's a real endurance event. I mean, can you speak to that the torture there's debugging, especially that kind of debugging without the without the tooling associate with it?

41:57I mean, that's you know programming Kiz these days Programming isn't all about creating beautiful things right it's also about Fixing things yeah, I would say that 20 % of my professional life has been creating and 80 % has been debugging and fixing Yeah, and I mean I got a bit of reputation as somebody who could fix stuff and so stuff like that would float I mean so I would spend more time doing that I wasn't renowned as a creative ui genius where I'm flowering all these new ideas So I got to fix ugly stuff But you get really good at that so I don't mind it until it's one of those things where you've been chasing It's for so long that you don't know what to do next and you can't understand why it doesn't work or how it ever worked or whatever situation you have to be in and You know after a day of it it can get pretty trying yeah that debugging can be real torture.

42:49It could be really, really difficult. There's a psychological component, I think, of perseverance. I think the ones that take you a day, they resolve one of two ways. Either it's like, oh, extra semicolon, and then you finally see it. Or it's some horrible manifestation of cross threaded department nonsense that was really hard. But it can go both ways. I had a bug, it wasn't my bug actually, but it was a manifestation of a bug in task manager, where every now and then, It would say greater than 100 % toll CPU usage. And this looks pretty silly for a task manager. So I had tried to resolve it for a long time.

43:23And I talked to the kernel guys about my issue, and they were unsympathetic, let's say, because the kernel guys are a special breed. And they weren't interested in my user land problems. It's probably some issue in my code, right? And they're probably right. But it wasn't in this case. And I was sure of it. And so I kept adding asserts all through the code to make sure that the preparatory steps of adding the stuff together were never more than a hundred and that the final sum was never more than a hundred and finally it never asserted but occasionally we would get this bug where people would still see it and so I finally put my phone number in the assert and I was like if you see this message called a PL at 45836 my phone number and finally we did get a catch in the actual stress debugger that I was talking about earlier where it happened to somebody with a debugger connected we were able to go through and it was actually a kernel accounting issue and it wasn't a task manager as you so they just fixed it in the kernel once I was able to prove that it was in fact the kernel issue and you think we would then remove my phone number but we just commented it out so it's shipped and it's in all the damn source code leaks for a teaser out there so that's how I find task manager code as I search for my phone number on Google and it will reverse find the empty source code.

44:32He speaks of the sort thing by the way I saw I think he tweeted or he said somewhere that if you want to take your source really seriously you add your your home phone number and that's true it's true a little facetious because it's probably not the smartest thing but you will find out but I mean assert by itself is already a serious thing because it stops at all execution I mean this is one of the reasons I really really love asserts because they they stop everything and force you to take care of the problem yeah I'm a little religious about my asserts too I don't assert things that I hope aren't true I assert things that I know So it cannot be true.

45:07And I think that's really the intent of an assertion. So I'm overstating the obvious. But when it does occur, it's a bug playing it simple. It's not a warning. It's kind of fascinating how often it can really help you figure out the problem. Because if you put a certs everywhere, you can get very quickly to the source of the problem. Yeah. It's not something that I want to suggest you go back and add later. It's something you should do organically as you build your code. So for each function, if you've got assumptions, like I know that this point there is never no, well, assert that. If you know this count is always less than twice the bite with assert that.

45:43And don't be afraid because if it asserts, it's doing you a favor. I think some people are afraid, you know, it's like when you turn out of an intersection and you think maybe there's somebody coming and you don't look left or maybe I want to do that. But it's like that. People don't assert because they're afraid they're going to fire. One though you want to know. You mentioned Task Manager. Obviously, we have to talk about this. The legendary program that you created, the Windows Task Manager. Tell me every detail of how you built it. What is Windows Task Manager? So, what is Task Manager's a way to go in and find out which apps on your system are using the computer, using the hardware, using the CPU, using the memory, and which ones might be using too much or locked up or going crazy and it gives you the ability to terminate and kill those ones.

46:25So, it's an inspection and a fixing tool. Yeah, it lists all the processes. I mean, it's the legendary piece of software. It's crazy. You just take it for granted. It's like the start menu, right? Yeah. It's like genius. Well, I had the great fortune to work on a lot of things that people are familiar with. And Task Manager was one of those side projects that I started as something that I wanted for myself and eventually came in -house. So I started writing it at home and I got kind of the basics up and running. And I was using, I think, as H .K. current performer, or H .K. performance in the registry to get these stats because I didn't have access to the internal API.

46:59It's because I was working from home and I don't call those as if I'm working from home. And when I brought it in -house, then I was able to call things like antiquarian system information or antiquarian process information and get the real answers very quickly, which enabled it to become a very fast responsive app. So people have come to rely on it because I wrote it to be as reliable as possible. I wasn't worried about the features. It was a basic set of functionality that I wanted in there. And I got everything I wanted, but I wanted it to be really robust. And so that and small and the original was like 87k.

47:28Okay, can you speak to what it takes to build a piece of soccer like that that doesn't freeze? You don't assume much right if you're going to call the shell to run an app Well, that could be a network path that's on a TCP a P share that takes 90 seconds to time out So anytime you do any kind of APL API call like that that could take time You're gonna wind up doing it on a separate thread and so the app becomes a little bit more complex because everything is multi -threaded Okay, so what programming language were you working in see so this was for windows nt? Yes So this shipped initially in nt4 Okay, so what is the mentioning details about this program because you have to get as simple as possible But also as robust as possible What is the interesting optimizations for example you have to implement there's a couple things I a little hardcore now I'm surprised I did like I didn't want to link to the sea runtimes at all So I'm sure never to call a runtime call and I didn't link to them and that saved me whatever the C runtime is 96k or something So you know almost double the size of the app if you just touched any C call So I was careful not to do that But then I was actually writing a C++ which is see with objects more than anything but In order to get it to work I had to go through and call all the object instructors manually from the dispatch table and stuff because you don't have the runtime to do it for you So you're working with a compiler that doesn't have its runtime and I don't want to rat hole on the technical issues But it's a lot of extra work to get it to work, but when you do it's incredibly small and tight.

48:53That's about the size Yeah, the program What is the machine aspects of tracking down like every every process on how much CPU usage One of the cool things that I saw is I don't want to say I invented hammock code But I kind of invented hammock code without knowing having code existed So every column and every row and task manager has a bit on whether it's become dirty or not, and then I can look basically the same way how many code looks in your X and Y columns to find at which rows have changed, go through and find out which ones actually need to be repainted. So task manager is super efficient and it works in concert with the ListView control, which provides that functionality to go through and repaint as little as an individual cell that changes from frame to frame.

49:36So it can paint very fast, it can resize very smoothly, And resizing was probably my biggest personal goal with that app. So you can size it to any size and it still works. And even if you have 32 CPUs, which wasn't possible in the day, it will draw, I think only 8 graphs and then it wraps. But it still works today. So kind of proud of that. It is incredible. You've got the chance to sort of observe the evolution of task manager. And in some ways, it really hasn't changed much. Maybe there's some prettier aspects to it that fit into whatever version of Windows it's in, but it's really basically the same thing.

50:17The function now is very same. The reporting is more because they've added GPU and thermals and things like that, which is really nice to have. We didn't have that ability in the day. I mean, what can you say, do you know about, like, was there any refactoring done or is basically the same code? As far as I know, the original code is still mostly all there. So there are layers of drawing code and dark mode code and whatever else xml schema code that goes on top of that That that makes it for megabytes instead of 87k, but that's the world with events Yes, one of those pieces of software you create and just state what once there is really like a start menu and then I'm sure if you remove it People will just lose their mind Yeah, it might be locked in for a while and that one would be good.

50:59Yeah, I thought that would be true for clippy, but I'll clip you and make it back one day. All right, what are some other pieces of software you created at the time that are legendary? So you were part of the space cadet pinball, at least porting. Yeah, so they came into my office and said, what are you doing? And I said, I told them what I was doing. And I said, well, how do you want to spend your next three months? I said, I have no idea. And you want to port pinball. And I had seen, basically, that pinball as a game stand alone for the 195 platform. And I had a couple of different tables. and it was a cool game, so I was kind of excited.

51:33What they wanted was some visual splash for NT to show that NT can do for that in high speed graphics and or at least responsive graphics. And so I took a shot and unfortunately a lot of the code was an assembly and I was on the MIPS so I had to rewrite the code in C so I could then port it to all the different platforms. And the harder the game is a huge state engine. It's like a giant switch statement with, if I remember like 50 entries in it. Yeah, and it's got an Easter egg built in and decoding the state it's like running a neural network through this thing as you hit it with different states And I just put it aside and treated it as a black box And so my code runs on top of that does the drawing and the sound and everything else But the original game is still running and somebody recently asked me why is it slightly different the physics are slightly different from When it was 95 version, but it should be the same code because I'm trying very hard to preserve that But what it is is I had a bug where I will draw as many frames per second as I can, which on a modern computer can be 5 ,000 frames a second for pinball because it's a pretty basic game.

52:39And so all your physics are interpolated 5 ,000 times per second instead of 30 times a second or whatever you would have gotten the old ones. You're getting arguably better at least different physics. But they fixed that since. Why is that game so awesome? I think it's a great design. I mean, I take no credit for that. That's all totally the guys at Cinematronics. But the original game is a great design. It's very similar to Black Knight 2000, which I own as an actual physical pinball machine and The layout is actually very similar. I don't know if it was inspired by her or not. So it's a good game Yeah Sometimes I think about like Tetris about certain games are pretty primitive graphics that Captive a the the excitement of a large number of people and And maybe it's the excitement of a large number of people that contributes to the awesomeness of the game.

53:26So when many people together get excited and talk about it, that sort of gets implendent into your head. But that's one of the great games. I mean, even like solitary and mind sweeper. I mean, there's just a generation of people that have gone to war and mind sweeper, right? Well, those things were included in the OS, not as games, but as educational tools to get you to use a mouse. Oh, interesting. Soil terror is there to show you how to do drag and drop. Yeah, and mind sweepers probably right click. I think you put a right flag or something Yeah, not a mind sweeper guy, but so each one of them teaches you something that's funny Yeah, wow, I didn't know that that's interesting and that's true But I don't know how many hours I've spent on these games and like millions of people spent millions of hours in these games I used to volunteer teaching computer science and my kids school, you know for the third graders and stuff so it's more like logging in the computer science, but But the kids of course, all their dads work at Microsoft, so nobody's impressed by anything you do, but someone of the kids found that I worked on pinball, and then they were like, whoa, you worked on pinball, because they all knew that in those days.

54:27Now the kids are probably aged out, they don't know it anymore, but for a brief period. You're behind the Windows activation. You say it like it's a bad thing.

54:40Everything's a matter of perspective. to tell the story of that. What's Windows activation? How'd you get involved? So there came to be late in the XP ship process. I don't know if the beta had gone out. I don't know if the beta had gone out yet, but they had intended to take the office activation code and then adapt it to Windows and add activation to Windows. But whoever was responsible for doing it had slipped it enough times that it wasn't going to happen. And so I had kind of reputation for being able to fix things quickly. So they came to me and said, can When you get this done in time for XP, I don't know, but I'll try.

55:11So with the help of the guys that were doing the DRM stuff on the DRM side and the research guys doing the math for the product keys and everything else, we cranked it out in time for XP. And I don't know what it actual impact is for revenue, but I imagine it's substantial when you start enforcing license keys. I wonder what it is. I don't know, because it's also annoying. It is, especially if you have to phone activate. And that was just the case that we had to carry with us as an Elbatross around our neck, where you've got the past data up to the clearinghouse, the back end systems that are going to approve your key, you've got to tell all your hardware parameters, like how much memory and hard drive space, and the various things the hardware key is bound to, as well as the product key, and you've got encoded in letters and numbers that somebody's willing to read in over a phone.

55:56And if you think doing product activation is painful over the phone, could you imagine being the person that worked on the other end of that line? I mean, that's just got to be a mind -numbing job to listen to product keys right hours a day. Yeah, one of the challenges with Windows, and it's been a frustration point for me, but I understand from a design perspective, it's very difficult, is so many different kinds of people use Windows. But it's been frustrating how over time Windows is more and more leaned into the direction of like the not the power user, I should say, just why Linux has always been really wonderful.

56:35But from an activation perspective or from any kind of configuration, it's been a source of a lot of frustration. Yeah, one of my more popular episodes of the late has been why you can't move the Windows taskbar. I had no idea, but the outrage is palpable amongst people that you just split on the left or top and you can't anymore and it is in a front of their existence. And I I understand it to a certain extent. What's one of the main reasons I really just dislike, there's a lot of aspects about Windows 11 at dislike, one of which is like you can't customize things as much about the position of the taskbar, just basic customization.

57:08Can we just configure stuff? Because there's going to be a small contingent of power users that are just gonna enjoy the hell out of this operating system. If you just give them that option, it costs you nothing, just give them that freedom. It does cost, right? because the freedom to put the start menu on the left or the top or the right really increases the complexity of the code that renders the start menu and lays out the tabs and does all the things. And now it's a much larger surface for bugs and it's a much larger piece of code to maintain. So you probably need more developers or any other developer or some person or developers time.

57:43So the question becomes at what point is it still worth it to satisfy the niche needs of a small all set of users. And I, I, those decisions were mine to make, but I can see it from both sides. I think just like the people who make movies and insert very nuanced details that only a small number of people will realize they're there, that's going to really pay off. There's a kind of reputation that builds over time that has a very powerful ripple effect that I think it has, it has so many benefits, including for hiring great software engineers, it's like you create this aura of a place that puts love into every detail, that really takes care of the power users, that takes care of the developers.

58:43I think Microsoft is more and more moved in that direction with GitHub and acquiring it home and just taking care of the developers. But on the Windows interface side, come on, some customization with VS Code, you can customize everything. Why can't we customize this, so many? Anyway, in the taskbar, and really every aspect of the Windows interface, I don't, I, of the complexity of the code. I suspect that's just not the case. I bet it was. I bet it was a scheduling decision when they rewrote the start menu. I think they rewrote it because it's different than the old taskbar. And somebody was tasked with you got to deliver this set of functionality.

59:28And if I cut out putting it on the left and the top and the right and two rows of tabs and all the other cool features, I can deliver it for a month sooner. And I'm not saying that's the right decision, but I'm gassing that might be the kind of thing that motivates it. And there are such a different release schedule now. It used to be, you won't see much craftsmanship unless somebody owns a component for a long time and it settles to a point that you can work on and polish it, right? But if it's always churning and the UIs changing every release, it's never going to get that level of polish. Although I think the UIs pretty nice, but I, yeah, it is nice, but I think there, I think it's, I just don't think it's a scheduling thing.

1:00:04I think it's a craftsmanship thing. Just secure with the task manager. If there's a guy or a girl in there who take ownership of it, who have like passion, like for them, it's a thing that they take pride in over a period of time. They can like buy themselves in a short amount of time, create something truly wonderful. Right. And like I think if you have large software engineering teams with managers and scheduling of meetings and all this kind of stuff. Yeah, okay. Then your argument applies. But if you allow the flourishing of individuals that create cool shit and like their own sort of the side project, which Google is very good at.

1:00:49They've tried that right? Yeah. Yeah. Have fun with it. Like do some crazy stuff and then we'll integrate it. We'll try to integrate into the whole ecosystem. I don't know. Yeah. Because like to me, there's it's such a great joy from an individual developer to create something like customization of the start menu of the taskbar because you know that millions of people going to use it. The taskbar and then you know that thousands, tens of thousands of developers might be using to customize even little subtle aspects of the taskbar. You know how much joy you create? You give to people to customize to have some kind of JSON thing where you customize something about the task bar.

1:01:31Okay, but how do you respond to the Steve Jobs aspect of giving you customization and applies that we couldn't figure out the right answer for you? Or maybe there is no right answer and all four answers are equally right? I have no idea, but I think I've always I'm glad Apple exists. It's a beautiful thing that ideal of design is wonderful, but I always thought that the Windows creates the contrast. Like the point of Windows is to be the operating system that works on all kinds of devices that just as much as supposed to be much more open and they've moved towards that direction more and more with Windows subsystems for Linux.

1:02:07It's just this whole developer friendly ecosystem. The interface should be in the spirit of that, I think. But I do think that there could also to be security vulnerabilities that create with that. It's not just the complexity of the code, because Windows is just under attack. Yeah, it's very difficult to keep it secure. Anyway, taking that tangent, you also developed a zip file support for Windows, creating VisualZip, like I mentioned, zip folders that eventually evolved into zip folders. Tell us the story of that. So that was a piece of software that I wrote at home again. And what happened was I was out with my wife and I think it was a Sunday afternoon we're driving around, this is 1993 and we're living in our apartment and we're just seeing what the housing market is like out there.

1:02:50And there's a guy, he's got this beautiful three bedroom house and a quervet convertible, 93 red, torture red, parked in the driveway and houses for sale and it's like 300K I think and there's no chance I'm coming up with 300K at that point or even the down payment on that. So I took the flyer and I cut the picture of the house out and I taped it to my monitor and that was my incentive to just write something at night because when I came home I was doing two things. I was one expressing a creativity that I couldn't get out at work when I was just fixing bugs. And I was trying to make some extra money.

1:03:22And so I wrote Shell extension. Before I actually went to the Shell team I started it and that's what led to my interest in going to the Shell team based on a MSDN sample or MSJ that the time MSJ sample that I saw on how to like bring up a folder. Well once I had the very basic bring up a folder template adding zip file support to it was just incremental all the way. And I released it as a shareware product. I think it was 1995 or 29 .95 and I sold whatever, a couple hundred or thousands of copies. And one day I'm getting ready for work and I get a call and it's a lady and she says, are you Dave Plummer?

1:03:55And I said, yeah, are you the guy that wrote, Mitchell's ip? I said, yeah. And she said, well, this is Betsy from Microsoft and would like you to come by and come in and talk about an acquisition of it. I said, okay, what building you in? I said, what do you mean? I said, well, I'll come by. And I said, well, no, you've got to talk to travel, and you've got to talk to legal. And this all has to be set up. But I'm like, I don't get it. We both work at the same place. Why can't I just stop by? I don't know if I said that literally. But there's a few minutes to back and forth where we both realized that she didn't know I work there.

1:04:22Yeah, that's fine. They just called called the author and then found out that it was me. And so they made me an offer on it. And it's the kind of thing where if I don't accept the offer, now my choices are I can keep selling my own version and quit Microsoft. or I can stop selling my own version and work for Microsoft. Neither of those is great. I mean, I keep my job, of course, but I'd like to still have this income stream. And the other options accept their offer, which is what I did. So then I bought a used 93 red corvette. And you got to continue building it internally. I did. So we took a lot of features out, right?

1:04:56To simplify, because it had encryption, it had a number of features that were common in zip programs of the day, but probably weren't appropriate for windows. And at the time, encryption was like a munition. So you couldn't just add encryption really nearly to various parts of the operating system. So we took out some things like that multivolume support I think was taken out just to simplify it. Can you speak to Zip in general, just the history of Zip and compression, that whole thing? It was really born out of the BBS era. When people were dialing in on modems to download trialware and shareware and other things from BBS's online.

1:05:33and to compress them, executable is compressible half their size, other stuff compresses much more, but a guy named Phil Cass came up with a command line program for MS -TOS called PKZIP, which was able to do compression of programs, and he has a rather tragic arc, but it became ubiquitous in the entire PC industry, and pretty much everybody was using it. So when Windows came out, there was no way to open up a zip file, but everybody had been creating them for a decade. And so that really drove the desire to have the zips of fork right into windows. Yeah. And that's another piece of software. It's just kind of with us to this day.

1:06:09Mm -hmm. And it could be vastly improved, but you know, it was written in a single core day. So it doesn't do anything multithreaded. And you've got a 96 core 7995. Well, it uses one of them to zip your file. What other awesome things are you a part of at Microsoft? What other pieces of software. I worked on the initial prototypes of Windows Media Center. So we did that in 96, I believe. And we didn't have at the time any sources. So we had like a CD of MPG video files of Raging Rudolph and I think the original South Park video and the Christmas one, which is all wildly inappropriate in the workplace today, but it's all the content we had until we got actually we had them put a satellite dish on the roof of DSS, whatever the teenage dishes, because we couldn't get cable to the building.

1:06:55And so we built up this thing that would eventually look a lot like media center. And it was distance viewing UI for Windows, so you could sit with a remote control on a desktop and have, you know, the current start menu is not great at 20 feet away. So tell me the story of the infamous blue screen of death. What it is is when Windows has no other option when the kernel gets into a state where something illegal has happened. So let's say a device driver is trying to write to a piece of memory doesn't know. or it's trying to free a memory piece of memory twice. Something that just cannot happen and the kernel has no other option, it will shut the machine down to save your work and we'll not save it, prevent further damage.

1:07:31And it puts up a blue screen and it prints out the stack information, depending on how your settings are, sometimes it's just a sad face in the current windows. Yeah, I wonder what the first version of Windows or the blue screen came to be. So Windows 3 had a blue screen, but it's completely unrelated to the blue screen of Windows NT. And I talked to the guy that wrote the blue screen of Windows NT, his name's John Vert. And the reason he picked white on blue, I had thought I'd always heard because in the labs you could walk through a lab where we have 50 PCs all running stress, all that ones that got a blue screen, it's crashed.

1:08:06It wasn't that simple, it was just the MIPS firmware that he was building it on was blue on white. And his visual slick edit that he was using as an editor was also the same color scheme. And so you could code boot crash and reboot all in the same color scheme. What do you think so many problems with computers can be solved by turning it off and turning it on back again? I think there's two major things that happen with computers as you run them over time. One is memory gets used and not freed. And so it accumulates on the heap or in the swap file or wherever and things get sluggish. And the other is code gets into a state that the developers didn't anticipate or didn't test very well.

1:08:44And maybe that's a rare state, but now that no pad or word or Excel is in that state, your system is goofy. So if you just reboot the thing or shut it down or restart it, you're getting a fresh state and there's no memory leaks. So it covers a lot of sins, basically. And the intricate ways that several pieces of software in the goofy state interact with each other creates sort of a meta goofy state that just kind of the entire system starts acting a little weird. Yeah. And then some hall fixes it. What's some of the best in the worst code you've seen during that time, Microsoft? What's some beautiful code and what's some ugly code that pops to memory?

1:09:25In terms of beautiful code, there's two that stand up for me. One is the kernel in general. When you get down into the Windows kernel in the actual NTA APIs and stuff, it's very well written. And it's written to a standard that you don't see on the user side or at least is uncommon on the user side. On the user side, probably the coolest codire I remember seeing was a guy named Bob Day wrote a named pipe implementation to eliminate the use of shared memory. So Windows 95 had a big shared segment amongst all the shell processes where it would store stuff that was common to all the shells. We didn't want to do that.

1:09:57Shared memory is a bad idea on NT and industrial level. So he came up with a way to do it with name pipes and I remember doing the code review on it then it was very impressive to walk through the code. It was one of those things was like, oh, I don't think I could have done that if I was trying. Who's the greatest programmer you've ever encountered? You know what? I don't think there is anyone. I've met a number of great programmers, but I'll tell you one story that impressed me a lot was when I was brand new at the company. I've been there like six weeks and I'm working on this OLA presentation cash that I mentioned earlier.

1:10:28And I'm on Windows 95 and I've got Excel inserted into Word and I'm in the kernel of the bugger and something's going wrong in the scheduler. And I've been there, you know, I've barely written any X86 code and I'm looking at the window scheduler trying to figure out why my thing is deadlocked. And eventually I get stuck, so I'm kind of out of my element. And I send an email to the Windows 95 kernel team and say, could you send somebody by? And so about 10 minutes later, this developer strolls in and they're just holding a null modem cable, which is to connect my two machines together so they can debug one with the other in case I didn't have it, but it was already set up.

1:10:59And so they sit down and they're the cursed, but they're very, very competent with it. And they are just blasting through the call stacks and they're checking all these objects in the kernel and trying to find out who's waiting on what and why things are deadlocked and what's signal and what's not. And it's just this quick silver ballet of call stacks flying by. And I'm watching this and I'm pretty blown away because I'm a good programmer, but this person is an amazing to bugger and I've never seen a performance like this. And about five minutes in, I just hear, oh, I see. And then they disconnected and got up and left.

1:11:37And that was Laura Butler who became a distinguished engineer at Microsoft. I think she may still be, I'm not sure if she's retired or not. So she kind of set my template for what Microsoft developers were like when they were debugging and what kernel developers were like and even what female developers were like because I had such a small sample set. But it was very high standards. There's a few things I love in life, more than people who are ultra competent at anything really, but the lower level of the better in the engineering space, they're able to, for example, like run or maintain the infrastructure, the computer infrastructure.

1:12:09So not the individual computer, but the computers communicating together and working together. Those people are just magicians. Right. It's so inspiring. It's like watching a great carpenter or I love anything done really really well. Yeah, it's beautiful to see It's beautiful to see that humans are able to accomplish that even in civil engineering space when I look at like bridges It's like the number of people they had to come together to build that and now millions of people use it every single day With software sometimes you don't get to see visually just the number of people impacted by thing Imagine how many people are impacted by Linux and all the different open source systems that make up Linux.

1:12:54It's incredible. And task managers, an example of a piece of software, just how many people use that over the years and how many times. It's crazy. There's billions of you. Yeah, two billion a month or something. Two billion. Something like that. I have seen the metrics and it's up to you. Crazy to you. It is. What I love about it, though, and I'm sure you've had this experience where sometimes you design a piece of software and it's complex and you get it working in your head and you get the plumbing working and you know how it's going to run and flow and that eventually you write the code and the code does that thing and that you have pictured in your head.

1:13:26And now there are billions of copies of that thing that I had in my head running on millions of people or billions of people's machines and that in itself is really cool to me. It's not a vanity thing so much as a, I'm impressed by it, I guess. How's your programming evolved over the years? I take a lot more care in complexity these days. So it used to be you would write code and just keep writing code and write code and then at some point go back and clean it up. Well, I write the other way now. I try to write really clean initial skeletal code and then flesh it out because I have been involved in too many projects of my own end of other people's makings where things get so messed up that they're just not fixable.

1:14:07So sometimes the work you put in upfront pays off, you know. What programming languages have you used over the years? What's been your main go -to? For me, it's been C++ and assembly language. And still to this day, C++ is really what you lean on. Yeah, right now I'm 100 % Lua and Python, but that's just side project I'm working on. Can you speak to the Lua and the Python detour that you took and what do you love about C++? What I'm doing is I wanted to build an AI to play the game tempest. That's the old Atari game tempest. And this is a game that I actually hold the world record on. And he took me to this Atari game tempest.

1:14:45Okay, Atari tempest. What kind of game is this? So it's a 3D vector game from 1980. And it's a very complex game. You got full 360 degrees of motion. You have 8 shots on the screen. There's like 11 enemies. There's spikes. So it's a very complex game. It's not like trying to, you know, do pong or something. Okay. And what I want to do is first take in the ROMs out of the machine and reverse engineering the code. So I got a sense of where all the code in Tempest lives and what it does where the zero page variables are, where things live. The other one. So what, oh wow, that's a very geometric. Okay, what can you explain to me the game plan?

1:15:22Can you explain the game right there? This is literally you plan. This is me, David's the highest score you'll see. The top center. Can you explain to me what I'm looking at? Well, it's a 3D geometric world. It's basically 3D space invaders wrapped into a shape. And the enemy is descended from the center of the tube towards the outside and they all have different behaviors. Wow. So long story short, it's a fairly complicated game to play well. And I wanted to see if I could get an AI to do it. And so once I had figured out where all the interesting parts of the game lived in memory, I added them as parameters and built a Lua app to extract everything from the game's memory as it's running.

1:16:00And putting together those parameters, which sends us to the Python side over a socket, and then the Python side does RL learning. I'm using a dueling deep queue and I believe, with two head and tail, and they chase each other, and it can play up to about level 36 now, which is way better than most humans, but that's level 96, so it's got a way to go yet. And you're the red thing, You're controlling the right thing that's shooting. Okay, what are the options you can just move clockwise or counterclockwise and then you can shoot. Yeah, so you have a rotating knob, which is an optical spinner and you have a fire button and a super zapper for emergencies, but that's it, fire and rotate basically.

1:16:40All right, let's get back to your favorite C++. What do you love about C++? Why have you stayed with it for all these years? Because it allows me to encapsulate my favorite C code in classes. I'm not a big... Well, I actually... You're really a C guy, okay? Yeah, I'm really a CGI. Although I write two kinds of C++. I write really modern C++ 20 using no pointers, no string or no character strings. So it's basically as safe as rust as far as I'm concerned. Or I write C with classes, which is standard C, but with polymorphism and encapsulation. And that's most of what my code is. But I try to do both.

1:17:17Let me ask you about the whole stretch of time that kind of skipped over. You built a lot of software over the years after Microsoft on the side while at Microsoft and afterwards a lot of successful pieces of software one of your companies was software online and it got at the trouble for nagging users too much I guess. Yep, top grade. That's what I saw. What was all that about and what did you learn from that experience? Now that was other than like family health scares you know when kids are sick that was the scariest time in my life and the period leading up to it was one of the most invigorating and exciting because what had happened was while I was at Microsoft, I had written all these shareware utilities and I was selling them on the side and sold one to Microsoft as we talked about and they started to do really well and that had discovered banner advertising online.

1:18:04And so I signed up with my credit card for a site that I think was called FastClick and you could say, I will pay this much for a banner ad impression. Here's my banner and it would rotate it in and I didn't set a cap on it. I came back on Monday and I saw it spent like $10 ,000 in banner ads. I was like, holy crap, how am I going to explain this to my wife? This is a bug, it's a mistake, it was my fault. And I looked at the sales and it had made like $38 ,000 worth of sales. And I was like, holy cow. So all I have to do is scale that at some point and basically did that for the next several years.

1:18:37And the reason we got in trouble was the AG came in and they had, well, I was blowing away because they had like 12 claims of action and 10 of them were outrageous, which to me as a person with autism, I couldn't get past. It's like, I know these 10 things are obviously not true. Why are we even here talking about them? And all they cared is the two things that might be true. And the two things that might be true were that it was a 30 -day trial version. And after your 30 days were up, it would then, if you continued to run it and not buy it or uninstall it, it would remind you once a day, not like every 10 minutes, but once a day or every time you booted your computer bad most once a day.

1:19:12And the AG contended that I was too often, it amounted to spam. And so we agreed with them to limit it to once a week, I believe. And you know, it had to be buttoned to just uninstall with one click. So we did those kinds of things. The other one was, in those days, when somebody bought a piece of software, even though they bought it online and got it downloaded, they fully expected there would be media showing up at their house. So in the year 2001, which was 2001, 2003, we were talking about, if you bought software, there was an expectation that a disk would show up. And so we made that the default was to fulfill by disk.

1:19:43and it was 3 .95 or 4 .95 extra. And it was very obvious, but it was a check box and it was turned on to ship the disk to your house. Because we found if we didn't do that, we got all these calls, people would wait to be in order two weeks later, call where's my disk. And we'd look way to an order disk. Well, cancel it all, I don't want it. Because I'm not waiting for it. And so we got a lot of returns and we didn't include the disk and so we decided to include the disk, but that is a priori violation of negative affirmation billing in Washington State because you're giving them a default higher purchase price.

1:20:11What about on the software user relationship? It's interesting, like how often to annoy the user with the thing. Right? If you never mention anything, they might never discover something they actually want. But if you mention it too much, then they can get annoyed. Yeah, and what you don't want is you don't want them to have to do it or buy it or do something to get rid of it It's one of the things that bothers me with I Think Windows does that a little bit still to this day where it bothers me by asking me certain questions Like do you want this like? It for example, I really don't like to use my Microsoft account to log into Windows right?

1:21:04I think now it's like basically requires. I think there's just no way around it but like they make it so difficult to not do that. It's almost like they think they could just trick me into, it really does feel like I'm getting tricked into not doing what I want to do. I have to like think, okay, I need you to click skip and I'll do something, are you sure? Like I have to like use too much of my brain to do the thing. I like you know as an interface you know what I'm trying to do you're trying to trick me into not doing the thing I want to do and what I hate about that is like It's probably effective sure for converting people but it's really Not good long term for taking care of the interest of the user Yeah, the one that really throws me is the use recommended settings So I just did it when I was upgraded way through the steps and I'm going through this new dialog or wizard and use recommended settings.

1:22:09Sounds like the thing you should do, but I'm pretty sure that research is using the edge browser and all this other stuff. So yeah, recommended by them, but not recommended for me. And that's the difficulty. That's a really good example. What effect do you think that does in resetting the default browser to edge? Do you think you're going to really earn the loyalty of a user if you do that? But don't you think that they're actually what you're going to create? You're going to create some passive loyalty from some user base. So on the metrics, it might actually look like you've increased the number of edge users.

1:22:46But really, it's that reputation hit you take over time. It just forms where the edge is the thing that you can't quite trust. Unfairly, because I think edge is a really great browser, but just this unpleasant feeling. I don't know what that is. Well, you don't want your operating system to be an adversary, right? Sometimes Windows can feel adversarial. It doesn't have your best interests at heart. And that bugs me to a certain extent. I mean, we have this feeling, I think, where you just have general distrust on somebody is super nice to you and is basically selling something. There's a certain aura about that kind of interaction.

1:23:25And when an operating system is interacting with you in that way, it's like, I would much rather pay $199 for Windows Pro per year or $20 a month or whatever the fee schedule would be and not be upsold any further and not have my data monetized and those kinds of things. So did you learn about finding the right balance from that? Yeah, I mean, I'm weighing myself away now. There's things I would do much differently. It's particularly in terms of the advertising. I always figured there's kind of David Ogilvy and he did this ad long ago for the Volkswagen Beetle where it had a picture of a Beetle, black and white and I just said lemon and there was a block of text below it.

1:24:00So it's click baity and then informational. And I always tried to follow that pattern. But there's three ways to sell something I think and you can use sex, fear, or greed and sex doesn't work really well for software. Fear works well for antivirus and stuff but not so much for optimization and making computer faster utilities. And so I always tried to cater to the greed aspect. You know, make your computer faster, get more ran available, whatever the value proposition is. But I realize now that I'm looking at that with my knowledge. And as an autistic person, I now have an appreciation that other people are going to look at it with their background knowledge and make includes something different.

1:24:37So I might be scaring people where I was just trying to incentivize or get their greed instant going. So I'd be more sensitive with that kind of thing today. Ridiculous question, but what do you think is the top three windows operating systems, the different versions. I'm a fan of Windows 2000 server. Wait, what? Really? Yeah. Okay. That's what I ran my business on. I ran my brother's business. We set up multiple salons, all VPN to one another and using the SQL server. I don't know if I ever got into experience with those 2000 servers. So when was XP out? 2001. What was before XP? 2000. 2000. Was that good?

1:25:16Yeah, I liked it. I mean, it doesn't have the visual flash that came with XP, but as a system, and especially as a server operating system It was great for the day. But the next P was I would say probably From a completeness perspective and impact and how long it lasted and it's probably the greatest Windows from for consumers the operating system. I would think so. It's certainly got the longevity for it Because people would still run it. I mean, I'd still run around stuff if you get security updates because it does 98 % of what I need a Windows today But yeah, that was incredible. I mean nine so Windows 95 I probably put Windows XP is number one for me and Windows 95 to what's your metric personal preference or industry impact or industry impact stability just That there's certain like just like with programming you have code smell just like how well all the features were or just orchestrated together how there's a a design philosophy that permeated the whole thing and was consistent, not too many features, not dumbed down too much, but not overcomplicated.

1:26:23How often it crashes the blue screen, all those things. I don't know if it's a very app description, but I think of it as crisp. So it's not a lot of rough edges. It does what it does, it does what's an appy and. Yeah. You said you placed slot machines, and given that you love hardware and software, You're the perfect person to ask how do slot machines work? Well, I'm happy to ruin them for you. Okay. So It's ironic to me that I play slot machines because I know it's a losing bed overall But there's a whole dopamine feast there of bright lights and high contrast colors that I enjoy so I do play them But what happens is internally there's basically a black box mechanism that does nothing more than Generate the next random number and what the outcome is in terms of probability and payout.

1:27:07And then the game says I got to make up a movie to go along with that, maybe it's three bars or whatever it is, but there's no correlation. It's not spinning the reels, seeing where they land and looking that up to see what you want. It's completely the other direction. It determines whether or not or if you want and then make something up to fit that scenario. That indeed is ruining it for every little bit. What kind of code runs them? I don't I really know, I tried to get down and get inside access to one and it was very hard. They don't want to tell you a lot about them. I'm sure it's not that deep of a secret, but because they're all basic Windows PCs, but they're basic Windows PCs on top of a very secure enclave of some kinds that I don't know a lot about.

1:27:47Yeah, it has to be extremely secure, right? Yeah. Well, in the 70s or 80s, there was a tech in Vegas went around and he was burning his own roms for the slot machines and with a back door in them. And so when he served us the machine, he would just put his ramen and he'd come back six months later and Nice invoked the back door. I love humans so much. Anyway, do you have other other favorite kinds of All systems like that. I like a lot of old hardware. I restore cars. So I do a lot of 1960s muscle cars cars and trucks and Old computers. So I restore PDP 11s has been my fascination and my special interest for the last six months or so and I've built a number of those Yeah, you, I've seen like you posting videos about it the PDP 1183.

1:28:32What's that whole project? So basically what it is is I had built a number of PDP 11's and so over the years I had acquired all these parts and I decided well let me build the best PDP 11 that I can. And so it was kind of a quest to just like you'd try to max out a PC I tried to max out a PDP 11. So it's got four megabytes of memory, which would be massive in the day. And you know, it's it there. And it's got lots of blinking lights. And I had to rewrite the BSD kernel to make the lights work. And what are we looking at here? What is what's? So the very top is a PDP 1170 control panel, which we can largely ignore.

1:29:07And then there's two chassis below that one has what are the different knobs? Sorry, that has dumb questions here. The knobs in control. What view you get of the LEDs? So normally you see the data bus and you can see the address bus and you can pause the machine and you can edit the address on the bus and you can deposit stuff into memory with the switches. Man the haptic plus the LEDs. That's what you like imagine a computer to be. That's so cool. That's so cool. These are what what are these? Do you want to do? Yeah, it's a weird floppy drive. It's a dual floppy drive with one stepper motor.

1:29:43So both heads seek together like Simon these twins. Okay, so what are we kind of stuff you're doing with this. What do you try to restore them? Yeah, so I restore them. And actually run. Yeah. All the blinking lights are real. Yeah, it's all real. Wow. Then I had to rebuild the kernel and all that. So I learned the BSD kernel. I'm pretty familiar with it now. Because you can't just add a device driver, right? You've got to rebuild the kernel to add support for whatever device. So you add a new disk controller. It's time to build the kernel. So you got to go find the source and find the code and you can run code on this.

1:30:15Yeah. You've written a couple of books on autism. Being autistic yourself, I was wondering if you could tell me about like fundamental differences about the mind of a person with autism versus a, let's say, a neurotypical individual. Well, the fundamental theory of thought for autism is called monotropism. And basically what that means is that my brain does one thing. It does it very intensely. And then when it's done, I can move on and do something else. But I'm not a multitasker. I'm a serial single -tasker by any stretch. autism usually brings with it sensory sensitivities and repetitive behaviors behavioral issues that compound it.

1:30:52And if they rise to the level where an individual can't moderate or accommodate them in their life, it becomes a disorder. And that's probably 1 to 2 % of the population. What's the biggest benefit of life with autism? I can bring to bear an incredible amount of focus and dedication on a particular task. If it's and it has to be something I love that's something that's rewarding and that's something I can make progress on and there has to be all these things that are true about it and they can be like a kid playing with trains I get that same feeling That said you also Said that you struggled with ADHD.

1:31:26Yeah, fair bit. So that's part of the component like maintaining the focus you were actually acquiring the focus is the issue so I'm very easily distracted I fall asleep with noise, canceling headphones or I can't fall asleep, that kind of thing. But once I get locked in, I'm very hard to distract. So it's kind of a paradox. Oh, that's fascinating. It's hard to get into that state. Okay, what's the biggest challenge of life with an autistic mind? That I don't know what anybody else is thinking. So I know what I would think about this interaction. If I was in your position and I was you, and that's the best I can do.

1:32:00But I think most neurotypical people have a sense. They've probably feels this way or that way because he's acting this way and his reactions with this and it's facial expressions say this and that's all kind of lost on me. So I run a little proxy NPC game for everybody I deal with. So I guess that makes social interaction a little bit complicated. It can be, yeah telephone is especially hard because I rely on a lot of other cues. And when somebody is just on the phone and I just have their voice, there's so much that's implied between people that I miss. And so I'm much better on FaceTime where if somebody makes a joke, they might smile after where on the phone.

1:32:33I don't know if you're being sarcastic or serious and that kind of thing. So that's probably gotten you into trouble over the years a bit. Yeah, there's lots of times with my wife too, where, uh, well, there's a certain literalism that comes with autism. And we spent years where she would say something, and I'd say, but that doesn't make sense. She'll, you know what I mean. I'm like, no, I know what you said. And I'm not being just combative here. I literally only know what you said. And I don't have that. And, uh, I'm a ribbit in meetings with people. And, uh, you know, there's three or four people in the meeting.

1:33:03And I'm the only autistic person. I'll tell that they've got this communication loop going on. And I have to like, you can't tell me what's going on because I really don't know what's being said here. So you told me related to this that there was an early somewhat awkward encounter with Bill Gates. Can you share this the story of that interaction and how autism comes into play here? Yeah, my very first summer Microsoft when I got the internship, Bill had all the interns over. I guess it was 20 or maybe 25 of us that got hired that year over to his house for burgers and beers and just chatting the backyard and Of course, it still bill gates and he's the big enough deal even then that you're a little nervous And so my manager Ben who was sort of my mentor and at the time took me over to introduce me to Bill because he knew him And he's explaining this is Dave He's our intern from Canada and in the space of four months He's done this feature and just copying smart driving listed off all stuff I was doing but I stopped because I'm like Well, actually, it was three months.

1:34:03I had to interrupt them and they both kind of, what, and they looked at each other and I realized that was the wrong time to correct a guy. But the... Yeah, so you, the bottle, like little inaccuracies. Oh, it drive me crazy. Yeah. And then you of course, you don't, the impact that might have on a casual social interaction, It's not trivial for you to be aware of that. Yeah, I'm much better than I used to be before I didn't know, and I didn't know how injecting a correction meaninglessly into a conversation could impact to make the other person feel now I got a better sense of it. What advice would you have for folks who have an autistic mind, on how to flourish in this world?

1:34:50In terms of prosperity and finances, the biggest thing I can say is, sell what you can do and not yourself. Because if you go into a job interview and you try to wow them with your personality and how amazing you are, it may or may not go well. But if you can go in with your portfolio of work and say, look, here's my GitHub history and here are the awesome projects I contributed to. And here's the actual algorithm I wrote. And this is what I do. I think you get a lot further with that. So whether you're playing the piano or writing code. That said, so much of software engineering on large teams has a social component to it, right?

1:35:23It does and that was a liability for me. What had you learned about how to solve that little puzzle? I think the biggest deficit for me was when I started to manage people because now you're concerned about their hopes, dreams, aspirations, what motivates them. They have a entire lives that are kind of a mystery to me because I assume they want to be motivated and led and encouraged and compensated exactly as I would. And that's not always the case. Some people need a lot more affirmation, some people just want money, some people want to be in the important meetings and make decisions, but I was largely oblivious to that.

1:35:56And so eventually I had to learn that everybody that you're managing has their own set of incentives and priorities and they're completely different from what I think they probably are. So you could, I guess, make things more explicit and just communicate better about, like, ask them about what their interests are. And that's something I started doing is overtly asking because it's hard for me to nudge somebody there, I'm not good with that kind of social dance. So yeah, part of the social dance is there's a lot of stuff that's unsaid. You can kind of figure out. You can read people. But if that's, you know, with autism, it might be a little bit difficult to do that.

1:36:35And so you have to make things more explicit. Plus like sarcasm and satire and humor might be difficult. I would love to be a fly in the wall some of your earlier interactions. I mean, some of the greatest engineers have in mind like this. So I've had lots of thrown at me and stuff and I'm sure it was my own fault. You write about the 10 second autism test, because you explain how this works. Yeah, now there's of course anything that has two answers has a higher air rate, but so what's more important to society as a whole from the people is a cooperation of creativity. If you had to pick one, which is the most important?

1:37:11And most neurotypical people will generally be in towards cooperation, whereas people on the spectrum tend to lean towards creativity as individual problem solvers. Of course there's some kind of error right there. So if you want a double year precision you can use the second test which is you ask there's a room with 10 chairs and six people come in and sit down in those chairs. How many chairs are left? Now some people are going to say four but I'm going to say 10 because that's how many chairs are still there, literally true. And I'm not being a dick, I'm not trying to be complicated but that is how my mind works.

1:37:42And so when I see that question, it's like, how you answer it. So you're how literally you take things? Yeah, everything is very literal for me. I remember as a kid, my grandfather was building a planter holder in the kitchen for my mom. And he was just these big angle brackets that I thought were a little overkill. And I said, do you think that'll be big enough to hold the plant? He says, it'll be big enough to hold a horse. And I was only five, but I was very confused about A. Y. you would bring a horse into your kitchen. and why he would put a horse up on a plant. There are all of these things that didn't make any sense to me, but obviously it was a figure of speech.

1:38:16But for a lot of my life, I took figures of speech as literal. So you mentioned emotional post -processing as a strategy, you used to replace social interactions. So you can sort of reverse engineer to help you understand the New York typical world. I think this is gonna be useful to a lot of people. Like what is that in tail? How does that help you? So if I meet somebody particular, somebody new, and it's my first couple of interactions with them, is not even meeting you today, then I will go home later and replay all of the moments where I had choices to make and probably the most uncomfortable ones first to find out what did I do wrong in that moment, what did I miss, what was the other person thinking, how can I improve that kind of situation next time and do I need to go fix that or make a phone call, that kind of thing in a bad extreme case.

1:39:04But and that's happened a couple times in my life. like I had a car restored that my dad had bought new in 69. I still have it. So we've had a 50 years and about 20 years ago I had it restored and it was like a three -year process of craftsman working on this car for thousands of hours. And I go about to pick it up and I'm inspecting the car and I'm very impressed with the work and I'm saying oh this is nice and this is great and everything else and then I fly home and write the check and the car gets delivered. And then I realized probably 10 years later that I had a whole bunch of craftsmen that worked on my car for three years and I probably should have blown some smoke up their butts but what a great job they did but I never did that because it's not what I wanted or needed in that moment and I was completely oblivious to that so I sent an email to the manager or to the owner of the place and I said I didn't know if you remember this but 10 years ago I picked up my car and I probably looked on impressed but I want you to know that I was very impressed with everything in the quality and we else and he wrote back He's like, I thought of that moment often.

1:40:00So I'm like, now I'm going to let it out. There's subtle things about human interaction that mean a lot to people. And if you ask them straight up, they might not be able to sort of articulate that, but it means a lot. And when it's off, when something is off, it bothers them. But to reverse engineer that, to figure that out for a person who might not sense those little subtleties of human interaction, it's tough. As a good point to jump in there too on empathy because there is some perception in the community that people with autism lack empathy And I don't think that's the case at all. I could only speak for myself.

1:40:36I feel fairly empathetic But I think the problem is a communication one and it works in both directions where it's I don't know how you're feeling So it's hard for me to be empathetic with it until you communicate to me what it is you're experiencing And then once I know once I have an understanding was going on your head I can feel incredibly sorry for you, but other until that I'm going to assume you're going to handle it Just like I would in your position in my case with what I know now What advice would you give to people like on the other side? How they can help you Be a better friend or better partner or better colleague Like how this should communicate with you to help like give more information.

1:41:12Yeah, be really specific and Don't assume I'm gonna pick up on clues and nuance and subtlety So if you're trying to nudge me into particular behavior, you're much better off saying Dave. This is what you need to do. Have I failed in any way today? No, not yet. All right.

1:41:31What score would you give me? 1 to 10. My six, seven, I come on. Communication, seven, five. Floating point. Nice. I'm asking you got to tell me what that is. It's a significant experience from any spectrum. What is masking? And tell me about any of the experiences you've had with masking. So masking is, and it's probably not the right way to describe it, but it's the act of acting normal. And that is, how do I conduct myself in a social situation in a way that other neurofthiocal people are going to, or that other people that who are newer typical are going to receive even accepted the right way.

1:42:13And everything you do in a social interaction from waving my hands to taking facial expressions to tone a voice, to posture, it's a huge contrivance and it's work. Yeah. It comes natural to most people, it's just what they do. And cool people do it really well. But for somebody on the spectrum, you've got to fake it all. Yeah, acting normal. There's a song by Rush, you know the band? Yes, limelight and written by Neil Perkth and I only speculated about people who have passed on so I've got a sense. He was probably on the spectrum But the line is something like all the worlds and data stage and we are merely players performers and portrayers each another's audience And he talks at length in the song about you know not being able to treat strangers as friends and Being able to fake an affect and all that so it seems like he's struggling with masking a lot in the song and I have no idea But that was what I took from it.

1:43:07Yeah Yeah, you described meltdowns as an overwhelming experience. You described meltdowns. What typically triggers a meltdown? Generally it is. It's when you're emotionally overwhelmed to the point that you can't manage your behavior anymore. And so you see it in the movie, a rainman when he's trying to get on the airplane and he's kind of forced and he starts blusin it. That's a meltdown. Or I've seen it on. They did kind of a, well, actually probably the best portrayal I've seen in media is, what's the TV show where the doctor is autistic? Anyway, there's a TV show where a doctor is autistic and he's a surgeon and he is eventually banned from surgery because of his autism and he's always wanted to be a surgeon and he has a complete meltdown and it's a pretty good portrayal on television.

1:43:50What is actually happening, like there's the gethreshkolliacross, it's just like... Yeah, and a switch flips. It's the blue screen essentially. Yeah, kind of for the brain algorithm. So a switch flips, you go kind of a primitive brain, your frontal cortex shuts down to an extent, I think, so you don't have the benefit of decision making and filtering. You're very reptilian brain in that state. And it's really a panic state. And so it's a panic and a fight or flight response to not being able to tolerate the current reality. And perhaps it's been so frustrating or you've been so randomized or you had a bad travel day or argument at work or whatever.

1:44:26It's added up to the point that something has now triggered you and your brain loses its ability to adequately moderate your behavior. What about love and relationships? What are some of the challenges of that? And you know, there's a show of love on the spectrum. I've heard of it. I've not seen it, but I've heard about it. Because certain aspects, like literal interpretation of things, it just makes the complexity of relationships, of romantic relationships, even more explicit in that context. You know, I've been married 31 years and together for 37. And so, a long history there. And I think our first indication that we knew we were very different was we were sitting in a car one night in front of the house at dark.

1:45:08And across the street there's kind of a nice house that has these big brick pillars that are linked by like anchor chains and it forms a fence around the yard. And I'm looking at these things because they're about two feet square and I got a cap stowing and I'm like no wonder if they're hollow or they backfilled. They film a concrete or what? And my, now wife looks at me and she's like, what's wrong with you? What do you have a place in your head that cares about that? Yeah, and it's great. And it's just a deal in the moment that I was passionately involved in caring and she was passionately involved.

1:45:36And why would you even worry about that kind of thing, and knew her very different? Yeah, very specific seemingly irrelevant details. But I was never good with people, I don't get it when people like me, I guess. And so my son is the same way because they don't fall very far for in three. and I got him a t -shirt that says, if you're hitting on me, please let me know and be specific because I'm clueless. And it's very similar for me. I mean, I had to be around a long time and kind of grow on people because I had no game because I had no ability to do the social dances that that whole thing requires.

1:46:11So my only option is to just be myself and that works for some people. We able to say like, I love you, that kind of stuff. Yeah, I mean, her family was way more open with that kind of thing than mine was. And so it was a growing period for me, but yeah, it's not a problem I have. Okay. All right. But it seems like an important, like what is that actually accomplishing? Well, now we do a lot of affirmation and checking. Like in the last couple of years, we do a thing where she'll just be like, you good? I'm like, yeah. And there's two steps to that. There's, are you good? And then there's my response.

1:46:45Because if I'm like, yeah, she knows something's up. Yeah. And so, it's always just pinging back and forth, because there's not the ability to read people just from looking at them to know what's going on. So we have this explicit check mechanism, I think, where we develop that. So there's a vast chasm between yeah and yeah. Again, that's subtlety of human communication. You've written about the experience that people have of feeling, quote, a little bit autistic. Could you elaborate in this concept? Yeah, I think a lot of people, maybe 10 to 20 % of the population, is somewhere on the autism spectrum, but is it impacted by an off -the -rises to the level of disorder?

1:47:27But they still have many of the characteristics that arise from autism. And I think if they can understand and identify and manage some of those behaviors in an optimal way, they can both leverage them and take advantage of some of the skills and mediate some of the deficits and problems that can with it. And I wrote it mostly for my kids because none of them as far as I know have ASD, but they've all got certain aspects of my behavior that are particularly related to it. So, I thought I'd write a little manual for them, basically. What do you think so many programmers, like excellent, like great programmers and great engineers are on the spectrum?

1:48:02I think it's a single -minded focus and the ability to reduce the problem and to be ultimately curious about what's inside stuff. That's been a obsession for me my whole life. What's inside? I gotta take my mom's oven apart because I gotta know how the flip clock works. And I think that's a good habit to have if you're going to be a programmer. And being willing, being excited again to the details. Yeah. Yeah. What's the cool thing you hope to program to build this year? What are you working on? So we've got the RO, learning how to play tempest. Where are you on that, by the way? What's the ETA on success and dominance, like victory?

1:48:41Well, it's very close to working. I think now it's tweaking the model size and layers and stuff like that to get it to learn past the one threshold. But it's a couple thousand lines of Lewin, a couple thousand lines of Python and they all interact and they all work. So it's like 95 % of the work is done now with tuning hyper parameters and hoping for the best. It's already a success in the sense, but now you're seeing how far can this go. Yeah, my goal was to be able to beat me. That's a tough. It is, but lots of games now, they play them better than humans, but maybe not games this complex. What are the cool things you're working on?

1:49:14What do you hope to build this here? The PDP 11 stuff I'm trying to get at what's called an RA82 drive. It's the big 14 -inch monster that spins at 3600 RPM and sounds like a washing machine and then I'll find the controller card and write the code and integrate it into the driver and try to get that all working. What kind of code are you trying to run on it? I'm going to have to get the driver stack to work. So I have to incorporate the driver for it into the kernel. You build a machine recently with one terabytes of RAM. How did that happen and why? So we have a project called GitHub Primes.

1:49:48If you just search for GitHub Primes, you'll find it. And it is a single set of prime number algorithms implemented in about 100 different languages. So it's the exact same algorithm. And we require that you follow certain rules to make it fair. And then you express that algorithm in whatever language you choose to the best of your ability. And we run a benchmark mark every night and we compile the results and find it which languages are fastest. Is this the one? Yeah. Oh, so this is, so yeah, you got it. And this is what you're using this for. Yeah. Oh, so this machine runs that those tests. Yes.

1:50:22OK, you got to tell me about this project. This is Epic Projects. You're comparing the performance of the different programming languages. If all these languages, so they all get built into an individual Docker container, and then they all run. And so this is an incredible project. This is really, really cool. It's really measuring the performance of the different languages. So what have you learned about which languages, like which language usually wins? Zigg, I think right now. It does, it varies. People will make an improvement to the C++, then it'll pass for a while, and the Zigg guys will get angry and come back and make it faster.

1:50:53Zigg, Rust, C++, C. Yeah. And what kind of code is being run? What's the piece of code that they're trying to run to measure the performance? So what they're doing is they're solving the primes up to 100 million as many times per second as they can in a five second loop It's a loop got it over and over and over and over and over yeah on all cores. So what across all CPUs? What about like how the program is written does that vary? No, so you can do anything you want but it has to be a prime sieve You're allowed to use one bit per integer at most. You can't use a byte which is cheaper and easier There are a number of rules like that that you have to allocate the memory within your timed loop And so we have a set of rules and we have some solutions that don't follow the rules like the 6502 because you've only got 64k You can't do 100 million s if so there's a lot of solutions like that that we run as exhibition projects But among the main languages they all follow the same rules and so it really should just be the how the algorithm is expressed in that language and Many of them use the same backend compiler.

1:51:53So really is how you're expressing in a limitations or the benefits of that language There are a lot to be multiple submissions per language Yeah, yeah, so if you're looking to see there's like five I think okay and they some of them might use different compilers Yeah, summer GCC summer seedling LLVM looking at snapshot here from a couple years ago Zigg was at the top then Russ the Nim Haskell Oh No, this is not this is not ordered by Slowness or is it yep, so C is B 1 .5 times as long as they Wow Okay, fascinating. What's a super cool project? And we've got a crazy language, which is like PowerShell.

1:52:32There's a version of PowerShell and stuff like that. So this is automated in terms of organization of how the submissions are done. There's a structure to it. That's cool. Yeah, there's two guys over in Europe, Rucker and Tutor, basically own this now. I started it as just three languages. They did Python, C -Sharp and C++. And I checked them in and I published the episode and then people started throwing more solutions in there and I just got out of hand so I had to get somebody to manage that one and they've been great doing that for me. What's the happiest moment for you when you're programming and building a thing?

1:53:02Like what do you enjoy most? I think the most fun for me is when I build something complex and I thought through how it should work and then I run it and it does work that way. That creates intense satisfaction. So seeing the results come out the way that I plan them and have it work because it rarely does the first time. but yeah, or especially if it does work the first time. I never trust that. I always feel like I miss it so much. Sure. Uh, but you know, with compiled languages like, um, those people as well, that's always a good feeling. You write a bunch of code, you compile it all, compiles without warnings, with our errors.

1:53:39It's a cool feeling. Um, what do you think is the future of programming? So now, I don't know how much you've got to really experience the impact of LLM's with code generation. Do you use cursor, much cursor, VS code with code generation? Yeah, I've done a ton of it for this, the Python side, because I'm not great with Python, and I'm kind of new to it. So I found it very helpful because I've learned a lot from watching the code that it generates. If I don't know how to do something, because if I write Python from scratch, it's going to be about four times as long as what the AI can crank out, because Python can be pretty tourist if you're good at it.

1:54:17Well, that's cool. So just you're essentially learned Python for this project. Yeah. So this is a good case study of like a great programmer in C++ quickly learning a language. Yeah, I'm vibe coding my way through it. vibe coding your way through it. And that is a really powerful use case to learn a language. For if you're already a good programmer to learn either a new language or a new way to approach a problem by having it generated because you probably understand the Python code or generates. Yeah. Like without actually looking up any of the syntax. Yeah, it's all pretty self explanatory once you see it, but creating it from a whole cloth is a little different.

1:54:57Yeah. But you still have to learn how to program in order to use it in that way. Oh, and to read it, I don't know what to tell it to do next and all that. I don't think you can vibe code yourself if you're just new and haven't coded, but if you're a good programmer, hey, I can make you incredibly powerful. What do you think is the future of programming like 5, 10, 20 years from now this whole process? Now vibe coding is kind of a fun meme thing because you still have to be The people that don't know how to program and are just vibe coding are almost entirely creating systems that are not usable in production They're not you can't it's very difficult to create the product and The people who are already great programmers kind of vibe code just for the way that you're doing it They're basically, it's just a fancy autocomplete and they end up editing it.

1:55:45Or it's a way to learn a new API or a new language or a new whatever. A new specific use case may be a different kind of like a gooey component or something like that. But as they get smarter and smarter, we don't know where the ceiling is. That might change the nature what it means to be a programmer. So, do you think about that? I do. I think I don't want to say prompt engineer, but I think it's going to be something like that in the sense that if you're an architect building a bridge At some point guys were down there welding beams together But now you're dragging things around in AutoCAD and assembling from big pre -form sections And I assume that's what programming we like you won't be in there throwing individual lines of code around and you'll be moving components and interfaces and Describing to the AI what those interactions should be and letting it build the components But I think we're still quite a ways from it being able to whole cloth generate you can't say give me a Linux kernel as compatible with Linux one day We'll be able to it'll crank it out.

1:56:43We're not there yet This make you sad That we're climbing the layers of abstraction so quickly so you somebody that used to do machine code and then assembly and see and see plus plus They were getting to a point where We're vibe coding with natural language. Yeah, I kind of came up at a really fortunate time, I think, because I had to come up with the technology over the course of 30 or 40 years. So I understand TTO logic and I can use AI to write code and I kind of know all the pieces in between and there's certainly a hold in my knowledge. But I think the only way to have got that level of knowledge or the completeness of that picture is to have lived it for that long.

1:57:22Yeah. And it's going to be hard to duplicate that for people starting now. What do you think is the meaning of this whole thing? Of existence of life, or whatever is going on here?

1:57:37Making cool stuff. I guess fundamentally what I care about is being able to make complex things that are useful to other people, which leverages my abilities in a way that allows me to be creative and to create things that other people can use in a way that if I was limited to painting or sculpting or whatever in the classic arts I would be hopeless. And so for me, that's really the meaning of life. And then maybe you raise a couple good kids to hand the baton off to. Yeah. And you've created a lot of cool stuff over your life that impacted millions, it's probably billions of people. And now you're inspired, you're creating cool stuff for everyone to see on your YouTube and you inspiring people in that way.

1:58:28So for everything you've done in the past and everything you're doing now, I'm a big fan, I'm really grateful for what you're doing and grateful that we've got a chance to talk today. Thank you brother. Thank you. Thanks for listening to this conversation with Dave Plummer. To support this podcast, please check out our sponsors in the description. And now let me leave you with some words from Be Are In Strangestrop, Creator C++, and somebody who, by the way, I interviewed a long, long time ago episode 48 of the podcast. He said, there are only two kinds of languages, the ones people complain about, and the ones nobody uses.

1:59:10Thank you for listening and hope to see you next time.

From the publisher

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

More from Lex Fridman Podcast

All 133 episodes
#479 – Dave Plummer: Programming, Autism, and Old-School Microsoft StoriesLex Fridman Podcast
Listen in VO