Will Javascript win? | John Carmack and Lex Fridman

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
if we you know aliens visit in in thousands of years and humans are long gone something tells me that most of the systems they find will be running javascript i kind of think that if the simulator if we're living in a simulation it's raving it's written in javascript um you know for the longest time even still javascript didn't get any respect and yet it runs so much of the world and increasing number of the world is it possible that all everything will be written in javascript one day so the engineering under javascript is really pretty phenomenal uh the the systems that make javascript run as fast as it does right now are kind of miracles of modern engineering in many ways it does feel like it is not an optimal language for all the things that it's being used for or an optimal distribution system to you to build huge apps in something like this uh without type systems and so on i'm but i think for a lot of people it does reasonably the necessary things it's still a c flavored language it's still uh you know abrasives in semicolon language uh it's not hard for people to be trained in javascript and then understand the roots of where it came from i think garbage collection is unequivocally a good thing for most programs to be written in it's funny that i still just this morning i was on i was seeing a twitter thread of a bunch of really senior game dev people arguing about the virtues and costs of garbage collection you will run into some people that are top-notch programmers that just say no this is literally not a good thing because it makes you lazy yes that it makes you not think about things and i do disagree i think that there is so much objective data on the the vulnerabilities that have happened in cnc plus plus programs sometimes written by the best programmers in the world it's like nobody is good enough to avoid ever shooting themselves in the foot with that you write enough c code you're going to shoot yourself in the foot and garbage collection is a very great thing for the vast majority of programs it's only when you get into the tightest of real-time things that you start saying it's like no the garbage collection has more costs than it has benefits for me there but that's not 99 plus percent of all the software in the world so javascript is not terrible in those ways and i am and so much of programming is not the language itself it's the infrastructure around ever you know that surrounds it all the libraries that you can get and the different stuff that you can ways you can deploy it i am the portability that it gives you and javascript is really strong on a lot of those things where for a long time and it still does if i look at it the the web stack about everything that has to go when you do something really trivial in javascript and it shows up on a web browser to kind of x-ray through that and see everything that has to happen for your one little javascript statement to turn into something visible in your web browser it's very very disquieting just the the depth of that stack and the fact that so few people can even comprehend all of the levels that are going on there but it's again i have to caution myself to not be the in the good old days old man about it because clearly there's enormous value here the world does run on javascript to a pretty good approximation there and it's not falling apart there's a bunch of scary stuff where you look at console logs and you just see all of these bad things that are happening but it's still kind of limping along and nobody really notices but so much of my systems design and systems analysis goes around you should understand what the speed of light is like what would be the best you could possibly do here and it sounds horrible but in a lot of cases you can be a thousand times off your speed of light uh velocity for something and it's still be okay and in fact it can even sometimes still be the optimal thing in a larger system standpoint where there's a lot of things that you don't want to have to parachute in someone like me to go in and say make this this web page run a thousand times faster you know make this web app into a hardcore native application that starts up in 37 milliseconds and everything responds in less than one frame latency that's just not necessary and if somebody wants to go pay me millions of dollars to do software like that when they can take somebody right out of a boot camp and say spin up an application for this i often being efficient is not really the best metric it's like there's that applies in a lot of areas where it's kind of interesting how a lot of our appliances and everything are all built around energy efficiency sometimes at the expense of robustness in some other ways or higher costs in other ways where there's interesting things where energy or electricity could become much cheaper in a future world and that could change our engineering trade-offs for the way we build certain things where you could throw away efficiency and actually get more benefits that actually matter that's one of my you know i one of the directions i was considering swerving into was nuclear energy when i was kind of like what do i want to do next it was either going to be i cost-effective nuclear fission or artificial general intelligence and one of the one of my pet ideas there is like you know people don't understand how cheap nuclear fuel is and there would be ways that i you could be a quarter the efficiency or less but if it wound up making your plant ten times cheaper that could be a radical innovation in something like that so there's like some of these thoughts around like direct fission energy conversion fission fragment conversion that you know maybe you build something that doesn't require all the steam turbines and everything even if it winds up being less efficient so that applies a lot in programming where there's always it's always good to know what you could do if you really sat down and took it uh took it far because sometimes there's discontinuities like around user reaction times there are some points where the difference between operating in one second and 750 milliseconds uh not that huge you'll see it in web page statistics but most of the usability stuff not that great but if you get down to 50 milliseconds then all of a sudden this just feels amazing you know it's just like doing your bidding instantly rather than you're giving it a command twiddling your thumbs waiting for it to respond so sometimes it's important to really crunch hard to get over some threshold but there are there are broad basins in the value metric for lots of work where it just doesn't pay to even go that extra mile and there are craftsmen that you know they just don't want to buy that and more power to them you know if somebody just wants to say no i'm going to be i'm my pride is in my work i'm never going to do something that's not as good as i could possibly make it i respect that and sometimes i am that person but i try to focus more on the larger value picture and you do pick your battles and you deploy your resources in the play that's going to give you sort of the best user value in the end well if you look at the evolution of life on earth as a kind of programming effort it's uh it seems like efficiency isn't the thing that's being optimized for like natural selection is very inefficient but it kind of uh adapts and through the process of adaptations building more and more complex systems they're more and more intelligent the final result is kind of pretty interesting and so i think of javascript the same way it's like this giant mess that you know things naturally die off if they don't work and they if they if they're becoming useful to people they kind of naturally live and then you build this community large community of people that are generating code and some code is sticky some is not and nobody knows the the inefficiencies or the efficiencies or the breaking points like how reliable this code is and you kind of just run it assume it works and then get unpleasantly surprised and that's very kind of the evolutionary process so that's a really good analogy and we can go a lot of places with that where in the earliest days of programming when you had finite you could count the bytes that you had to work on this you had all the the kind of hackers playing code golf to be one less instruction than the other person's multiply routine to kind of get through and and it was so perfectly crafted it was a crystal piece of artwork when you had a program because there just were not that many you couldn't afford to be lazy in different ways and in many ways i see that as akin to the symbolic ai work where again if you did not have the resources to just say well we're gonna do billions and billions of programmable weights here you have to turn it down into something that is symbolic and crafted like that but that's definitely not the way dna and life and biological evolution and things work i you know on the one hand it's it's almost humbling how little programming code is in our bodies you know we've got a couple billion base pairs and it's like this all fits on a thumb drive for years now and then our brains are even a smaller section of that you've got maybe 50 megabytes and this is not like shannon limit perfectly uh information dense uh conveyances here it's like these are messy codes you know they're broken up into amino acids a lot of them don't do important things or they do things in very awkward ways but it is this process of just accumulation on top of things and you need you need scale both you need scale force or the population for that to work out and in the early days in the 50s and 60s the the kind of ancient era of computers where you could count when they say like when the internet started even in the 70s there were like 18 hosts or something on it it was this small finite number and you were still optimizing everything to be as good as you possibly could be but now it's billions and billions of devices and everything going on and you can have this very much natural evolution going on where lots of things are tried lots of things are blowing up venture capitalists lose their money when a startup invested in the wrong tech stack and things completely failed or failed to scale but you know but good things do come out of it and it's interesting to see the the memetic evolution of the way different things happen like mentioning hello world at the beginning it's funny how some little thing like that where everybody every programmer knows hello world now and that was a completely arbitrary sort of decision that just came out of the dominance of unix and c and early examples of things like that so millions of experiments are going on all the time but some things do kind of rise to the top and win the fitness war for whether it's mind space or programming techniques or anything like there's a site on stack exchange called code golf where people compete to write the shortest possible program for a particular task in all the different kinds of languages and it's really interesting to see folks kind of um they're masters of their craft really play with the limits of programming languages it's really beautiful to see and across all the different programming languages you get to see some of these weird programming languages and mainstream ones by the difference between python two and three you get to see the difference between c and c plus plus in java and you get to see javascript all of that and it's kind of um inspiring to see how much depth of possibility there is within programming languages that code golf kind of tasks reveal most of us if you do any kind of programming you kind of do boring kind of very vanilla type of code that's the way to build large systems but it's nice to see that the possibility of creative genius is still within those languages it's laden within those languages you
Info
Channel: Lex Clips
Views: 208,013
Rating: undefined out of 5
Keywords: ai, ai clips, ai podcast, ai podcast clips, artificial intelligence, artificial intelligence podcast, computer science, consciousness, deep learning, einstein, elon musk, engineering, friedman, joe rogan, john carmack, lex ai, lex clips, lex fridman, lex fridman podcast, lex friedman, lex mit, lex podcast, machine learning, math, math podcast, mathematics, mit ai, philosophy, physics, physics podcast, science, tech, tech podcast, technology, turing
Id: rczu8kc8JZA
Channel Id: undefined
Length: 12min 39sec (759 seconds)
Published: Sun Aug 07 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.