Back to Index

Will Javascript Take Over the World? | Brian Kernighan and Lex Fridman


Transcript

So what do you think about another language of JavaScript that's this... Well let me just sort of comment on what I said. What I was brought up, sort of JavaScript was seen as the probably like the ugliest language possible and yet it's quite arguably quite possibly taking over not just the front end and the back end of the internet but possibly in the future taking over everything because they've now learned to make it very efficient.

And so what do you think about this? Yeah well I think you captured it in a lot of ways. When it first came out JavaScript was deemed to be fairly irregular and an ugly language and certainly in the academy if you said you were working on JavaScript people would ridicule you.

It was just not fit for academics to work on. I think a lot of that has evolved. The language itself has evolved and certainly the technology of compiling it is fantastically better than it was and so in that sense it's a absolutely a viable solution on back ends as well as the front ends.

Used well. I think it's a pretty good language. I've written a modest amount of it and I've played with JavaScript translators and things like that. I'm not a real expert and it's hard to keep up even there with the new things that come along with it. So I don't know whether it will ever take over the world.

I think not but it's certainly an important language and worth knowing more about. Maybe to get your comment on something which JavaScript and actually most languages, Python, such a big part of the experience of programming with those languages includes libraries. Sort of using building on top of the code that other people have built.

I think that's probably different from the experience that we just talked about from Unix and C days when you're building stuff from scratch. What do you think about this world of essentially leveraging, building up libraries on top of each other and leveraging them? Yeah, that's a very perceptive kind of question.

One of the reasons programming was fun in the old days was that you were really building it all yourself. The number of libraries you had to deal with was quite small. Maybe it was printf or the standard library or something like that and that is not the case today and if you want to do something in, you mentioned Python and JavaScript and those are the two fine examples, you have to typically download a boatload of other stuff and you have no idea what you're getting.

Absolutely nothing. I've been doing some playing with machine learning over the last couple of days and gee, something doesn't work. Well, you pip install this, okay, and down comes another gazillion megabytes of something and you have no idea what it was. And if you're lucky, it works and if it doesn't work, you have no recourse.

There's absolutely no way you could figure out which in these thousand different packages and I think it's worse in the NPM environment for JavaScript. I think there's less discipline, less control there. And there's aspects of not just not understanding how it works, but there's security issues, there's robustness issues, so you don't want to run a nuclear power plant using JavaScript essentially.

Probably not.