Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I’m noticing a lot of clojure posts recently. Has the language become more popular lately? Is there any reason behind it?


Not sure on relative popularity. If you haven't already, you should try it! Here's why I like it:

  - Very consistent, easy to keep the whole language in your head
  - Stable, core rarely changes ("accretive only" mindset).
  - REPL
  - Focus on a handful of data structures which will solve 95% of the problems you face, rather than a deluge of complicated abstractions.
  - Excellent concurrency primitives
  - Access to Java libraries if a Clojure equivalent doesn't exist
  - Macros
The only blemish for me was horrifically bad error messages.. other than that it's near perfect.


Very accurate ! and x1000 about the error message !


>easy to keep the whole language in your head

Is that not all programming languages. Practically have identical syntax for the problem they are solving. The thing which differs is “standard” libraries, which is not part of the language but a side effect of.


Python:

- functions

- classes

- list comprehensions

- generators

- inheritance

- operators

- string interpolation (a handful of syntaxes)

- module system hard to wrap your head around

- async (I think async is a workaround for getting more done with one thread because of the GIL). Pointless on machines with increasing number of cores. Just get multithreading right (and I want to learn Clojure's model - focusing on immutability) and you will not need async. Python can barely share memory across threads. I'm not sure you can get by without serialization.


- dozens of built-in functions/reserved words


My head didn't have enough space to keep C++ in it. Clojure is on the different end of the spectrum


My last job was mostly C++, my current job is mostly Clojure but I still do a lot of C++ stuff on the side as it is appropriate for some of my side projects.

Clojure is so much nicer to work with and this really resonates with me; I'm always still having to check language docs for C++ stuff but only very rarely for Clojure. Being able to keep almost all of it in my head is a huge benefit as I don't have to break my "flow" nearly as much.


Python, Java, JavaScript, R are all insanely complicated compared to clojure.


It was the 15 year anniversary recently.

But I think it's just general hackernews language waves. Someone posts something, it does well, other people get interested, find things post them and onwards.


My take is that more and more people are "rediscovering LISP" or are at least open to the idea of learning about them, and Clojure (this is going to wipe out my karma points) is a very good place to start your LISP-like journey.

When I started learning LISP+Clojure (yea ok purist Clojure might not be a perfect LISP or deserving of the name). There were a lot more Clojure tutorials and help out there than there was for CL (Common Lisp).

I usually start my new language journey by watching lots of Youtube tutorials, it gives you a broad-overview of landscape, before I dig into the code.

The other opinion why it's getting trendy again might be that, "the modern coding landscape" is not much "fun":S

Learning JavaScript(the modern guide), js-frameworks, Rust (yea it's good, but not fun).

Clojure is really fun :) Once you are used to an "interactive workflow" like evaluating and testing a function right then and there it's hard to go back to coding function in a file and running the whole program to test.

And I've said it in a few comments yesterday as well, anyone starting out with Clojure just tell yourself "It's Maps All The Way Down".


I would be _very_ surprised if it had. The limited observations I have suggest a very stable community. Not growing, not shrinking.


> Not growing, not shrinking.

HN commenters love using anecdata. So please allow me to use one and speculate on this phenomenon. So we have a product. Three devs wrote the initial prototype. Then over time, they hired five more. For three years we've organically grown our codebase, adding more and more integrations. The business expanded and grew enormously. We had to deal with a lot of pain, trying to grapple with enormous amounts of data and constantly changing requirements. In addition to tons of back-end services, we also had to build three different web apps. The company had to hire two additional PMs and two more designers. But we've managed to hold the fort with the small team as we were. Occasionally, the question about hiring more devs would come up, and we interviewed people. A person one day left (for some fabulous offer) and we had to quickly hire a replacement. I no longer work there and they hired only two more after I left.

I mean, I can keep going with the story, but I think you get the gist of it. Clojure allows building enormously big operations with a handful of developers. I just can't imagine building and maintaining all that in other stacks. And as it turns out, even when we needed to add new product features, we didn't have to hire a new team for that. And the business was not restricted by the pace of our development. We continued adding new features and kept supporting the existing ones.

This is a very subjective example case, of course. But it makes me want to ask: if we didn't have to hire more developers, and I don't think I ever heard of any company massively trying to expand their Clojure teams, how would then Clojure grow? Is creating new Clojure-based startups the only answer?


It's been growing ever so slightly all this time if Maven downloads are to be believed, but it has also been on a downward trend in the hype cycle for the past few years ever since Rich Hickey stepped back from the limelight.


A reason other than it being awesome?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: