The Weird History of JavaScript

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

How accurate is this?

👍︎︎ 35 👤︎︎ u/Deviant96 📅︎︎ Jun 25 2019 🗫︎ replies

Poor little Ferris wearing a WASM hat and not getting mentioned :(

👍︎︎ 34 👤︎︎ u/[deleted] 📅︎︎ Jun 25 2019 🗫︎ replies

This one time at lang camp...

👍︎︎ 36 👤︎︎ u/ameoba 📅︎︎ Jun 25 2019 🗫︎ replies

"There was a company that was becoming very popular around this time" (about Microsoft in 1995).

Is that supposed to be sarcasm? Microsoft had been selling the OS bundled in every single PC for many, many years (DOS and then DOS with Windows 3). They weren't "becoming popular", they already dominated the market.

👍︎︎ 115 👤︎︎ u/moefh 📅︎︎ Jun 25 2019 🗫︎ replies

Wow didn't know that Marc Andreesen co-caused Javascript to be born

👍︎︎ 6 👤︎︎ u/CantBeLucid 📅︎︎ Jun 25 2019 🗫︎ replies

I like JavaScript. Crucify me. Almost all of the JS wtfs are examples of things you would never do anyways.

👍︎︎ 158 👤︎︎ u/steroid_pc_principal 📅︎︎ Jun 25 2019 🗫︎ replies

ajax? who needs it? back in my day, we loaded a dynamically generated javascript file from a post to an iframe, and that's the way it was and we liked it!

👍︎︎ 5 👤︎︎ u/WeAreAllApes 📅︎︎ Jun 26 2019 🗫︎ replies

Was the audio sync a little off in this video for anyone else? It was driving me nuts.

👍︎︎ 3 👤︎︎ u/cdrt 📅︎︎ Jun 25 2019 🗫︎ replies

In my 20 years of development I never heard someone pronounce E-C-M-A as "Eckma" ... and I think that's weird of me, not of him.

👍︎︎ 3 👤︎︎ u/rafajafar 📅︎︎ Jun 26 2019 🗫︎ replies
Captions
Christmas Day 1990 the world sees its first web browser developed by Sir Tim berners-lee in Switzerland on a next computer system and if that weren't enough this guy also developed the first web server around the same time there was just one small problem nobody you knew what the internet was yet there's Allison can you explain what internet is it's a giant computer network made up made up of started it from its it's it's a computer billboard but it's line it's it's several universities everything joined together right and others can access it right today we'll be going back in time to look at the evolution of JavaScript and how it went from a simple scripting language famously written in ten days to a technology that affects almost every human being on the planet today if you're new here like and subscribe because this is part 1 - a full JavaScript course with a new video here on YouTube once a week for the foreseeable future our story starts off in December of 1991 when Al Gore invented the internet during my service in the United States at Congress I took the initiative and creating the internet well what he actually did was introduced the gore bill which provided funding for the first mainstream browser mosaic it was developed by Marc Andreessen and Eric bina at the University of Illinois and released for UNIX systems in January 1930 and later that year there would be ports for Macintosh and windows and mosaic was really the first web browser to start bringing the Internet to the mainstream but there is no JavaScript yet just the DOM or a document object model which itself wasn't even close to being standardized yet in 93 after Andreessen graduated he would move to California to co-found Netscape and within just a couple of years the Netscape Navigator would control around 80% of the browser market share around this time period Andreessen realized that browsers needed to become more dynamic web designers needed some sort of glue language to make their websites more interactive so naturally the first thing they'd turn to is the super trendy Java programming language from Sun Microsystems but they quickly decided that that idea sucked so Plan B was to recruit this guy named Brendan Eich and his job was to put the scheme programming language in the browser but maintain a syntax that still resembled Java and he needed to have that done by yesterday now are you going to go ahead and have those TPS reports for us afternoon just ten days later the first version of JavaScript was born but it wasn't called JavaScript yet it was mocha syntactically it was a curly bracket language like Java or C but under the hood it already contained many of the features that we know and love in modern JavaScript things like first-class functions dynamic typing and prototypal inheritance which was actually inspired by the self programming language also developed by Sun Microsystems now writing a perfect programming language in ten days is basically impossible and Brendan Eich knew this very well so what he didn't do was write a highly specialized language designed only for browsers of the 90s instead he wrote a flexible multi-paradigm language that developers could use to apply their own language patterns too but there was still a very good chance that the language would fail and there's no way he could have predicted the extremes developers would take it to over the next 20 years any application that can be written in JavaScript will eventually be written in JavaScript but let's not get ahead of ourselves it's not even called JavaScript yet by September of 95 mocha was renamed to live script and it was shipped in the first beta releases of Netscape Navigator 2.0 but just a few months later in December they decided to rename it javascript because that made it sound like the cool lightweight cousin to the hottest programming language of the day javascript started making an impact on the user experience from day one mostly with annoying pop-up windows there was a company that was becoming very popular around this time and they were launching their own browser called Internet Explorer so naturally they reverse engineer JavaScript and they're legal or I mean marketing team gives it a name of jscript so in 1996 we have two almost identical languages javascript and jscript and with the internet growing rapidly people realized that there would be a need to standardize JavaScript so Netscape turned to the European computer manufacturers association or ACMA which has served as a neutral party since 1961 for setting standards in the IT industry by June of 1997 we had the first version of equi - 6 - or ECMO script as it's commonly known and this gave browser vendors and server-side applications a consistent spec or set of guidelines for implementing the JavaScript language the document itself is about 100 pages long and it looks very similar to modern JavaScript it's just missing a lot of things like exception handling with try catch blocks regular expressions and the strict equality operator one of the weird parts of JavaScript and also one of Brennan dykes biggest regrets is the way equality works some of the early web designers to test JavaScript thought it would be convenient if a number could equal a string as they compromise to make the language more accessible to non-programmers they went ahead and implemented this abstract lenient equality operator but don't worry too much because in a couple of years we'll find a way to fix this let's fast forward to December of 1999 and this was one of the most interesting years in the history of tech in general I don't describe it as a bubble that's just there's a phenomenon with internet stocks versus all other stocks that's been reinstated it started the valuations will continue to be huge advice making money something's wrong and at the same time everybody's getting ready for the world to end a man-made calamities so pervasive it threatens not only the United States but the entire world the year 2000 computer problem is without question the most complex most expensive problem mankind has ever faced but luckily right before y2k and the eventual stock market crash we got xmas crypt version 3 it contained things like better air handling and also the strict equality operator to make equality comparisons a little less weird so javascript is evolving and progressing very nicely but things are about to go south and we won't see another version of atmosphere published for another 10 years just three months later in March of 2000 the tech bubble started to burst the Nasdaq lost over a trillion dollars in value in that month alone and high-profile companies started to fold but the internet was here to stay and at this point we have a solid standard for JavaScript but the company behind this push Netscape was acquired by AOL a year prior email instant messages there's no better way to keep in touch you've got fan we've spent over 1 billion dollars to create the world's largest high-speed network now with 56 K connections are faster than ever America online so easy to use no wonder it's number 1 and the browser's market share is being devoured by Microsoft Internet Explorer and Microsoft didn't really care about playing by the rules of the spec in the early 2000s ie controlled at least 80% of the browser market share and Microsoft just basically went off and did its own thing and implemented its own extensions for JavaScript now this created fragmentation which we still have to deal with today when supporting these legacy versions of Internet Explorer but it would also lead to some very revolutionary features like Ajax which allowed JavaScript to be implemented asynchronously which was a precursor to modern single page applications now in the early 2000s work had started on ECMO script version 4 and it was going in a direction that looks a lot more like modern-day typescript with features like optional type annotations classes interfaces and a bunch of other features designed to use JavaScript at the enterprise scale but one of the members on the committee was Douglas Crockford from Yahoo he created JSON in 2003 and he was very concerned that the ES for proposal was becoming very large and out of control Microsoft actually agreed with Crockford and ultimately refused to have any part in the es 4 proposal this resulted in two different proposals running at the same time yes 3.1 and es for version 3.1 was a much simpler version without major changes to the language this saga would continue all the way until 2008 when es 4 was finally scrapped for good but it did actually find its way into the market as a language called ActionScript developed by Adobe as the scripting language supported by flash and we all know what happened to Flash the early to mid-2000s were the dark ages for JavaScript but it was starting to emerge into the Renaissance developers in the mid 2000s were extremely frustrated trying to build web applications that ran on all browsers but we saw a huge leap forward in 2006 with the release of jQuery and this is a library that deserves a lot more credit than it gets it's one of the first JS libraries to have extremely well done documentation and it empowered developers to build far more complex and interactive applications that would work far more reliably on all browsers so jQuery was a big deal but we saw another huge event in 2008 with the release of Google Chrome and the v8 engine both were released on September 2nd of 2008 and v8 completely changed the way javascript was compiled and interpreted making it a viable option for high-performance applications both in the browser and server side less than one year later in May of 2009 Ryan Dahl would introduce nodejs a server-side runtime for JavaScript built on top of v8 that included an event loop which was a unique concept for the time and allowed you to write event-driven and non blocking code and because of those characteristics nodejs became known as a great solution for building real-time web applications that scale and it also made it possible for developers to build their entire web application stack with a single programming language known commonly as the JavaScript everywhere paradigm and around the same time the JavaScript authorities were finally getting their stuff together for the next version of ECMO script the parties were united in Oslo Norway and decided to take ES 3.1 and make that the starting point for es 5 which was eventually released in December of 2009 exactly 10 years after the last official spec from a technical standpoint es 5 has some very important features things like JSON support functional array and object methods strictmode accessors and many others now moving on to 2010 we start to see JavaScript frameworks designed specifically for single page applications two of the most popular were backbone and angularjs both of which came out in October of 2010 both of these frameworks were trying to solve a similar problem but did it in a very different way backbone was lightweight and handled Dom updates with an imperative programming style while angularjs was a little more all-inclusive and used a declarative programming style and the creator of backbone Jeremy Ashe Kenneth is a legend of this time period who also created CoffeeScript and underscore Jas and speaking of CoffeeScript it's a very important part of JavaScript history because it's the first language that really made transpiling go mainstream and that gets all the way back to Brendon Ike's original vision in 1995 to create a programming language that was malleable and transpilers would become very important with the next version of JavaScript es6 aka es 2015 and a ton of new features landed in this version things like promises let and Const arrow functions spread syntax D structuring just to name a few these new features were a huge leap forward for JavaScript developers but it's really difficult for developers to actually use them because they're not supported in many legacy browsers and that's why today we see prolific use of things like babel and typescript because they can target any flavor of javascript going all the way back to es 3 while developers can still write their code with modern features now another major thing going on in 2015 was the rise of react j/s it took some of the concepts of angularjs with declarative UI but improve them with a unidirectional dataflow immutability and the use of the virtual DOM and it's really been the framework that has solidified modern day declarative UI patterns but there are many other frameworks out there competing for the mind share of developers like angular view and spelt among many others and around the same time period we've seen tools to help manage the complexity of these heavyweight JavaScript apps things like roll-up in web pack to bundle dependencies and things like typescript and flow to add type systems to our JavaScript and then you have things like immutable j/s and rxjs to help you apply functional patterns to your code and that's really just the tip of the iceberg of the modern JavaScript ecosystem complexity and that brings us to today the summer of 2019 tc39 or the committee that's in charge of ACMA script is on a regular schedule of updating JavaScript at this point so we should see ES 2019 fairly soon which will bring some nice new features to the language but a far more interesting development is web assembly which itself is just a binary format that low-level languages like C++ can compile to to deliver high-performance applications to the web it's not a replacement for JavaScript but it does represent a whole new way to build web applications and will certainly have an influence on the future of JavaScript but if there's one thing I've learned over the years it's to always bet on JavaScript it's a language that has consistently evolved from its very first prototype and has a massive and diverse community unlike any other programming language I'm going to go ahead and wrap things up there thanks for watching and I will talk to you in the next video [Music]
Info
Channel: Fireship
Views: 710,264
Rating: 4.9414978 out of 5
Keywords: webdev, app development, history, javascript, js history, javascript history, what is javascript, netscape, eich, chrome, internet, internet history, js, typescript, coffeescript, ecmascript, es6, ecma, angular, react, vue, svelte, nodejs, browser, web browser, chrome v8
Id: Sh6lK57Cuk4
Channel Id: undefined
Length: 12min 9sec (729 seconds)
Published: Tue Jun 18 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.