Learning Clojure - YAY

Roadmap (WIP)

What I've done so far that seems effective (I'm just starting out, will revisit this as I go):

  1. Setup your dev env, get used to REPL-driven-development inside of the editor's buffer.
  2. Start reading Clojure For The Brave And True - type out and try all the examples, it seems like a good general introduction
  3. Start watching talks from Clojure confs to get yourself immersed/indoctrinated in Clojure, especially the Rich Hickey talks.
  4. Koans/4clojure is probably a good way to get to know the core library a bit better
  5. Finally start working on some small project like a simple game (play-clj) or a CRUD service (reitit seems pretty nice)
  6. ...
  7. Profit!

Development Environment

NVIM (use nvim, it has better Clojure plugins)

The plugins I use:

  • neoclide/coc.nvim - LSP code completion, integration with linter, etc.
  • Olical/conjure - For REPL driven development, let's you eval forms from the buffer
  • luochen1990/rainbow - Colors matching ()
  • calebsmith/vim-lambdify - Replaces defn and fn with λ
  • bhurlow/vim-parinfer - Simpler LISP editing

Links

Books

Didn't read yet! Top Reddit recommendations

Blog Posts

Podcasts

Lectures

Testing??

TBD - need to find some resources on testing culture / tools