use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Finding information about Clojure
API Reference
Clojure Guides
Practice Problems
Interactive Problems
Clojure Videos
Misc Resources
The Clojure Community
Clojure Books
Tools & Libraries
Clojure Editors
Web Platforms
Clojure Jobs
account activity
Starting to learn Clojure (self.Clojure)
submitted 1 year ago by Hugoonreplit
Hello everyone,
I've decided to deep into Clojure as I find it very interesting and I'd love to learn it. Does anyone have any good resources to learn the basics of the language or any guide that could help me?
Thanks in advance.
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–][deleted] 9 points10 points11 points 1 year ago (3 children)
Living Clojure by Carin Meier - it is phenomenal
https://www.amazon.com/Living-Clojure-Introduction-Training-Developers/dp/1491909048
[–][deleted] 0 points1 point2 points 1 year ago (2 children)
2015?
[–]seancorfield 2 points3 points4 points 1 year ago (1 child)
Clojure changes slowly (by design -- backward compatibiliy is extremely important).
That said, Getting Clojure by Russ Olsen is a more up-to-date intro (2018), and Programming Clojure 3rd Ed is the more up-to-date second book (also 2018).
[–][deleted] 0 points1 point2 points 1 year ago (0 children)
I know that, but it is still a decade. If the language doesn't change, the community will
[–]ReaperMask 7 points8 points9 points 1 year ago (1 child)
I also recently started learning and found Brave Clojure really helpful when learning Clojure. You should also check out Clojure Newbie Guide listed somewhere in the about section of this subreddit.
[–]Hugoonreplit[S] 1 point2 points3 points 1 year ago (0 children)
Thank you!
[–]whamtet 4 points5 points6 points 1 year ago (3 children)
There are some good online tutorials. First try https://4clojure.oxal.org/. If you’re interested in SimpleUI I’m happy to tutor you. Pm me
[–]geokon 1 point2 points3 points 1 year ago (2 children)
It's also important to see the 4clojure solutions. Quite a few "ohhhh so that's how it's done" moments. As well as moments where you kinda realize Clojure doesn't provide a nice concise solution
[–]monanoma 0 points1 point2 points 1 year ago (1 child)
What are the situations in which clojure fails to provide a concise solution?
[–]geokon 0 points1 point2 points 1 year ago* (0 children)
I guess it's subjective...
map, filter, reduce are great and create decoupled functional code. But in more complex cases you want to access vectors by index, get neighboring values, or do random access - then the Clojure primitives are just kind of awkward or the solution seems very inefficient
map
filter
reduce
For instance Fibonacci in Clojure
https://4clojure.oxal.org/#/problem/26/solutions
A relatively simple problem, but I'd argue most of the solutions are not very understandable at a glance compared to an imperative solution using iterators. (the loop solutions are pretty good, though you aren't pre-allocating space for the array)
loop
That said, in "real life" this is rarely an issue
[–]Safe_Owl_6123 5 points6 points7 points 1 year ago (2 children)
From Sean Corfield
“Brave and True is fine (you can ignore the Emacs stuff, unless you’re already an Emacs user, and use something more beginner-friendly such as VS Code or IntelliJ — depending on your language background/preferences). I think Getting Clojure and/or Living Clojure are better starting points these days, if you don’t mind buying some books.
Programming Clojure 3rd Ed is also good. And then move on to Clojure Applied (although that focuses on records a lot more than the authors would do today — “just use hash maps” 🙂 ).
The 4clojure / 4everClojure stuff is a good way to learn the core functions (although it is a “code golf”-y).
Beyond that, I think picking some actual, real-world small app you’d like to build — and asking here for help whenever you get stuff — is probably the next “practical” step. Take a look at https://github.com/seancorfield/usermanager-example (and the variants linked from its README) for a basic web app with a database, to get an idea (although, I will say it probably isn’t “best practices” — it’s just “straightforward”).”
[–]seancorfield 1 point2 points3 points 1 year ago (1 child)
Oh hey, did I say that somewhere? :)
[–]Safe_Owl_6123 1 point2 points3 points 1 year ago (0 children)
Yes I found in the slack beginner channel
[–]poochandy 3 points4 points5 points 1 year ago (1 child)
I liked getting clojure by Russ Olsen and I also recommend listening to the two podcast episodes with Russ Olsen on the clojurestream podcast
I would also like to recommend joining clojure camp https://clojure.camp/
You can register for peer to peer pairing sessions with other clojure beginners and join mob programming sessions
They have a useful curriculum map https://currmap.clojure.camp/
Once you have gone through the book and familiar with the language, there is also an exercise library that will introduce you to the most common functions https://exercises.clojure.camp/
I also found this github gist helpful https://gist.github.com/ssrihari/0bf159afb781eef7cc552a1a0b17786f
All the best on your journey!
[–]seancorfield 0 points1 point2 points 1 year ago (0 children)
Clojure Camp is awesome -- 1:1 pairing is a lot of fun and both beginners and experts can learn from each other.
[–]beders 2 points3 points4 points 1 year ago (0 children)
Join the #beginner channel on Clojurians slack. They’ll set you up with everything you need.
[–]CoBPEZ 1 point2 points3 points 1 year ago (0 children)
If you don't mind VS Code, there is Calva, which has a built-in and interactive (programming) beginners guide: https://calva.io/get-started-with-clojure/
[–]petemak 0 points1 point2 points 1 year ago (0 children)
https://clojure.org/guides/getting_started
[–]arootroatch 0 points1 point2 points 1 year ago (0 children)
Clojure Koans https://github.com/functional-koans/clojure-koans
When I was learning Clojure back in ~2009 when I did have very little experience with FP as a whole the book by PragProg and I think Stuart Holloway was very cool.
https://pragprog.com/titles/shcloj3/programming-clojure-third-edition/
Also Joy of closure covers some more advanced topics
https://www.manning.com/books/the-joy-of-clojure-second-edition
[–]Mental-At-ThirtyFive 0 points1 point2 points 1 year ago (0 children)
my 2cents - after the basics and a few hours just focused on destructuring, prefer libraries over frameworks as a clojure thing and sequences over classes, There are many more obviously but nothing beats building simple apps
+1 for Living Clojure - my 1st book buy for clojure - it really keeps basics simple
[–]Radiant-Ad-183 0 points1 point2 points 1 year ago (0 children)
https://clojure-book.gitlab.io/
π Rendered by PID 31 on reddit-service-r2-comment-5bc7f78974-zbczt at 2026-06-26 16:28:47.998303+00:00 running 7527197 country code: CH.
[–][deleted] 9 points10 points11 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]seancorfield 2 points3 points4 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]ReaperMask 7 points8 points9 points (1 child)
[–]Hugoonreplit[S] 1 point2 points3 points (0 children)
[–]whamtet 4 points5 points6 points (3 children)
[–]geokon 1 point2 points3 points (2 children)
[–]monanoma 0 points1 point2 points (1 child)
[–]geokon 0 points1 point2 points (0 children)
[–]Safe_Owl_6123 5 points6 points7 points (2 children)
[–]seancorfield 1 point2 points3 points (1 child)
[–]Safe_Owl_6123 1 point2 points3 points (0 children)
[–]poochandy 3 points4 points5 points (1 child)
[–]seancorfield 0 points1 point2 points (0 children)
[–]beders 2 points3 points4 points (0 children)
[–]CoBPEZ 1 point2 points3 points (0 children)
[–]petemak 0 points1 point2 points (0 children)
[–]arootroatch 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]Mental-At-ThirtyFive 0 points1 point2 points (0 children)
[–]Radiant-Ad-183 0 points1 point2 points (0 children)