Sam Ritchie

is creating Open Source Courses and Software.
Select a membership level
per month

Buy me a coffee to keep me caffeinated; the perfect contribution to fuel my open source work.

per month

Buy me dinner as a larger thanks for the time and value you've received from my writing,or my various open source projects and contributions.

per month

At this level, please write me and we can talk about what projects of mine you use, or what you've found valuable, and I'll be happy to let you steer my work.



About Sam Ritchie


I'm Sam Ritchie, a software engineer living in Boulder, Colorado.

I'm active in the Scala and Clojure open source communities, and run a blog full of math and programming lessons and courses.

If you're using Cascalog, Algebird, Bijection or any of the other libraries I've created or maintain, I'm sure these libraries have given you joy in your day-to-day work. If you've enjoyed my blog, hopefully it has taught you something, and perhaps changed the way you think about and write Scala or Clojure.

Please chip in so I can keep doing the work I love and pushing out great content and open source contributions!

At the very least, make sure to sign up for my (tiny) newsletter at

Current Projects

I'm currently working on ScalaRL, a functional reinforcement learning library in Scala, and a full-on "Functional Reinforcement Learning" course to go alongside it.

You can find both of these at

Open Source

I've also written, and maintain, a number of open source libraries in Scala, Clojure and Clojurescript. I co-created these Scala libraries:

Summingbird, for streaming MapReduce. The first open source Lambda architecture implementation.
Algebird, an Abstract Algebra library for Scala
Bijection, a library that allows you to safely and functionally convert between types.
Chill, the default Scala serialization library for ScaldingSummingbirdSpark and Cascalog.
Storehaus, a library of asynchronous key-value stores and functional combinators in Scala.
Tormenta, a Scala wrapper over various datatypes in Storm.

In Clojure and Clojurescript:
Om-Bootstrap, a library of Bootstrap 3 components built with Om.

I've also been the primary maintainer of Cascalog for many years; Cascalog lets you write Datalog programs that compile down to Hadoop jobs.


I also write a blog at that covers math and programming.

Recent posts by Sam Ritchie