Repl-Driven Development in Clojure
- Tired of long compile times?
- Sick of losing your state when you reload your server?
- Wish you could get into deep flow while you're programming?
Instead, imagine if you:
- Recompiled only what changed—even as small as a single function
- Never restarted your server so the state is never lost
- Got rich, frequent feedback from a live, running system
All of that is possible with Clojure, when you use Repl-Driven Development.
Clojure was built, first and foremost, to be dynamic. It was designed for a very interactive coding style where you are continuously evaluating code at the repl. This syle of programming is called Repl-Driven Development, and it's one of the superpowers of Clojure.
This course teaches the mindset, practices, and tools of Repl-Driven Development.
Repl-Driven Development is not a specific process. It is an idea—that programming should be a process of interacting with and modifying a live system. You don't bundle up your whole application and send it to the computer for processing. Instead, you are in a continuous conversation about your problem domain. The end result, when you do it right, is a deep state of flow and engagement with your software.
Repl-Driven Development is a set of tools and techniques that support this idea. The tools come from your editors and Clojure itself. And the techniques are ways of evaluating code and working with the dynamic runtime. We go over all of that in this course.
Who is this course for?
This course is for anyone who has wanted to write better code and have more fun. Throughout the course, we dive deep into important topics like:
- the evaluation semantics of Clojure—which is designed specifically for Repl-Driven Development (RDD)
- the three keybindings you need for RDD—which are available in the top Clojure IDEs
- guidelines for what to evaluate, when
- how to maintain flow while you're programming
- dealing with common problems you may encounter
- how to run a Clojure repl even in Java projects
- navigating namespaces
- setting up your project for RDD
- using the repl to explore large amounts of data
Repl-Driven Development in Clojure
Want this course?
Team License
Download License
Online License
Membership
Love it or leave it guarantee
If you don't learn as much from this course as you thought, just ask for a refund within 30 days and I'll give you your money back.