Skip to content

Instantly share code, notes, and snippets.

@kirked
Last active July 9, 2022 01:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save kirked/f5c1e40d1edca16eb744778497637d21 to your computer and use it in GitHub Desktop.
Save kirked/f5c1e40d1edca16eb744778497637d21 to your computer and use it in GitHub Desktop.
A coworker wrote this in a private repo, and I want to keep it as a reference…

Rich Hickey

Rich is the BDFL of Clojure. He's a great speaker with lots of ideas to offer concerning problem solving and separating time, state, value, and identity. His thoughts on these things influenced the design of Clojure and Datomic (an immutable database that supports time-travel).

All of his talks are good but here are a few to start with:

Watching Rich Hickey talks is valuable not because he goes over gobs of code (he doesn't) but because he talks about the principles and ideas that happened to shape the stuff he creates. Those principles and ideas have shaped the minds of developers who embrace Clojure such that they see many things differently than others.

Overviews

These are some short overviews / categorizations of the language features.

Hands On

These are some exercises you can use to start to train your fingers / brain.

WTF Is That

There are a few aspects of syntax that might confuse you at first.

References

Sometimes you just want details on a particular thing without having to read through buckets of information first. Here are some to-the-point references.

Long Form

This is a good beginner-friendly introduction to Clojure syntax / functions.

This gives you a taste of things without in-depth explanations.

This is a series of blog posts Kyle Kingsbury wrote about learning Clojure.

This is a guided tour with good explanations along the way.

Rich Hickey is good with concepts but this is the book that helped me go from thinking Clojure was interesting to actually understanding how/when to use its various features.

This is for comprehensive understanding.

Blogs

There are tons of smart people in the Clojure community - many of them also write their thoughts down!

Deeper Waters

There are parts of Clojure that you will not be exposed to out of necessity. Learning them anyway will enable you to create more sophisticated / abstract / efficient solutions.

Original by @RutledgePaulV

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment