> As much as I love Clojure this is not entirely true. Without naming names there are some prominent projects/devs that would not qualify for this.
Which parts?
Effective? Yes. Undoubtedly. The Clojure community is full of very practical and driven developers.
Talented? Again, in general, the Clojure community is full of very talented people.
Kind? Definitely. The Clojure community isn't partial to ranting and raving. You aren't going to be called an idiot for making a mistake or not knowing a particular concept etc.
Supportive? Very supportive; however, a lot of Clojure projects have well defined goals and approaches, and they take a "you will get out what you put in" approach to assistance.
To developers who expect to have their hand held, and for developers who want to jump right in and impact a projects direction, it might feel un-supportive.
However, the flip-side means you get good feedback, and if you put in the effort then the level of support is above and beyond most programming language communities.
With a few other language communities I've tried to get into there will be a dozen people ready to spend 10minutes helping a raw newbie contributor, but very few people willing to spend the 10-20 hours to really review a proposal/idea/contribution.
If you're going to make statements like that, you should point names or at least specific cases.
I would say, yes, Clojure is pretty much governed by the benevolent dictator model. Is that bad? What is the alternative? Design-by-committee model where the language/project/library goes in 100 different directions with mostly questionable quality?
Personally I think Clojure takes the benevolent dictator model too far. It's possible to be a benevolent dictator and still publish patches for review before you merge them, even if you do intend to have the final say. Rich just runs git commit && git push without telling anyone what he's working on. Most of the time it works out but in the most recent development cycle it's been kind of a mess.
First, I have to say that I'm not a Clojure contributor, and haven't contributed a line of code.
I am "just" a Clojure user. Clojure by itself is already pretty good. Nothing is perfect of course. I want Clojure to keep improving in all kinds of ways (smaller memory footprint than C, please? when can I get THAT? oh, can you also throw in the 1 ms startup time, thanks :)), but I also want it to work well, including my existing and previous code. When something is already pretty good, you work twice as hard at not screwing it up first before you mess too much with it.
What specifically do you mean by "mess"? What has been "messed up"? Has your Clojure code stopped working? Has it become slower with a new release? Has there been a glaring memory leak that renders your server useless after a few hours of running? Because I can point you to a number of "open-source" projects with huge funding where that has been the case.