

In-Depth Book Review: Practical Clojure - thekguy
http://programmingzen.com/2010/07/16/in-depth-book-review-practical-clojure/

======
lukev
I'm one of the authors of this book - thanks for the mention and the (mostly)
positive review. I definitely agree that it could have used more in-depth
examples, which is the main criticism we've been hearing.

For future reference, though, what kind of examples are good for a book of
this type? We thought of putting in an extended example of a GUI application,
or a web server, or something like that, but felt that that would take an
unreasonable amount of time to introduce the required libraries and domain
knowledge in a beginner-friendly way.

Stuart Halloway's book actually tends to get _criticized_ for its extended
example, the lancet build system developed over the course of the book. Many
people just find it irrelevant and boring, since it doesn't seem worthwhile to
delve into the complexities and requirements of a particular system like that
if that's not what you need. We wanted to avoid the same thing, but it looks
like we went to far the other way.

Any tips for the future? I've heard some people mention that a "Clojure
Recipes" type book might be welcome.

~~~
acangiano
I would introduce self-contained examples like Practical Common Lisp does.

A few random examples that come to mind are:

* a file compression utility

* a log parser

* a spam filter

* a web server

* a small web app with Compojure

* an Incanter script that plots some CSV data

* a small GUI app

* a script that interfaces/embeds some Java library/framework like Processing

* a very basic wrapper for the MySQL driver

* a command-line Twitter client

* a basic equation solver

...you name it. That's what I'd expect from a book with "Practical" in the
title. Note that none of these would require many lines of code.

Your book is a fine introduction, but it could really use a more hands-on
approach even if we were to consider it a "Beginning Clojure" book.

And to answer your second question, yes, a book on Clojure Recipes would no
doubt be welcome.

~~~
brehaut
> * a small web app with Compojure

perhaps s/Compojure/Ring/ - looking at how the request response cycle works in
ring and how you can write raw handlers, or dispatch via compojure or
moustache or aleph etc.

