PurelyFunctional.tv Newsletter 237: Unicycles, Evolution, Chasm

Issue 237 - August 07, 2017

Hi Clojurers,

Well, the secret I hinted at yesterday is out. I'm hosting a Clojure conference in New Orleans on February 15th and 16th, 2018. It's called Clojure SYNC. Mark your calendars. I promise to keep you posted.

Please enjoy the issue.

Rock on!

PS Want to get this in your email? Subscribe!

Building Re-frame Components

Like I said last week, this course is essentially finished. I am starting the launch sale in one week. You'll hear all about it, if I do things well.

Creative Thinking

Claude Shannon was the inventor of Information Theory. There's a new book out about him and I'm looking forward to reading it. This is a great essay about the generation of ideas.

Clojure - the perfect language to expand your brain?

Eli Bendersky presents a good case for Clojure as a brain-expanding language. This article was doing pretty well in the link sharing networks, so I feel like commenting on it. While I believe he makes good points, and while I believe learning Clojure would expand most programmers' brains, I doubt that this is the kind of article Clojure needs now to grow its user base.

If Clojure is to grow, it will need to "cross the chasm". To do that, it needs mainstream acceptance. This usually translates as mundane things like case studies, good pay and career stability, and complete solutions for businesses. Expanding your brain is a great goal. It's what drew me to Clojure. But we need to appeal to people with more pragmatic uses for the language.

John Pither has a good analysis of Clojure's current position on the curve.

The Evolution of Trust

Nickey Case has another interactive guide to a natural phenomenon. This one is about Game Theory.

How CircleCI Processes 4.5 Million Builds Per Month

CircleCI's code is mostly Clojure. This is a pretty in-depth view of their whole stack.

Two new Concurrency lessons

Did you know that this course started the whole membership thing? I had courses before that, but this was the first one where I thought about releasing them iteratively. The first lesson was about Atoms. I was at a meetup, discussing the viability of the membership model. One of the big risks was whether I could produce content regularly. So I went home and two hours later, I had a 10-minute lesson.

Anyway, I'm really happy to be continuing the Concurrency course. There are two new lessons:

  1. Deref
  2. Ref

Each also has a bit of example code.

Can I do FP in my language?

This is a question I get a lot. I've usually answered it pretty poorly, and known it during my answer. But I think I've got a good explanation of my thoughts on the matter. In summary: Yes, you can do FP in any language. But the important question is whether you actually do FP in your language.

Clojure with Alex Miller

A nice interview of Alex Miller by Joy Clark. I love Alex's humble and insightful answers about what Clojure is useful for.

Moving Average in Lodash

I had someone ask me how I would implement a Moving Average algorithm in a functional way. The example he had was a clumsy nested for-loop implementation. There was also a version that used map and filter. So I gave it a shot. I like my solution, he got excited about it, and so I thought you might know someone out there with a similar question.