Clojure can be an excellent language to learn programming. The following courses should set you on a good path for getting up to speed in Clojure. Be sure to click those checkmarks to track your progress.
Start with the best introduction to Clojure out there. It gently guides you through the language with fun exercises.
Clojure has immutable collections, which are used to represent all kinds of things. This course will guide you through how they are used.
At this point you may want to start a small project of your own. In this course, you develop a simple TODO list web application. All code is provided.
The three functional tools are map, filter, and reduce. These functions are used extensively in Clojure programs.
It’s good to understand how variables work in Clojure. Scope refers to what code can access which variables.
Testing is an important concept when developing production applications. This course shows how to use Clojure’s built-in testing library, clojure.test.
Clojure organizes code into namespaces, which are simply files with certain names. This course goes over how to declare a namespace and how to navigate namespaces at the REPL.
Leiningen is the most popular project tool in Clojure. It is what fetches dependencies and runs your program. This course goes through all of the features of Leiningen that you need to know for daily use.
This course has some simple projects that we build in one hour or less.
Clojure’s sequences are lazy, meaning the elements in the sequences are not calculate unless they are needed. This has some consequences you should be aware of.
Recursion is the main way Clojure does looping.
As a Clojure programmer, you will probably need to coordinate several threads accessing the same resources, such as mutable state. Clojure’s concurrency primitives will let you do that. This course is a compendium. You should dip into whichever one you believe you need at the moment.
This course contains more details of Clojure’s syntax, including all of the syntax for defining functions and the for sequence comprehension.
If you want to know about the Java Virtual Machine, which is the platform Clojure runs on, this course is for you.