The Post JavaScript Apocalypse – Douglas Crockford




This talk speculates about the next language after JavaScript, and what to do in the mean time about some of the new features in ES6.
There will be an emphasis on simplicity and quality. The web is cluttered and full of errors. The talk will also touches on why you should subscribe to HBO.

NDC Conferences
https://ndc-london.com
https://ndcconferences.com

Original source


42 responses to “The Post JavaScript Apocalypse – Douglas Crockford”

  1. Pure functional is just as much a straight jacket as Typescript. I am very disappointed. But it was a joke.
    Generators are pure on what is fundamentally a real sequence. I agree that the function* is bizarre.
    Who cares where a function argument generally is? Why is RQ better than rxjs?

    I thought he was once upon a time a Lisp guy. If he was he forgot most of that goodness. That is make a minimal powerful language where you can roll your own constructs for anything else you find useful to the problem at hand.

    Names with spaces is the goofiest idea I ever heard. Contracts I like. However strings of those checked at compile or link time proved very expensive. In an interpreted language it could work. But I heard that Racket has some performance problems with similar things.

    He missed the huge problem of npm and friends, code libraries, their management and incorporation and program/app evolution as the components are updated. Without this it is also very difficult to have things like security fixes propagate.

    On most real front end systems it can take up to a month to get all the included libraries balanced and they seldom are backward compatible over changes long or at all. So no one wants to take a production system or anything close and update all or even some of the libraries used. It is simply too unbounded. This is one of the things that sucks the most.

  2. How am I supposed to know what my colleague meant when he/she is using words that otherwise would have been reserved? Readability matters perhaps more than anything else.

  3. If you're at a software dev. conference IN ENGLAND and you don't know what EDSAC is you really, really, really do need to lower your head in the deepest shame and beat yourself with a wet fish until you remember. On the whole this county is a worthless crap-hole but EDSAC was one of our greatest triumphs. I bet you know who The (shitty) Beatles are, don't you?

  4. 22:40 I actually have a better idea than this for a programming language I'm working on; which is using currying to bake state into functions.

    let generate = generator(state, ..);
    value = generate();

  5. Great talk, brought me back to days of running around with huge tape rolls. Only thing I didn't agree with was "names with spaces". That'd make code less readable, can't quickly see if a thing is one thing or several. Also might be because I'm Finnish, we combine all composed words, eg. "washing machine" = "pesukone" (pesu=washing, kone=machine)
    https://youtu.be/99Zacm7SsWQ?t=3010

  6. >I wonder why this has a 7:1 like to dislike ratio he's pretty reasonable so fa
    >8:44
    >we need to get rid of tab

    Don't you tell me what sparks joy in my own heart motherfucker R E P O R T E D

  7. What a crook! Father of almighty JS! What a shame! The quotation mark war definitely won by backtick. ES6 tricked you in 2017. 🙂 By the way, I hope there will be no more language than our mother. Abstractions – like everything falsely finitely conceivable – are infinite. If we missed the opportunity to write a rather good A.I. in assembly, that's not a reason to think that JS abstraction of the programming world is not enough to do that.

    If you think runtime is important, you're wrong, if hardware couldn't develop maybe, but our first barriers are our missing faith, fear, and limited ability to think, and if you're not so limited in the latter you can tell the solution is not eradicate the former ones (believe in everything, blindly dare to do anything) but repair them as far as we could just see. Astronomers can tell you it's not a cheap work. 🙂

    Tinkering toward the video, Space vs TAB. Really? Why would I throw either one? TAB is not a complex abstraction of spaces like generator functions where the point maybe go home, but I waste my time instead of talking to OK google, Alexa, Siri, Cortana, etc… if they could do programming like D.C. then we would just correct it out sometimes. 🙂

    With all the respect to Father D.C.
    Luke

  8. Tab DOES spark joy. How dare you, Douglas! Seriously, Marie Kondo recommendations are for your PERSONAL space, not for something that is used by millions. By removing something that does not spark FOR YOU, you're making that (public) space emitting SHIT for others. Don't you dare.

  9. You only need multiple catch statements if you aren't working in the context of an integrated object framework. If you are, then all exceptions derive from a common exception class, and so all can be caught and, where it's convenient, you can use dynamic type checking to decide what you caught.

    I also disagree about not wanting the parens on the condition of an if, while, etc… It aids readability.

    And the thing about having a single, floating point number type isn't going to change anything. All you will do is moving the bugs from one place to another.

  10. The huge advantage of having two types of quotes is that it can, in some cases, get you out of a HUGE amount of quote escaping if you are generating quoted content programmatically. That's a somewhat special case and maybe not sufficient, but I sure find myself doing a lot of that.

Leave a Reply