Clojure Gazette 170: Continuous Evolution

Continuous Evolution


Issue 170 - April 25, 2016

Read more about this week's sponsor, Arachne , at the end of this letter.

Hi Clojurists,

Clojure has evolved in the 4 years (!!!) I've been writing the Gazette. I have always envisioned it as a newsletter to inspire Clojure programmers. At the beginning I was so excited to see Clojure getting popular. Clojure was pushing the cognitive envelope of software engineering. Instead of talking about innovations in syntax (significant/insignificant whitespace) or which methodologies to adopt, it advanced notions that seemed to me to truly matter.

The thing was, those notions weren't novel. I was taught them in Computer Science and they were recommended in many books. I'm talking about immutability by default, a notion of time tied to state change, the radical idea that simple doesn't mean easy , or the rejection of agile/TDD in favor of deep thinking . What was novel was that Clojure helped you practice them. What's more, the promotion of the language (Rich giving talks) so clearly focused on the principles instead of on the language. Watching Rich's talks was an education in software design more than it was a lesson in Clojure.

I was rejoicing in the idea that this language which spoke to me so much, despite its flaws, was gaining mindshare. I wanted to be a part of its growth. And I wanted to make sure that those ideas, along with the other beautiful ideas that have found expression in Clojure, be promoted and understood.

The extent to which I've achieved that, I don't know. There are 4,728 subscribers to the Gazette as I write this (thanks for being there). I modeled the newsletter loosely on the work of Peter Cooper (JavaScript Weekly, Ruby Weekly, etc.). His newsletters are super successful with hundreds of thousands of subscribers. Of course Clojure isn't JavaScript or Ruby, but I was naive and thought some miracle would occur. I thought I could make it a business.

The Gazette has evolved with me. At different times, I've tried interviews, links, longer commentary, themed issues, etc. I've even tried to get regular sponsors (by the way, my subscribers are very engaged). And I find myself here, with a newsletter that largely resembles the thousands of other link-curation newsletters out there. And I know why: it's very efficient. I've learned to quickly scour reliable sources for enough interesting stuff to fill an issue, often late the night before I publish it.

When I first started, I had tons of great, old stuff that I'd collected over the years that I could resurface. Very quickly, I ran out of the older content, and had to start diligently collecting new stuff for an issue each week. My process is pretty efficient, but I still spend many hours watching videos, reading blogs, and assembling everything for an issue.

That's not working for me anymore. I've got this goal of teaching Clojure and functional programming to the ever-growing population of programmers. And I also believe that in one or two generations everyone will need to program at least a little. They're probably going to learn JavaScript, but I hope to make sure the good stuff is accessible for those who want it.

So expect some changes. I can't say what they are, because I'm not sure. I'm thinking a longer letter like this. A more digested idea than a bunch of links. Something more valuable for all of us. Links are easy. Go to Reddit or Planet Clojure if that's what you want. But the Gazette is about to get more opinionated and personal.

I'm not too scared that everyone will run away because there must be something about me and my thinking that has kept you here. And who knows, it may just be what was missing to rocket me to stardom. Stick around for a couple of issues to see where it goes.

Rock on!

PS Please check out the sponsor. The Arachne Kickstarter page has some really interesting ideas, whether or not it is funded.
PPS Want to get this in your email? Subscribe !
PPPS Want to advertise to smart and talented Clojure devs ?

Sponsor: Arachne

For a hobby project for learning Clojure, piecing together a web app from libraries works fine. But important concerns like security, logging, and authorization often get left behind because who has time for the boilerplate? Luke VanderHart has a new Kickstarter to build a modular app framework for Clojure. With it we will still piece together our app from parts but the boilerplate will be taken care of by the modules. It's the best attempt at a framework I've seen that leverages Clojure's unique strengths. Please back the project if you'd like to build production apps in minute s, not months.