PurelyFunctional.tv Newsletter 303: The Clojure Process Debate
Sign up for weekly Clojure tips, software design, and a Clojure coding challenge.
I'm still digging into Agile. There are more newsletter issues on that topic to come, along with some essays I'm writing. But I wanted to take a break to talk about the current drama going on in the Clojure community.
I don't have much to say on it. As I've mentioned before, I don't have a lot of experience working on Open Source projects. A lot of people have brought their notions of what Open Source project should be like when they started working with Clojure. And Clojure has a particular process. So there is inevitably tension.
There will always be a misfit between some people's past experience and a given project. That misfit leads to complaints and possibly demands. And then there are rationalizations of those complaints and demands. Meanwhile, many people are quietly happy with the process.
I guess a big discussion is inevitable. I often looked from afar at other language communities and their dramas. I was glad I was far from that. I remember some dramas over the past 10 years, like "Patches Welcome" (is it impolite to answer a feature request by asking the requester to do the work?) and The RubySpec denial (Matz refusing to make his Ruby implementation use RubySpec). Every community has these. But they were always far away.
But now the fighting is close to home. It's very uncomfortable. Perhaps it is just the mark of a large community coming of age. I've been thinking about whether the product can be divorced from the process that created it. I've been thinking about why I chose Lisp in the first place—because the language is humble and lets you extend and modify it without resorting to authority or waiting for a release. And I've been thinking about why I chose Clojure—because its simplicity drew me in, there were jobs in it, and I like the culture of pragmatic simplicity.
I just want to get back to working with the language I continue to learn from. I hope the drama doesn't look too bad from the outside and cause people to shy away before they even begin. And I do admit fears of the community not surviving the loss of innocence. And one thing is clear to me: I would not want a language designed by committee. But, like I said, that's not much to say.
I'd love to hear why you got interested in Clojure. Meanwhile, please enjoy these links to some of the current drama, with a touch of perspective on other communities. Just remember that for every person complaining, there are ten or a hundred happily working in the great language we are lucky to have.
Please enjoy the issue!
PS Want to get this in your email? Subscribe!
Zach Tellman compares language development to pioneering. Some people want to build something of lasting value. If they can't build, they move on.
Rich Hickey's recent statement about entitlement in the dev community, also known as the "Clarity" post since Rich dropped this on the community with a tweet with "Clarity" as the text. He's implying that it's a response to the desire for clarity about the contribution process.
Tim Baldrige may have precipitated the "Clarity" post with this essay.
Chas Emerick chimes in.
What is Success? YouTube
Evan Czaplicki talks about his experiences in the Elm community and sympathizes with Rich Hickey's situation.
Should Cognitect do More for Clojure? From the archives
Is Cognitect standing in the way of Clojure's success? I tackle this question one complaint at a time.
Apropos the Conj YouTube
Among other things, we talk a bit about the mood at the conj.
A proposal from the Go community that their current software for managing Go should be scrapped in favor of GitHub.
Katrina Owen on how Open Source maintenance can overwhelm your life.
Hiccup class Pattern Free lesson
This week's free lesson is all about using multiple classes in Reagent's Hiccup.
Every week, a new lesson is made free for that week. Follow along on Twitter to be notified of the lessons as they become free.