Spolsky: It's your Skype buddy
Atwood: Yeah, we're Skype buddies. That's awesome. Someone on Twitter told me to say hello to you.
Spolsky: Oh, hello Twitter.
Atwood: Hello. [laughing] I just do what people, you know, on Twitter tell me to do.
Spolsky: I posted a question on Twitter asking the people what I should get, because I dropped my DVD player on the ground yesterday and it...
Atwood: Wait, wait, wait... You have a DVD player?
Spolsky: You know, yeah—
Atwood: Is that sort like an 8-track player or like a VHS?
Spolsky: Well, it's from the past.
Atwood: Do you have a reel-to-reel tape machine by any chance? Do you have any machines with all those flashing lights on the front that you see at the movies?
Spolsky: Waaaa. [laughing] You think I'm old.
Atwood: Just kidding. Just giving you a hard time.
Spolsky: I had an idea for my StackOverflow question this week is going to be all about computing in the 1980's, so we can talk about being old later. That's foreshadowing.
Atwood: Okay. Well, let's get... Well, we had a... I don't know if you saw, but Alan Kay was on, and we think it's the real Alan Kay too, not, you know, a fake doppelgänger. And he actually answered... I think at first he was doing and ego surf, which is fine, cause I think everyone does that... you just have a search term setup for your name and it alerts you. Which I'm sure, if you are Alan Kay, must have like lots of results everyday.
Spolsky: Keep checking everyday to see if anyone invents anything called the Dynabook.
Spolsky: You are star-struck.
Atwood: Yeah, he posted a question on StackOverflow, which was awesome, which is about significant computing innovations since like 1980, like what would be a significant—
Spolsky: Yeah, that was the question that was going to be my favorite question.
Atwood: Oh, I'm sorry.
Spolsky: Should we talk about it now? We've been foreshadowing the heck out of this thing. That was posted by Alan Kay, really?
Atwood: Oh, yeah, totally.
Spolsky: In a community wiki, how do you know?
Atwood: Well, that's another thing I'm working on. [laugh] We can talk about that too, but let's come back to that. It is Alan Kay, if you click
through the revision history, the first revision was posted by Alan
Kay and, like I said, we believe it is the real Alan Kay, which is
Spolsky: Scientists have reason to believe... This is not an impersonator, because who'd want to impersonate Alan Kay, because you know, if you're
impersonating somebody at least impersonate, like, Jay-Z or, if it's
going to be in computing world, maybe Steve Ballmer or Steve Jobs
or... but not Alan Kay.
Atwood: Yeah, I know. The pathologies of the people who impersonate other people are very unclear to me. But it's obviously some sort of
Spolsky: It's like, "Oh, I'm Grace Hopper!" Really?
Atwood: Yeah, that can happen. So, did you want to talk about that question?
Spolsky: Well, we can come back to that, cause that's like... This podcast is like—
Atwood: We have a certain order we do things and I don't want to... You know I have something else I can talk about, which is—and you mocked me for this, and I would like to point that you're wrong—that we
used. To the Herculian effort of a number of people but primarily
one, Dana Robinson.
Spolsky: Thanks Dana.
Atwood: Yeah, he's a graduate chemistry student at the University of Illinois, Champaign, I think? [UIUC –ed.] But, that's amazing amount of
effort. I mean, I'm just stunned by the amount of progress he made,
and the cool thing us we deployed it, and it also had the top three bug
fixes that were just pending for months, because we didn't really
the obfuscated version.
Spolsky: Was it obfuscated, or just minimized?
Atwood: Well, they're kind of the same thing—
Spolsky: I know minimizing obfuscates, but there are ways to obfuscate that go much beyond minimizing.
Atwood: I guess that's true, I guess you're right. It's not really fair to
call that obfuscated, it's typically minimized, but minimized is
pretty bad, because you don't have variable names. It's still pretty
Spolsky: Different amounts of white space—
Atwood: Yeah, so I guess it's unfair to call it obfuscated, it's just
minimized, but we have a version that is editable now, it's in GitHub.
I'll link it in the podcast notes, so anyone that is interested in that can pull it down.
Spolsky: And they can send you patches, and you'll—sorry, change sets, and you can accept—
Atwood: Exactly. This is the whole distributed source control thing we talked about with Eric last week, which, I agree, you and I are still getting
my head around it. But the cool thing is, I guess one way to look at
it is if you have one contributor that's really outpacing everybody
else, contributing just massive amounts to the project, that sort of
comes the de facto branch you're going to follow. You know what I
mean, like this guy is so far ahead that these branches don't even
matter anymore, I'm just going to pick up Dana's branch, cause you know... And no one really limits him, he just works at his own pace...
Spolsky: My question was, I didn't even realize this was Alan Kays... His question is "What are some of the significant new inventions in computing since 1980?" This must be Alan Kay, because if he thinks 1980 was 50 years ago... [laughs]
Atwood: That's awesome that you were able to identify this, not knowing it was Alan Kay, but the number is 432922.
Spolsky: I'll just list some. The number one answer was the World Wide Web. Number two was the Free Software Foundation. Desktop publishing, color, package management... Wait, how come there's somebody here quoting me? Oh, I see, that's from the transcript. Just-in-time compilation.
First of all, I don't really like this list. If I had to say the significant new inventions in computing, maybe it's not an invention, I would say probably the most significant thing in programming, specifically, is garbage collection, which clearly was invented before 1980, but really didn't start appearing until Java, did not get mainstreamed until Java, 1995.
Atwood: That's one of the lessons of this question, is how much of this stuff we think of as new now isn't really new at all, it's just becoming somewhat mainstream. This is how long it takes.
Spolsky: It takes forever.
Atwood: It takes forever. And we're in an industry where things happens so fast. We're like, "Oh, that's a year old, that's ancient," and yet there are these truly ancient concepts from 20+ years ago. So you forget. You literally forget how long it takes and how old some of this stuff is.
Spolsky: There's still people... Like, Ruby and Python still don't have type inference, do they? This is a technology from the 90's which would make those languages much, much faster.
Spolsky: So, anyway, yeah. They're about 20 years behind academia, usually. It can vary.
What I thought I would do for my answer to this question is tell you what computing was like in 1980...