Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Results of the 2011 State of Clojure survey (cemerick.com)
115 points by cemerick on July 11, 2011 | hide | past | favorite | 18 comments


On discussing the 2% of respondents who found the Clojure community to be a problem:

...rather than simply bask in the awesomeness of the Clojure community, let’s ask: is it possible to make that number be 0% next year? What can we do to minimize those negative interactions? Are they caused by random misunderstandings, or are there just a few bad apples?

This is how programming communities should be discussed. This statement gives me hope.


#clojure on freenode is glorious. I've never seen such a round-the-clock cadre of participants in an IRC channel who will take the time to give such thoughtful explanations. It reminds me of a time before the explosion of documentation for about everything on the web, when going to an IRC channel was the authoritative way of getting hard questions answered.


Indeed.

I find #python similarly useful, although people do tend to be less patient and more likely to tell you you're wrong (which I think is good, most of the time).


I haven't touched Clojure yet, although discussions on HN have made me interested, and getting a solid grasp on functional languages seems like the next logical step in my evolution as developer.

If you had to point a newcomer to a single 15-30 minute resource - blog post, tutorial, code sample, whatever - that can give them a true "aha!" moment about Clojure, what would it be?


I don't know about 15-30 minutes, but for anyone interested in learning Clojure, I have collected these links that I found interesting:

http://www.youtube.com/watch?v=Aoeav_T1ARU

http://blip.tv/clojure/clojure-for-java-programmers-1-of-2-9...

http://4clojure.com/

http://www.ibm.com/developerworks/podcast/ag/gloverseries-ha...

http://www.infoq.com/presentations/Value-Identity-State-Rich...

http://clojure.blip.tv/file/4824610/

http://clojure.blip.tv/file/4457042/

http://vimeo.com/11236603

http://www.infoq.com/presentations/Clojure-in-the-Field

Visit them roughly in order.

As for books, there are a few good ones, but I acutally recommend the documentation on clojure.org more than any book. It's clear and compact.


Rich's talk at the JVM language summit, "Are We There Yet?", gives a really good look into some of the ideas that underlie clojure. It's worth viewing even if one never uses clojure.

http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hic...


If you are already familiar with another lisp check out Rich introducing and discussing the language in detail:

http://blip.tv/clojure/clojure-for-lisp-programmers-part-1-1...

http://blip.tv/clojure/clojure-for-lisp-programmers-part-2-1...

transcript: http://clojure.googlegroups.com/web/clojure-for-lispers-tran...

It's not 30 minutes but it's what pushed me past using it on side projects to using it whenever possible and advocating it.


Frankly, I don't think such a thing exists that matches your constraints. Maybe if you're experienced with FP and with the JVM, I suppose? but the 15- to 30-minute aha! moment?

If anything I'd recommend reading Joy of Clojure.


Two articles for a start (I'm currently reading the second one, after getting excited about Clojure with the first one :)

http://thinkrelevance.com/blog/2009/08/12/rifle-oriented-pro...

http://java.ociweb.com/mark/clojure/article.html#Intro



Why is the "State of Clojure" held more than once ever, let alone annually? Everyone knows Clojure's state never changes.


Clojure is, in its own terms, an identity not a value(see http://clojure.org/state). At the risk of torturing a joke beyond breaking point maybe it should be "State of @Clojure".


Au contraire! Clojure's state does change; it's just explicitly managed.


Then a report seems like an unnecessary side effect!


Not sure if the downvotes are for the terrible joke or from people who don't understand FP


While a state itself never changes, Clojure can be in different states!


As was noted in the article, protocols and multimethods seem to be somewhat undervalued by the community. Maybe its because so many new users come from Java, Ruby and Python, where you only have standard OO(whatever that means). It would seem prudent to me to address this issue, and popularize them more, with more tutorials or blog posts.

I don't use clojure much these days, but in Common Lisp I use generic functions(the original inspiration for protocols and multimethods) all the time, and find them the second most important feature of CL after macros.


  standard OO(whatever that means)
I think it means: - single dispatch, based on the type of the default ("this") object; - class-based inheritance.

Anything else?




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

Search: