found drama

get oblique

The Joy of Clojure

by Rob Friesel

In the realm of technical, programming-related, computer science-type books, The Joy of Clojure is a bit of an oddity. And this is a very good thing.

WHAT THE BOOK IS NOT: The Joy of Clojure is not a beginner’s introduction to the language. The Joy of Clojure is not a glorified appendix of methods and syntax. The Joy of Clojure is not a “cookbook” or a “how-to” or an “FAQ”. The Joy of Clojure is not an explanation on how to shoe-horn your Java code into (some (graceful [parenthetical syntax])). The Joy of Clojure is not a dry or sterile technical manual.

WHAT THE BOOK IS: The Joy of Clojure is as much a philosophical text as it is a survey of the language. The Joy of Clojure embraces the language’s own flexible nature and describes itself in that way. The Joy of Clojure has a sense of humor. The Joy of Clojure expects a little work from you (but is willing to lend a hand along the way). The Joy of Clojure respects the baggage that you bring from your other programming languages, but expects you to check those bags at the door. The Joy of Clojure wants to make you a better programmer, not a Clojure programmer.

Rating? ★★★★☆

So… why 4-stars? I seldom give out 5-star reviews—I reserve those for books that completely blow my mind. While this one was a real eye-opener, my lid did not pop fully and totally off. Why not? Partly because I’m coming into Clojure as an outsider. It isn’t a book for Clojure beginners—you could be a Clojure novice and get a lot out of this book, but I believe you would need a little more background in Lisp[1]. How to get that 5th star…? A “chapter 0” for the complete novice? or maybe an appendix that can help that novice wade through some of the more esoteric-feeling elements of the language.—i.e., folks such as myself that are unfamiliar with Clojure (and/or Lisp in a more general sense[2]) may find the language’s syntax a bit… opaque? oblique? There’s a learning curve with every language, I suppose but there are certain things in Clojure that look FUNDAMENTALLY WRONG to someone accustomed to a language like JavaScript or Java. The onus is (of course) on the reader to embrace these things (i.e., “Who is the one that opened the book and wanted to learn something new?”) but it’s sometimes easy to get lost in these little details.

I would absolutely recommend this to anyone I know that had an interest in Clojure and/or functional programming.

  1. Lisp’s syntax can be a bit off-putting to outsiders and novices… and the authors even come out and say this in the book. []
  2. Viz., I haven’t looked at/used Lisp in probably… 10 years? []

About Rob Friesel

Software engineer by day, science fiction writer by night. Author of The PhantomJS Cookbook and a short story in Please Do Not Remove.

View all posts by Rob Friesel →

4 Responses to The Joy of Clojure

David Cabana says:

As someone who finds Clojure to be a breath of fresh air, I am curious. What are some of those things that strike you as “FUNDAMENTALLY WRONG”?

found_drama says:

@David– It’s mostly syntax. Most of my work is in JavaScript so seeing a name-with-hyphens sets off red flags. My brain has (for better or worse) come to see that as poison. It’s an unfortunate bias.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*