TRANSCRIÇÃOEnglish

Dave Plummer: Programming, Autism, and Old-School Microsoft Stories | Lex Fridman Podcast #479

1h 50m 23s23,340 palavras1,871 segmentsEnglish

TRANSCRIÇÃO COMPLETA

0:00

- The following is a conversation with Dave Plummer, programmer and an old-school

0:04

Microsoft software engineer who helped work on Windows 95, NT, and XP, building

0:11

a lot of incredible tools, some of which have been continuously

0:15

used by hundreds of millions of people, like the famed Windows Task Manager.

0:22

Yes, the Windows Task Manager, and the

0:26

zip/unzip compression support in Windows. And he ported the

0:30

code for Space Cadet Pinball, AKA 3D Pinball to Windows.

0:34

Today, he's loved by many programmers

0:38

and engineers for his amazing YouTube channel called Dave's Garage.

0:42

You should definitely go check it out. Also, he wrote a book on

0:46

autism and about his life story, called Secrets of

0:50

the Autistic Millionaire, where he gives really interesting

0:53

insights about how to navigate relationships, career, and day-to-day

0:57

life with autism. All this taken together,

1:01

this was a super fun conversation about the history and future of

1:04

programming, computing, technology, and just building cool stuff in the proverbial

1:12

garage. This is the Lex Fridman Podcast. To support it,

1:16

please check out our sponsors in the description, and now, dear

1:19

friends, here's Dave Plummer. Tell me about your first computer. Do you remember?

1:25

- I do. I didn't own my first computer for a long time, but the first computer I ever used was a

1:29

TRS-80 Model 1, Level 1, 4K machine, and I rode my bike

1:33

in fifth or sixth grade, so I was about 11, to the local RadioShack.

1:37

And, you know, they had the standard component stereo systems, everything else RadioShack had,

1:41

but they had a stack of boxes that was labeled "computer," and so I was asking the people who worked there

1:45

about it, and they said they just got it and they hadn't set it up yet.

1:49

And so I was rather precocious and I figured, "Well, I'll set it up for you," and they said, "Okay.

1:52

Have a shot." (laughs)

1:53

- Did you know what you were doing?

1:54

- Absolutely not. I mean, it's no worse than a component stereo. The only thing is that Tandy, in their infinite

1:58

wisdom, used the same five-pin DIN connector for power, video, and I think

2:02

cassette, so they were all identical, and if you plugged them in wrong, you'd blow it

2:05

up. So I read the label

2:08

and got it working and wound up playing with it and not knowing anything about

2:12

computers, so I'm typing English commands into it and, you know, PRINT 2+2 works perfectly,

2:16

yet more simple English that you enter into a Basic Level 1

2:21

interpreter is not going to get you very far.

2:23

- So you're trying to talk to it in English?

2:26

- Didn't know any better. And I still have an old foolscap that I wrote in sixth grade of

2:30

a program that's kind of illogically correct but has no

2:34

chance of working on any interpreter that existed at the time, so

2:38

it took me a while to figure out what was actually going on with them. But I rode my bike down there every Thursday

2:42

and Saturday, and they were gracious to let me use the machine.

2:45

- When was this?

2:46

- '79, '80.

2:47

- Okay. What was the state of the art of computing back then? So what are we talking about?

2:50

- Well, the big three had come out. There was the TRS-80 Model 1, there was the

2:54

PET 2001, and the Apple II came out roughly simultaneously.

2:59

- Apple II. Would you say that's the greatest computer ever built?

3:02

- Probably in retrospect. Well, I would probably give that to the Commodore 64.

3:06

- Yeah. You and I agree on this, that that was my first computer

3:10

probably many years after it was released, but yeah, Commodore 64's incredible.

3:14

But yes, Apple II had a huge impact on the history of personal computers.

3:18

- Right. It's hard to gauge the long-term impact, but I think the 64

3:22

itself probably influenced more people, so that's my reason for picking that one.

3:26

- You think so?

3:26

- The sales were certainly higher.

3:28

- So Commodore 64 sold a lot?

3:30

- Yeah. I mean, the numbers are hard to believe. It depends which numbers you believe, but even the

3:34

medium estimates were pretty high.

3:36

- All right, cool. So you eventually graduated to the Commodore 64.

3:41

Tell me about that machine. What did you do on the Commodore 64?

3:45

- Well, the first thing I did was overheat the floppy drive on it, which was unfortunate,

3:49

because it wasn't a warranty machine. My parents didn't have a lot of money,

3:53

so we bought it from Computer House as opposed to one of the major retailers, which meant

3:56

when it died, it had to go back to Germany or something to be fixed. So I was left

4:00

with no floppy, and so I had a cassette deck, which was the best you could do at the time,

4:04

and so I was writing small things, and I had a machine language monitor that you could load

4:08

from cassette. It didn't have an assembler built in, but it had a disassembler, so you could

4:12

