Clojure — A Libre and Gratis Clojure Book

Author: Karthikeyan A.K
Publisher: Self-published under the GFDL license
Year: 2025 (Version 1, 2025-09-29)
Pages: 241
Website: clojure-book.gitlab.io
Summary
A candid, beginner-friendly journey into Clojure written by a Ruby-on-Rails developer searching for a more idiot-proof alternative to the complexity he witnessed in large Rails codebases. The book covers everything from installing Clojure and setting up an IDE (VSCodium + Calva) all the way through data structures, functions, macros, specs, atoms, threading macros, Java interop, testing, project tooling with Leiningen, Clojars deployment, and even Android development with Clojure.
What sets this book apart is its conversational, almost diary-like tone — the author doesn’t pretend to have all the answers. He’s exploring Clojure alongside the reader, documenting his search for whether Clojure (and by extension, Lisp) is truly good enough for modern web, data science, and full-stack development via ClojureScript. The book is richly illustrated with screenshots, code snippets, and video references for every chapter.
Key Takeaways
- Clojure is a Lisp dialect on the JVM — immutable data structures, first-class functions, and a powerful REPL-driven workflow
- The book is extremely practical — every concept is accompanied by runnable code, IDE setup guides, and video walkthroughs
- Covers the full stack — from
(println "Hello World")to deploying jars to Clojars and using ClojureScript - Concurrency primitives — atoms, refs, agents, and the STM are explained with real-world motivation
- Java interop is treated as a first-class feature — not an afterthought
- Testing — clojure.test and test-driven workflows are covered with examples
- The author’s voice is genuine and relatable — this is not a dry reference, it’s a personal exploration
Review
This is an unusual Clojure book — and that’s a compliment. Most Clojure books either assume you’re already a proficient programmer or are academic in tone. Karthikeyan’s book sits in a sweet spot: it’s written by someone who doesn’t yet consider himself a Clojure expert, documenting his learning process. The result is a book that asks the questions beginners actually have.
The “Why this book?” chapter perfectly captures the author’s motivation — disillusionment with unmaintainable Rails monoliths, curiosity about ClojureScript, and a genuine desire to understand why “very smart programmers are using Clojure.” This honest framing makes the entire book feel like a conversation with a thoughtful colleague rather than a lecture from an authority figure.
That said, the book could benefit from tighter editing — some sections meander, and the prose occasionally repeats itself. But for a libre, gratis book that’s still “in the making,” it’s remarkably comprehensive (241 pages and still growing).
Recommended for: Ruby/Python developers curious about functional programming, anyone wanting a gentle on-ramp to Clojure, and practitioners who prefer learning-by-doing over theory-first approaches.
Notes
- Available as HTML, PDF, and EPUB from clojure-book.gitlab.io
- Repository and issue tracker are on GitLab — the book accepts contributions
- Each chapter has a companion video linked via yu7.in
- Licensed under GFDL — free to share and redistribute