I’m a web developer. 

My experience learning Clojure was that it is very hard to read. After a year of writing it, it still hasn’t really clicked with me. 

I can read it, but it requires significant focus and wording out what is happening in the code for my brain to grasp it.

Code written in Clojure relies on the reader understanding what will happen with the arguments provided to the function. 

This makes it very hard to read. I’m guessing that this is a problem every Lisp has, but so far I’ve only worked with Clojure.

A very basic example to make my point:

(if (= 0 0) true) // Clojure

if (0 == 0) return true; // JS

One of these examples are readable (as PLAIN ENGLISH) while the other one requires previous knowledge.

This is a massive con of the language. 

Everything is like this in Clojure.

(conj [1 2 3] 4) // Clojure

[1, 2, 3].push(4) // JS

Clojure is a great learning experience (immutability, small functions, avoidance of side-effects etc) but I am yet to discover a suitable project for it.

“Digitally, I am too much. And I’m dieting. Sometimes I get the munchies and install something in an intellectual fit of gluttony – an app, an Amazing New Tool That Will Change My Life, a videogame, etc. – but I almost always end up deleting it. I try to be a little less every day, and the best way I’ve found to do that is to play a game called Die World Die. I pull out my phone, switch on Pomodroido and for 25 / 35 / 45 minutes, I pretend the Internet doesn’t exist. When I finish, I need the Internet a little less and I need actual contact with people a little more.

When I fail to do this with the important things, I end up feeling weary and jaded. But when I do this with the important things, I love the Internet again and I’m filled with optimism.

I love the Web. But I aspire to needing it much less, and thereby making better use of it.” – Mike Sowden