enter the op codes in 6502 in hex, and if you were careful about planning, you'd be able to write

4:16

some basic programs. So that's kind of how I learned.

4:20

The first thing I ever wrote on it was a clone of Galaga. Now, it's a bad clone of Galaga,

4:24

but it has the major enemies that attack over time, and it's all written in

4:28

hand-coded machine language, and you can't relocate 6502, so if you need to add code

4:32

in the middle, you need to manually sort of jump to somewhere else, do your work,

4:36

jump back to where you were. It's just hideous spaghetti code, but it all worked

4:39

eventually, and I went to make a backup of it to preserve it for

4:43

future scholars, or whatever the hell I was doing.

4:46

And I copied my blank floppy onto my data floppy.

4:51

So that was my first experience with data management.

4:53

- Oh, no.

4:53

- So I don't have a copy of my first program anymore.

4:55

- What was that feeling like, of just doing something,

4:59

if I may say so, like stupid, you know? Which is a part of the

5:03

programming experience.

5:04

- Yeah, there was a huge amount of guilt because, right, you destroyed several weeks

5:07

- Yeah.

5:07

- of work, and you know it was because you rushed,

5:09

- Yeah.

5:09

- or you did something stupid, or you made an unwise choice.

5:12

- Can you tell me about the programming involved in that game?

5:15

- So it's literally machine language.

5:17

- So machine... so it's not even assembly?

5:19

- Not assembly yet, because there was no assembler built in. So I should have written

5:23

an assembler, written in assembler as my first task, but I wasn't that clever, so...

5:26

- How hard is that to do?

5:28

- Trivial, and it's one of those things that sticks, I think. You do it so many

5:32

times. You know, if I give you a C issue, there are certain syntactic

5:36

issues in C that you're never going to forget and get wrong.

5:38

And it's just one of those.

5:40

- Like, what are the limitations of programming in machine code, as a programmer?

5:44

- The biggest issue is you have to write completely sequentially because at least in that

5:48

variant, 6502, you can't add things later. You can only add things on the

5:52

end. So it's like programming a tape in a way.

5:54

- What was the most complicated thing you've built with machine language?

5:57

- That game would be. I mean, in assembly language, I've done a fair bit of complicated

6:01

stuff, but in actual machine language, I think that game would be the only thing I've actually...

6:04

- You literally built a game.

6:06

- Not a great game, but it worked.

6:07

- Okay. All right. And then you erased it?

6:10

- I did.

6:10

- All right. When did you first fall in love with programming? When you figured

6:14

out, like, this is something special.

6:18

- I think there were two stages for me. I always knew immediately that I was fascinated with

6:22

these machines, from the TRS-80 Model I. All I wanted to do was ride my bike back there

6:26

and have more time with it. And I did that to wear out my welcome as much as I could.

6:30

And the other revelation came, I think, about the second or third year of university,

6:34

when I realized, "I love programming, but I have no idea what I'm going to do.

6:37

Am I going to make the 12 flash on a VCR somewhere? Or am I going to go work on an operating system?

6:41

I have absolutely no idea what I'm going to do post-graduation. But I

6:45

love what I do." And so, I think that was a lot of consolation.

6:49

It's like, it doesn't really matter what I'm doing at this point, because I kind of love doing it, so...

6:54

- So, you'll figure it out.

6:55

As long as you're following this kind of feeling that's telling you-

6:58

- I knew I was in the right area, finally. Yeah.

6:59

- Yeah. All right. You dropped out of high school.

7:02

- Yeah. Not the smartest move.

7:03

- Okay. But you ended up going back to school and being very successful at school

7:07

and, just in general, successful as a programmer, as a developer, as a

7:11

creator of software. How were you able to

7:15

find your way? Can you tell that journey of dropping out-

7:19

... and then finding your way back?

7:21

- There's no moment when I dropped out. You just go less and less and less until you realize

7:25

it's going to be embarrassing if I show up cause I haven't been there in a long time.

7:29

And then pretty soon you're just not going, and that's how you drop out of high school.

7:32

So, if you find yourself on that path, stop doing that. But that's precisely what I did.

7:36

And so now I'm not at school, and I have to get a job, so I'm working at 7-Eleven and a paint

7:40

warehouse and stuff like that. And 7-Eleven is actually kind of an interesting

7:44

job, because it's a job I think they keep rotating for people that are smart enough

7:48

to do the night shift with all the accounting and the administration and stuff they make the night shift

7:52

do, but that have reasons personally that they need to work at 7-Eleven.

7:56

And I was one of those people, cause I had no high school diploma.

8:00

- What are some memorable moments from that time at 7-Eleven? Well, maybe

8:05

what do you appreciate about the difficulty of that job?

8:09

- Probably the worst moment for me, I mean, I got held up at knife-point and stuff, and that's all entertaining,

8:13

but the worst... The most, the suckiest part for me was doing the gas dips. We've

8:17

got a long, it's like a 15 or 20-foot wooden stick and it's measured in

