Fork me on GitHub

Hello, friends! I have recently picked up Clojure and I’m in the process of getting familiar with the community. I would like to share some thoughts from my entry to this world, and casual conversations I’ve had with “outsiders” along the way. In the past, my primary programming languages have been Python, Ruby and Elixir. When I ask developers why they like those languages, they often say things like “it’s easy to learn,” “it has such a big ecosystem, with a lot of libraries” and “the community is super welcoming and helpful.” If anyone would have asked me some years ago, I would also have given an answer along those lines. For lack of a better term, I’ll call that “the effects of branding” the language and its wider ecosystem. “Image” might also be an accurate term. In essence, it’a about people’s thoughts and feelings towards the language. I believe the “brands” of many popular languages can in large part be credited to their creators and early adopters and “influencers.” More than to the actual merits of the languages. When I ask “outsiders” about their impression of Clojure, they often say things like “it’s an exotic/esoteric language,” “it’s difficult to learn and use,” “yuk, look at all those parentheses!” and “[some other language] has a larger community and more libraries,” amongst other things. That is, unless their response is “never heard of it.” The objections I hear are often shallow and misinformed. @gaute spent a few year gently convincing me to try Clojure. And I’m a programming language enthusiast! I had heard some great things about the language, but it also seemed to have an unappetizing “cult-ish” aspect to it. And hearing the term “Java” put me on the defensive immediately (I did not distinguish between Java and the JVM at the time). When I finally caved and binge-watched @richhickey’s talks on YouTube, everything started making a lot of sense to me. As a programming language with excellent merits, Clojure can indeed speak for itself. But I feel like we could do a lot more help in “the communication department,” by being smarter about what we communicate and how. Anyways… Clojure has so much to offer, and I feel like the message is not reaching a broad enough audience. I feel like a lot of developers out there “don’t know what they don’t know.” Clojure is objectively a much more productive language, especially for “situated systems,” data-driven applications and data science. And one could make the case that it’s actually easier to learn than, say, Python. And I believe it’s a good thing to have as many users as possible. Because that’s that’s what generates buzz, makes it easier for developers to “sell” it to their companies, etc. When more companies start using Clojure, we’re likely to see an even more vibrant community, more capital investments (like Nubank), more open source libraries, etc. I believe more enthusiastic users and increased adoption is the catalyst for everything else. We should want to get this wonderful tool in the hands of as many craftspeople as possible. Here are some of the questions I’m thinking about: • How can we make more developers aware of Clojure and its strengths? • What are the most common misconceptions about Clojure, which are scaring people away? • How can we communicate the main benefits of Clojure more effectively, especially when contrasted with other popular languages? • What are the main roadblocks for getting more developers to try Clojure? • How can we make the “getting started” experience as smooth as possible? • What are the main libraries or frameworks (I know, I’m swearing in church…) that people are concerned about? What do you think? I don’t know if this is the correct channel for this discussion. If not, perhaps we could start a new sub-community/channel for people who would like to discuss these things in more detail. People who want to improve the “brand” and communication, increase the buzz, adoption, funding, etc. It could be called “brand” or “marketing” (a bit yucky) or something along those lines. Keep in mind that I’m still relatively new to Clojure and its community, thus I’m naive to what has happened in the past. Maybe these things have been discussed before; I wouldn’t know. And I imagine the annual “State of Clojure Survey” could reveal some relevant insights.

🙌 7

I'd love to participate in discussions around this, @leif.eric.fredheim. I suggest a channel named #growth be created.


A bit ambiguous IMO. I'd suggest #community-growth, but that makes me question whether the actual topic will be that different from this channel's.


I see it more as growing the adoption of the language and that this is separate (even if correlated) to community growth. Anyway, #growth is now created I notice. 😃


@U2FRKM4TW I added more specificity to the channel description.


@U0ETXRFEW Yeah, community growth is one of the most important aspects. But there are other related areas of growth as well, such as language adoption in companies, etc. I think #growth is not too broad, and not too narrow. But we can always change it later if it makes sense.


Growth can mean personal growth (and that would be my personal intuitive guess, based on the channel name "growth"), can mean company growth, can mean product growth, maybe something else. But not that important given a clear description.

👍 2

@U2FRKM4TW Yeah, giving things “good” names is perhaps the most difficult thing we do 😅 What makes it more difficult is how succinctness and specificity are diametrically opposed.


I read it as Clojure growth, given the slack it appears in. 😃


I’m more interested in spending time on discussing the underlying ideas and concepts themselves; not so much engaging in meta-discussions about semantics and “correct” usage of the English language. After all, words have no inherent meaning; only different usages. I’m not too fussy as long as everyone has a shared understanding of how the terms are used in a particular scope. I hope the channel description and the pinned post will provide sufficient context.


adoption is the common term used in industry so #clojure-adoption or #adoption would be more specific than growth.

👍 5

I posted a link to your conversation starter in #improve-getting-started, btw.


Awesome, thanks! I love your suggestion for #growth as a channel name. Sounds much better and less… “douchier” than “brand” or “markering” 😅 Just created the channel and added you there.