Learn Clojure


This web site is an attempt to gather together everything you will need to learn Clojure, assuming that you already know another programming language or two or three.

This site launched in December 2010 with an initial batch of content. Minor pieces have been added and changed in 2011 and 2012.

What is Clojure?

From Clojure.org: “Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR ). It is designed to be a general-purpose language, combining the approachability and nteractive development of a scripting language with an efficient and robust infrastructure for multithreaded programming.”

Why Learn Clojure?

A few reasons:

  1. Clojure is a Lisp; Lisp variants obviously have both tremendous longevity and relevant to software development, going back to 1958.
  2. Clojure is a (mostly) functional programming language, and is therefore especially well suited to concurrency. The increasing number of CPU cores in modern computers will make this important to far more projects in the future.
  3. Clojure combines the broad platform support of Java, with a much more concise and programmable programming language.

Learn Clojure the Easy Way?

No, there generally isn’t an easy way to learn anything worth learning. To the extent there is an easy way to learn Clojure, that way is simply to use the language to create something you love. You won’t even notice the effort of learning.

Where to Begin?

Use the links above to browse the videos, tutorials, etc.

If you find this site useful, please link it to from your blog, site, facebook, twitter, whatever, so that the next person who could benefit, will find it.


This site attempts to stick to “just the facts”, and to reference as many resources as possible, including those that compete with each other for your attention. Occasionally, though, it will wander in to the territory of pure commentary and picking semi-arbitrary favorites, which I’ll attempt to restrain to this sidebar. (-Kyle)