• Wednesday , 3 June 2020

The Post JavaScript Apocalypse – Douglas Crockford

Code Canyon

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

Original source

3d Ocean

Related Posts


  1. SimGunther
    July 22, 2019 at 14:30

    37:24 So would int63 * int32 be int63 still or is it a whole new type for each layer of multiplication in the expression? :S

  2. Samantha Atkins
    July 22, 2019 at 14:30

    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.

  3. Samantha Atkins
    July 22, 2019 at 14:30

    Too much cute off-topic junk as in most videos

  4. pgo eds
    July 22, 2019 at 14:30

    He really doesn't like tabs – his C code on github has no makefile.

  5. Ella Blun
    July 22, 2019 at 14:30

    javascript has superior type system. it doesn't care at all 😀

  6. Heinz Huber
    July 22, 2019 at 14:30

    chanel nice

  7. Árpád Juhász
    July 22, 2019 at 14:30

    FOR TRAN. holy crap.

  8. Brandon Haston
    July 22, 2019 at 14:30

    It sounds to me like a lot of features he's suggesting for the "next language" are already resolved with most any Lisp or Scheme dialect.

  9. Pekka Ylönen
    July 22, 2019 at 14:30

    You still have JavaObjectNotation, but where are Java Beans?

  10. Sudhang Shankar
    July 22, 2019 at 14:30

    If I ever have to read code where someone used "if" as a variable, I'll get violent

  11. mst
    July 22, 2019 at 14:30

    Is this trolling?

  12. Findecanor
    July 22, 2019 at 14:30

    4:26 Would not "Does this resonate with you" be a better translation?

  13. Sam Redmond
    July 22, 2019 at 14:30

    Lets remove the Random function because it keeps giving us a different number lol

  14. James McManus
    July 22, 2019 at 14:30

    The lone numeric type should be Dec256, and 0/0 should produce a cryptographically secure random value.

  15. Tom Messig
    July 22, 2019 at 14:30

    Very inspiring talk, I've got to do more functional programming in C#.

  16. asd qwe
    July 22, 2019 at 14:30

    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.

  17. Farliga Tankar
    July 22, 2019 at 14:30

    "names with spaces" -> all credibility lost

  18. Spindle Fandango
    July 22, 2019 at 14:30

    is this an April Fools joke, or has he just gone mad?

  19. edgeeffect
    July 22, 2019 at 14:30

    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?

  20. Basaltq
    July 22, 2019 at 14:30

    The argument he used to get rid of tabs is the exact same he used to justify double quotes. Spaces all ready have a function, but tabs are designed for indentation!

  21. Waji Deus
    July 22, 2019 at 14:30

    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();

  22. Ivan Eisenberg
    July 22, 2019 at 14:30

    Is "the web is cluttered and full of errors" a play on "the night is dark and full or terrors"?

  23. Kooditonttu
    July 22, 2019 at 14:30

    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)

  24. Wasz Informatyk
    July 22, 2019 at 14:30

    Sir, it seems that you are a fan of George Carlin wisdom.
    "(…)their stuff is shit, and your shit is stuff!"
    "So now we just bring the things we know we're gonna need(…)" 🙂

  25. mycollegeshirt
    July 22, 2019 at 14:30

    javascript suuuuccckkkkkkkkkkkkkkssss

  26. disk0__
    July 22, 2019 at 14:30

    >I wonder why this has a 7:1 like to dislike ratio he's pretty reasonable so fa
    >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

  27. gybfefe
    July 22, 2019 at 14:30

    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.

  28. Dustin Cleveland
    July 22, 2019 at 14:30

    Wait, did he just go through five minutes of exposition to explain the concept of "tokimeku", and then immediately say that it's not applicable to programming?

  29. Shaun Patrick O'Jameson
    July 22, 2019 at 14:30

    Both of those quoted string literals can go, because we have backticks.

  30. Jason Shin
    July 22, 2019 at 14:30

    Crappy language like Java… that's right..

  31. Adrián Gugyin
    July 22, 2019 at 14:30

    Hardware is what my heart is missing in the place of the word "purity"… 😀

  32. Anthony Tonev
    July 22, 2019 at 14:30

    Get rid of tab? Are you nuts? Tab makes you jump down the menu – gives you speed at using the app.

  33. Name Last Name
    July 22, 2019 at 14:30

    +1 for not making the mandatory show-of-hands about programming

  34. metalim
    July 22, 2019 at 14:30

    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.

  35. CharmedQuarkSystems
    July 22, 2019 at 14:30

    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.

  36. CharmedQuarkSystems
    July 22, 2019 at 14:30

    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.

  37. hrmIwonder
    July 22, 2019 at 14:30

    "The web is cluttered and full of errors." –I love the word play there! great game of thrones pun

  38. Michele Fattoruso
    July 22, 2019 at 14:30

    recommend to watch the series and then spoiler everything…

  39. Diginess Unknown
    July 22, 2019 at 14:30

    What a crackpot. Who cares about the Java guys and their stupid block scope. Java's as good as dead, Oracle killed it. "Let"'s move on.

  40. pepper669
    July 22, 2019 at 14:30

    Brilliant, as usuaI. I like my tabs and my single quotes though. Speaking of security, I like the concept of tainted variables in PERL.

  41. Radu Marinescu
    July 22, 2019 at 14:30

    Strong opinions and weak arguments. Some good points, though.

  42. walter0bz
    July 22, 2019 at 14:30

    'if (..){}… '   .. actually c++17 has a nice feature that will leverage the condition around the parenthesis,  if (init;cond){ .. do stuff.. }

Leave A Comment

You must be logged in to post a comment.