This course has been updated! We now recommend you take the ES6: The Right Parts course.
Transcript from the "History of JavaScript" Lesson
[00:00:00]
>> [MUSIC]
[00:00:03]
>> Aaron: So we did a just Java podcasts just a few weeks ago. If you didn't listen to it, it was two hours long. It was it was the longest just Java ever. And Brendan just talked and talked and talked and were like asking him questions, and it was like 30 minutes later we could ask him another one, cuz he just stayed there explain and explain so much.
[00:00:23] And it was awesome. But I'm gonna kinda disseminate some of what I learned there and some of the stuff that you can learn through other books and through other people's talks. So in 1985, Brendan graduates from Illinois and he starts working in the tech field. And he eventually winds up at a company called SGI which is Silicon Graphics International, and these company, essentially they make the GPU, and he's on board with them.
[00:00:55] And while he's at Illinois, while he's at SGI, he makes some acquaintances, okay? And then around 1994, two of the acquaintances break off and they're like hey, let's start our own thing. So Marc and Jim, I can't remember what NCSA, National Center for Supercomputing Applications. So, that's at the University of Illinois where Brandon studied.
[00:01:23] Anyway so, they're like, hey let's go start a company, we're gonna call it Mosaic Communications MCom. And then Mosaics is gonna freak out about that, right? So, they're like hey, change you name. So, they rebrand as Netscape. So, did anyone use Netscape? Yeah, I kinda miss the Netscape days.
[00:01:43] I didn't really ever use it, so anyway. So in October 13, 1994 Netscape Navigator is released. And this is the homepage, did you guys remember when the internet looked like this? This is like how sweet it used to get. This logo is awesome and there's a lot of stuff.
[00:02:07] Like they'll teach you how to use the Internet, to get around just click any blue or purple word phrase. So this is an example, so I can click that and it's like hey you just Interneted right. And so, anyway it was super basic back then. And this is how Netscape released and this was their sales page.
[00:02:29] So, if you guys check out my slides on GitHub, check this page out specifically, it's a gem and I'm happy that the Internet kept this around. So, six months later, they've launched, it's going well. They're like, hey, let's talk to our friend Brendan, and let's have him come build Scheme in the browser.
[00:02:53] Cuz we want the browser to have some app like features, and maybe, who knows, maybe you could even move something around, I don't even know. So they talk to him, he's like, yeah I'm onboard. In April 1995, they hire him to the wrong team, they hire him to the client or the server team which he was like, well, whatevs.
[00:03:12] I'll be on the server team. So he's there for a month because they switched him in May, but he's sitting there and Netscape while he's there that first month, Sans is like, put Java in the browser, put Java in Netscape. So there's this huge pressure, internally, to get Java running in the browser.
[00:03:34] And so, Brendan is watching this, and he's seeing it, and in 95, he switches over to the client team. And he's faced with this Java Netscape thing and he's trying to figure out, is this the way we wanna go? And there's a bunch of guys there, they're going through some crazy stuff.
[00:03:52] Go check out the just Java episode, like they we're gonna implement their own Java Virtual Machine, just to not have to go through San. And then they're gonna write JavaScript on top. Anyways, but it was about to get crazy. And then they like now we should build JavaScript.
[00:04:06] So he helped them to decide Java was not the language of the web. And he's asked some reasons why, he says it's too complex and here's some of the things he talked about, he said constantly running JavaC, you have to understand the main method on a class. And this isn't for a casual or amateur programmer.
[00:04:25] He decided like Java is a language for curated programmers and not for the web which was gonna have some more casual or amateur programmers which none of us should take offense to, right? Cuz it's changed since then. He's like we need something more like VB but clearly we don't want VB.
[00:04:43] [COUGH] And he's like I want something that's meant for people who are just learning to program for the very first time. So this was kind of the idea that they had and consequently this is where the idea of automatic some icons came from. So that it was like super forgiving for these people who forgot and we're not gonna kill them over semicolons, so that's kind of where that came from, was them trying to be super forgiving.
[00:05:12] So he starts this project and he talks about ten day, like, they didn't sit down and be like, hey, you have ten days, like, on this day, you're doing the thing. But he needed to present to his team his alternative to Java before they got roped into doing Java in the browser.
[00:05:27] So does anyone know what this code name project that he worked on for ten days was? Does anyone know? Code name? Anybody on the live stream? If you watch [INAUDIBLE] you know. Anyway, so they call it MOCHA. So MOCHA was the name of the project. And this was the name that Brendan kind of wanted to stick with long term.
[00:05:50] So MOCHA, after they've build and they've used internally they go through a beta process and they changed its name. Does anyone remember what the first name of JavaScript was?
>> Speaker 2: LiveScript?
>> Aaron: Yes, it was LiveScript. Does anyone know where the name LiveScript came from?
>> Speaker 2: From marketing.
>> Aaron: From marketing, yes.
[00:06:12] So Netscape had another project called LiveWire. So they had a server package called LiveWire and so they just kind of adopted the Live brand, and so they're like LiveScript, LiveWire, we're just gonna do the live but. Anyway, so the goal is to call it JavaScript, at least from the honchos there.
[00:06:32] And so, in December of 95, San signs a thing saying, yeah, you guys can use the word Java. And that was a big deal, because there was this guy his name was like Javanski or something and he own Javanski.com and San was like, take your website down because it uses the word Java and we've trademarked it.
[00:06:57] He's like dude, this is like my ancestors had this name hundreds of years ago, what do you mean? You can't possibly own Javanski or whatever. So it was a big deal that San was like you can use the name, so that was huge and that's ultimately why they call it JavaScript, and so JavaScript is official in December 95.
[00:07:19] So in it's first year people kinda start doing some stuff with it. They're like hey, let's do some single page stuff, which we like to think of single page jobs as being a thing that started in 2005 with Ajax revolution, but they were doing crazy stuff. They're like hey, if I need to get more data, I'm wanna do this thing or I embed an iframe with the URL that's specific to what I need, and then it will load data, and I'll pull it out of there up to the parent.
[00:07:45] So doing all sorts of hacky stuff to kinda get the same type of functionality, right? And they're kind of discover in the quirks of the DOM, like if you select everything with the same tag, you just get an array no matter how deep they are. People are kinda discovering that and they're discovering what the good parts are.
[00:08:07] The stuff that they do and don't like, people are already starting to form opinions. And then there's danger lurking though. [COUGH] Anyone have any idea, danger? So in late 96, Microsoft complaints, they're like, cuz Microsoft is trying copy this and emulate this, right? But they're like hey, Netscape, you guys keep changing the API way too much, you guys got to stop it.
[00:08:33] Like you leave the API solid so that we can be in parity. Which isn't the worst complaint ever, right? Except for this Microsoft, and they do the exact same thing. And so Netscape is like Jeez Microsoft is gonna like own this thing. Microsoft is gonna trying to take this over.
[00:08:54] We got figure a way to keep JavaScript safe so that Microsoft doesn't come in and just kinda pummel it.