8:21

gradients of inches and feet, and you drop it into the gasoline tanks and then you bring it up

8:25

and you measure where the gasoline sits, cause there's no electronic sensor.

8:29

So, I'm doing that and the first time I do it, I drop the pole and I re-grab it.

8:32

Well, that's about a thousand splinters of wood into your hands, and it's

8:36

40 below out, and that really sucked.

8:38

- Oh, wow.

8:39

- And I realized, "I don't want to do this for a whole life." I knew that, so...

8:44

- Okay. So you stand there frozen with splinters in your hand.

8:47

- And at some point, I have a revelation about my life that next

8:51

time I'm going to do it differently. And then how ludicrous that is

8:55

hits me about three seconds later, right?

8:58

And I think that was really the moment for me where I realized that I've got to do something different.

9:02

And so even though I was 21, I went and I talked to the principal of my local high

9:06

school, and I was like, "Can you let me back in?" And he's, "No, you're too old

9:10

and we don't have room," was his main reason. And I said,

9:14

"Well, between now and then, somebody's going to drop out. So you'll have room.

9:18

So let's assume you have room. Can I come back?" And he was gracious and let me come back.

9:22

And so I did the three or four classes that I needed.

9:24

- Yeah, you know, just if you can linger on that, the slow dropping

9:28

out. That's a weird thing that you can do with your brain.

9:32

You realize to yourself that you don't have to do the thing that everybody else is

9:36

doing, and that's a dangerous realization because

9:39

like, you kind of have to be part of society to do certain things.

9:44

- Right.

9:44

- And if you realize like you don't have to do what everybody else is

9:47

doing, you can either have an incredible life or a really difficult life.

9:54

- Well, the problem with that process is you're making a much smaller decision. "I'm just not gonna go to class

9:58

today."

9:58

- Yeah.

9:59

- And that's all you're deciding, but you do that enough times, you're making a much bigger decision.

10:03

And that's the problem.

10:04

- So it's better to make... If you want to live life in a non-standard way, it's

10:08

better to make the big decision explicitly, and then you can stop going.

10:12

- Yeah.

10:13

- Don't allow yourself to make the slip-ups, though.

10:15

- It'll be made for you eventually.

10:17

- Yeah. Okay. Well, you got back, and you eventually went to

10:20

college and were very successful as a student, and you weren't that good of a student

10:24

before.

10:24

- No, I was a terrible student in high school, and even my first semester of

10:28

college, I still wasn't taking it quite seriously because I got mercy passed in Geometry

10:32

90, which is like the makeup class for the Geometry 12th grade class that I didn't have.

10:37

And that scared me 'cause I realized by 1%, or the grace of the

10:40

professor that let me through, I just about ended my entire

10:44

university career here. So fortunately, those marks don't count on your transcript 'cause they're

10:48

remedial classes, and so I got kind of a fresh start the next semester and did it

10:52

for real, and I did it for me, and that made all the difference.

10:55

- What can you speak to, maybe by way of advice, on how to be successful as a student?

11:00

- Well, ideally there's some aspect of school that you do enjoy, whether it's art, whether

11:04

it's computer science, whether it's shop class, whatever. So go for those classes

11:08

and

11:09

and just put up with and do the hard stuff because it's way easier than having to do it

11:13

later. That's easy to say when you're 50-something; it's harder when you're

11:16

15-something, but... ...It makes a lot of sense.

DESBLOQUEAR MAIS

Registe-se gratuitamente para aceder a funcionalidades premium

VISUALIZADOR INTERATIVO

Assista ao vídeo com legendas sincronizadas, sobreposição ajustável e controlo total da reprodução.

REGISTE-SE GRATUITAMENTE PARA DESBLOQUEAR

RESUMO DE IA

Obtenha um resumo instantâneo gerado por IA do conteúdo do vídeo, pontos-chave e conclusões.

REGISTE-SE GRATUITAMENTE PARA DESBLOQUEAR

TRADUZIR

Traduza a transcrição para mais de 100 idiomas com um clique. Baixe em qualquer formato.

REGISTE-SE GRATUITAMENTE PARA DESBLOQUEAR

MAPA MENTAL

Visualize a transcrição como um mapa mental interativo. Entenda a estrutura rapidamente.

REGISTE-SE GRATUITAMENTE PARA DESBLOQUEAR

CONVERSAR COM A TRANSCRIÇÃO

Faça perguntas sobre o conteúdo do vídeo. Obtenha respostas com tecnologia de IA diretamente da transcrição.

REGISTE-SE GRATUITAMENTE PARA DESBLOQUEAR

APROVEITE MAIS DE SUAS TRANSCRIÇÕES

Inscreva-se gratuitamente e desbloqueie o visualizador interativo, resumos de IA, traduções, mapas mentais e muito mais. Não é necessário cartão de crédito.

    Dave Plummer: Pro… - Transcrição Completa | YouTubeTranscript.dev