loading...

re: Go from zero to clojure in 60 seconds VIEW POST

FULL DISCUSSION
 

For any language to take over the world it must have a killer app.

For example, Java became popular because Servlets / JSP were far superior over ISAPI filters (and it was marketed as the language for the Web).

C became big because of Unix and later Windows (both Win16 and Win32) which dominated young programmer's minds in the early 90s. C++ later became popular because of Win32 and MFC.

Ruby became popular because of Rails and the promise that web application development could be heavily simplified.

SQL became popular because of the rise of relational databases.

Objective-C became popular because of the iPhone (Swift because they wanted an alternative to Objective-C).

Javascript gained its dominating position after Google demonstrated GMail: a very versatile client based web app that was actually great to use. Thus the "AJAX" revolution in Javascript and the subsequent long list of libraries to support better and richer client side JS.

So if Clojure is going to take over the world, what is its "killer app"?
What great proof of concept is going to make us bother to move over?

Theoretical benefits rarely matter. Otherwise we'd all be programming in Scheme, Haskell, or Smalltalk.

 

I love these points and as an unabashed Clojure fan, I honestly cannot say that there is any one thing which constitutes a killer app for the language. I believe the combination of JVM + dynamic typing + FP (specifically immutable data structures) is an amazing combination for developers, but I'm honest enough to also admit that the learning curve is steep enough that not enough will make it beyond "Hello, World".

The last language that really exploded in growth (in absolute terms) was/is JS because of the importance of the browser. We may not see similar expansion again by the single language (although you could argue that JS itself has fragmented via TypeScript, etc) unless a dominant platform establishes itself with a single language behind it.

Will AR/VR + ??? become as omnipresent as Web + JS?
Will data + Python become as omnipresent as Web + JS?

 

Well JS has its place and its unlikely to yield for the time being.

But I wouldn't go so far to say that there will never be a big change. I've seen radical changes (as illustrated above).

Python is popular because of numpy and because its being taught as a first language. People are doing with Python what they used to be doing with Matlab (and previously Fortran). But we're at a unique point in history where a whole new generation is being trained in Python and JS is one of the most important languages out there. So for the first time in history we have a dynamically typed language as a main introductory language. When these people become decision makers its going to affect what technologies are used.

But Python and JS live in different worlds.

 

Clojure is adopted by the big corporations because it's immutability makes it trivial to scale into multi-threading, multi-processors and big data across cloud instances. It is used way more than people think. You talk to some Clojurists from big companies, and they have 100 or so Clojure developers out of a java ecosphere with thousands.. They don't talk about it much, but that doesn't make it at all insignificant.

Clojure is adopted by start-ups and such because it's repl driven development makes getting from idea to prototype very fast and easy. It's dynamic typing allows you to go straight into solving business problems without building a ton of data structure objects in advance.

Clojure also tends to come out on top on nearly all bug studies. Breaking changes are rare.

Those are the killer ideas propelling Clojure. It probably will never take over the world, but those who use it love it, and do pretty well for themselves by and large. It has a solid enough footprint that it isn't going away anytime soon.

Code of Conduct Report abuse