This week's book giveaway is in the OCPJP forum. We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line! See this thread for details.
If you're familiar with some other LISP or a functional programming language, you'll likely find the pace of Joy of Clojure to be brisk but conquerable. Without at least one of those already in your background, however, you might prefer to start with a Clojure book more oriented to beginners, such as "Programming Clojure" or "Practical Clojure", or perhaps even a book not just about Clojure such as "Land of Lisp" or "On Lisp"
Pradeep bhatt wrote:Would you recommend any functional programming book to be read before this book. which one ?
Many people recommend Paul Graham's "On Lisp" and I can't say that I disagree. As far as Lisp books go, OL is one of the most functional that you'll find. As a nice bonus... it's free. I went through it with a Clojure eye at one point and found it to be a nice learning experience. http://blog.fogus.me/tag/onlisp/
I'm a bit surprised to see On Lisp recommended in the context of beginners. I agree it provides a good ramp up that allows readers to really "get" functional programming concepts but it assumes a certain amount of Lisp knowledge - the first few code examples use Lisp constructs that are not exactly readable (if you don't already know Lisp).
I actually found The Joy of Clojure to be a great way to learn Clojure and the fast pace suited me - but I have quite a bit of functional programming experience and I've been developing software for about 30 years so I may no longer be a good judge of what works for beginners
Perhaps Rogerio could clarify what sort of "beginner" he means? A beginner to programming in general, to functional programming, to Clojure?
On the Clojure list, it's quite instructive to see how some long-time functional programming folks trip over Java infrastructure issues when trying to get started with Clojure so your background clearly has a big impact on how easily you'll pick up Clojure the language and / or the concepts behind Clojure.