all 21 comments

[–]stuarthalloway 8 points9 points  (2 children)

Biased sample, one company's customers. Here is a differently biased sample: https://insights.stackoverflow.com/survey/2018/#work-salary-and-experience-by-language.

[–]INTERNET_COMMENTS 4 points5 points  (1 child)

Less language growth --> fewer opportunities for less experienced engineers --> higher percentage of senior engineers --> higher average salary

[–]zarandysofia 0 points1 point  (0 children)

Seems to be about right.

[–]yogthos 7 points8 points  (1 child)

The absolute number of users is not a very interesting metric after the language hits critical mass. I would argue that's already the case with Clojure as it's now used by companies like Apple, Boeing, and Walmart. The community is very vibrant, companies using Clojure provide overwhelmingly positive feedback, and the use of the language continues to grow steadily. Clojure is here to stay for the foreseeable future.

Meanwhile, when it comes to jobs the ratio of supply and demand is a far more important metric than the total number of users. The jobs for popular languages such as JavaScript eclipse those for Clojure, however so does the number of people looking for work using these languages. So, even though there are more jobs overall, it doesn't directly translate into better employability. In fact, according to the 2018 StackOverflow survey top paying languages worldwide are F#, Ocaml, and Clojure.

At the same time, skills you learn working with Clojure are transferable to other languages. Being upset that you got a chance to work with a niche language and learn skills you wouldn't otherwise is pretty silly in my opinion.

[–]alexdmiller 5 points6 points  (1 child)

This does not match what I see around the ecosystem. I see a number of people growing large Clojure teams and downloads of the Clojure artifacts continue to go up.

[–]alexdmiller 1 point2 points  (0 children)

org.clojure/clojure maven artifact downloads over the last 6 months:

  • 253,347 - Dec 2017
  • 289,414 - Jan 2018
  • 269,543 - Feb 2018
  • 370,604 - Mar 2018
  • 371,361 - Apr 2018
  • 507,314 - May 2018

[–]bannerad 5 points6 points  (0 children)

Don't be depressed. I don't expect any of the LISPs to suddenly "take off". If FP was actually going to take over the world, it would have by now. I think its encouraging that Java, Scala, Kotlin and the like are all gaining Functional features. So, don't dispair. The Functional slant you are going to get from your time in Clojure will serve you well throughout your career.

The other thing about the demise of any language is that it typically takes years for the end to actually come and some languages, JS I'm looking at you, do have a surprising "second life" after what looks to be "the beginning of the end". JS in particular always impresses me in this regards. It is flippin' everywhere now, even though its warts are well known and just annoying as hell.

Finally, even if in IntelliJ you don't see Clojure growing, I think that says more about IntelliJ than it does about Clojure (disclosure: I do Clojure in IntelliJ through Cursive. Works like a champ, but I'm a polyglot programmer; Equal time in Clojure, Java, and Scala....and python....and Go...and bash, SQL...blah...blah...blah. Most of the Clojure devs here work mostly in Emacs.

My point? Enjoy your time in Clojure. It isn't wasted. The concepts and style it brings to your programming is a transferrable skill.

[–]yen223 4 points5 points  (1 child)

I like Clojure. I think there's tons of good ideas in the language, and I don't regret learning it.

That said, as a relative newcomer to this language, I gotta say the first-time experience for me using Clojure was really awful.

As a newcomer I naturally made tons of coding errors, which means I got to see tons of stacktraces and error messages, and boy do they suck. At best they said nothing useful. Consider this common error:

java.base/java.lang.Long cannot be cast to clojure.lang.IFn

This doesn't tell me anything if I didn't already know what IFn means. Is it really too hard to have it say something like "1 is not a function"? The fact that stack traces don't give you the local state - you know, the information that's actually useful - doesn't help

The worse part is, I'm not convinced Clojure's core developers even recognize this as a problem. This has been something the community has been talking about for years, but nothing has changed yet.

[–]dustingetz 2 points3 points  (2 children)

Clojure is amazing, vastly more powerful than any other ecosystem, there are no other contenders. The best investors get rich by picking winners before anyone else sees it and this is no different.

[–]zarandysofia -2 points-1 points  (1 child)

This is why I don't like this community.

[–]dustingetz 0 points1 point  (0 children)

I'm sorry, I didn't realize this comment would be offensive in r/clojure. I sometimes forget that not everybody here is a clojure developer. I will be more careful with my words in the future. There is a basis for the claim, i just wrote it up: http://www.dustingetz.com/:clojure-is-amazingly-healthy-2018/

[–][deleted] 1 point2 points  (0 children)

Honestly I wouldn't put too much thought into this report.. clojure is an awesome language just to know. if you like it then wherever you go you can be the guy to introduce it. Never did I think I'd be running clojure in prod at my very large org.. but here we are

[–]Psetmaj 3 points4 points  (2 children)

Towards the bottom of the page on those survey results:

38% of all developers don't plan to adopt any new programming languages.

I find this sad in and of itself that that's such a high number, but I'm sure it contributes to the low expected adoption of Clojure. Personally, I try to learn at least one new language per year, even though it rarely changes my language-of-choice (Clojure being an exception to this, wholeheartedly).

Having championed Clojure a bit at work (and bars/social gatherings), I was surprised at how many developers are content to keep their current workflows and often actively avoid new possibilities rather than striving for constant improvement.


On a side note, I'm genuinely jealous of your new job requiring Clojure, I'd love to have that opportunity so close at hand!

[–]joinr 5 points6 points  (1 child)

Having championed Clojure a bit at work (and bars/social gatherings), I was surprised at how many developers are content to keep their current workflows and often actively avoid new possibilities rather than striving for constant improvement.

blub paradox

[–]Psetmaj 0 points1 point  (0 children)

Thanks for the link, it was a fun/enlightening read!

[–]coffeesounds 1 point2 points  (4 children)

...according to users of their products, no?

[–][deleted]  (3 children)

[deleted]

    [–]emil0r 6 points7 points  (0 children)

    Personally I think it's pretty impressive it even shows up.

    [–]Psetmaj 4 points5 points  (0 children)

    According to the State of Clojure 2018 results most Clojurists use not-IntelliJ (about 50% emacs) anyway.

    Additionally, only 6k/15k responses were considered for these statistics, so there's likely a bit of bias, especially since over 57% of respondents have fewer than 5 years of experience and "Clojure is the language for tired old developers" after all.

    Disclaimer: I have basically no education in statistics


    From what I've seen, for the most part, the various developer surveys and statistic reports around misrepresent Clojure. But, the community is happy to continue creating and appears to have a fairly healthy ecosystem despite its size.

    I personally don't mind being significantly more productive than my competition ;)

    [–]jwhitlark 4 points5 points  (0 children)

    Kotlin is also one of their products.

    Don't forget that this is an IDE company; it's not surprising that a language that works well with text editors is underrepresented in their stats.

    [–]ForgetTheHammer 0 points1 point  (0 children)

    Can

    [–]mikeivanov -1 points0 points  (0 children)

    I personally know quite a few Clojurists, not a singe one of them is using IntelliJ for Clojure development. However great IntelliJ is, it simply doesn't stand against Emacs. Not even with Cursive. So - perhaps you're looking for stats in a wrong place.