Clojure for the Brave and True by Daniel Higginbotham
I have to admit I really, really wanted to like this book.
While at least one of our company offices has invested a lot in getting across Clojure as being the next big thing for some of the technical projects we could be running and it does seem interesting enough on its surface (particularly with interesting datastore developments like Datamic) and purports to solve some interesting problems that are difficult to do so in other languages, I have to admit the primary draw of the book for me was the fact the writer had a style similar to that of Why the lucky stuff whose book on Ruby sucked me back into programming and enjoying building digital products again.
Sadly, while the style is there and the book is definitely great in introducing Clojure and covering the core components of Clojure and how it works and why it is different and advantageous to use it in many cases (though noticeably missing things like core.async -- though that chapter has now been added in Leanpub), it deeply lacked a convincing argument for me to use it besides programming purity and semantics.
Most of all, after working through the book, I felt that it really didn't show me something I could already do or even show me something useful to construct with Clojure which was its biggest problem. A practical example building on past chapters seems to be de rigeur in programming books for a reason. Learning about the language without seeing where and how to apply it for something practical ends up being a theoretical exercise not a lot of us have real time for (ok, sure the argument can be made that you need to apply this in ways but simply telling me to go do some katas or euler challenges in the language feels wanky.). Show me how to build something useful.
In any case, like I said, I wanted to give this a much higher rating on Goodreads, but ultimately it fell short for me in getting me to where I wanted to go with an introductory book on Clojure.