1. 13
  1.  

  2. 17

    The author seems to conclude that Javascript as a ubiquitous network might be a grand accomplishment, despite spending the first half of the article calling out other winning networks (stack overflow, hackernews) for being hostile.

    I’d be deeply saddened to see Javascript “win,” not because of its (lack of) qualifications, but just because there’s great value in having a diverse set of languages and language communities with varying goals and technology.

    1. 7

      If I wanted a winner, it would be something like .Net’s CLR that’s designed to efficiently support many languages working together. They’ve put every paradigm on it with decent performance. Just that with any improvements we can do on simplicity, security, and performance.

      1. 7

        My ideal would be graal – it can run JVM languages, Ruby, Python, managed C, and many more at high performance. In the future maybe even a C# frontend may be possible, all interacting with each other seemingly natively.

        But even the CLR or classical JVM would be great. But JS or WASM? God f*cking no.

        1. 3

          What’s wrong with WASM? Technically it seems solid, although it lacks GC for now.

          1. 2

            For a cross-language platform you want an ABI definition that allows different languages to provide compatible functions, so that e.g. C can call C++ can call Ruby can call Java can call Haskell.

            WASM doesn’t provide any of that, in fact it’s even more low level than the C FFI we already have today.

    2. 12

      I would probably start rounding up any MREs I can find and a lot of canned peaches, then disappear into an underground bunker for the next 30 years or so.

      1. 3

        There’s still plenty of room in the ivory towers.

      2. 4

        most working developers

        Ummm.[1]

        1. 2

          An interesting & thought-provoking post. The thesis seems to be does the Web & its social networks influence languages’ popularities? I think it’s a good question. It’s probably yes. But how is StackOverflow & Github much different from comp.lang.perl and the CPAN? What’s different? I think it’s a big step that Excel will start incorporating JavaScript, but I could easily see things go a different direction. I mean, what if Chrome reaches full monopoly dominance and they decide to ship their own language runtime? Or what about Rust on Firefox? The “network” effects that have surprised us so far may continue to, well, suprise us.

          I find this part a little bizarre:

          Even purely social factors like the number of participants in a Gitter or Slack chat room about a project, or the number of people who follow a project on social media, are all weighed when we look at new technology.

          1. 2

            All the points the article makes apply to hosted languages as well. What’s important is the platform, and not any particular language that runs on top of it. What’s more interesting in my opinion is that some hosted languages are able to target multiple platforms. For example, Clojure has reader conditionals for expressing platform specific code allowing you to write libraries that run seamlessly on different runtimes.

            Instead of being tied to a particular runtime, you can now pick the one that’s appropriate for the problem at hand. My team writes full stack Clojure, and we have a lot of the same code running in the browser, on the JVM, and on Node.

            1. 2

              I would say JS already won. I prefer Python & Go. Still think Django or Rails are miles ahead in terms of productivity. However the vast majority of new projects are choosing for Node. We actually use Node for all our example/marketing projects since it’s just so much more popular than other languages. One interesting development is that Node adopted most of Python’s features over the past years, it really improved as a language. I still don’t like the async callback approach to handling concurrency, but other than that its a pretty decent language.

              1. 4

                I don’t know, depending on your company, country and position you may feel this differently. In my few working experiences, people would run away from Javascript. Backend people moving to golang majoritarily and frontend people going from javascript and moving to Typescript, Elm or Reason. I think it totally depends of where, who and what you’re working on…

                1. 2

                  Do people use Go for enteprise-y CRUD apps? I see a lot of Go for services and things that require eating through a bunch of data but I don’t hear about its use in other domains

                  1. 2

                    We use golang in this capacity. Backend services that don’t need tons of front end tooling are really nice to write in golang.

                    1. 1

                      Have you been basically hand-rolling most of the functionality (thinking in particular about ORMs and outputting HTML for the client)

                      To be honest when reading Go code it tends to look very “nice C”-y, but that feels like it might lead to frustration when dealing with a bunch of strings to concatenate.

                      1. 1

                        haha, why yes we have: https://github.com/blend/go-sdk

                        the golang stdlib gets you most of the way there, that sdk is really just a web helper, a logging / eventing helper, and a lite orm with a bunch of other random stuff thrown in for services that needed it

                    2. 1

                      Yes we did. As API serving JSON but also serving templates HTML. It’s quite nice but to be honest we didn’t grow it too big so we didn’t have much trouble maintaining it.

                2. 2

                  This is one of the big reasons why people should not use JavaScript.

                  1. 1

                    A quick search shows me that the article doesn’t include the word webassembly, so it probably misses a large part of the picture. I’m not worried if webassembly wins and JS winning implicitly implies that.