Babashka: fast native Clojure scripting
Michiel Borkent, Rahul De
Babashka is a fast, native Clojure scripting runtime. It starts instantly and comes with batteries included, so you can write the scripts you'd normally write in bash. Keep writing the Clojure you already know.
This hands-on workshop covers the whole lifecycle of a babashka tool, from a quick script to a published, installable CLI app. We assume you know the basics of Clojure and won't explain the language itself.
Topics include:
- Setting up your dev environment
- Managing projects with babashka tasks (bb.edn)
- A tour of built-in libraries (fs, process, http-client, and more)
- Writing and running tests
- Building a CLI with subcommands and automatic help
- Programming a terminal UI (TUI)
- Producing a small web app
- Publishing via GitHub or as an installable tool with bbin
Every concept comes with an exercise, building toward one culminating CLI app. There will be lots of interaction and fun!
Michiel Borkent
Michiel Borkent, known online as @borkdude, is a passionate open source Clojure developer. He’s helping developers to write cleaner, faster, and more enjoyable code with popular tools like clj-kondo, babashka, SCI, nbb, and squint. When he’s not deep in parentheses, you’ll find him at the piano or enjoying a walk outdoors.
Rahul De
I am primarily an SRE dedicated to making simpler tools to bridge the gap between Dev and Ops. As a die hard Clojure fan, I am fascinated to use its power and simplicity to make infra simple too; a place where it is rarely seen but can be of immense value. Mostly based in London, UK, I love to organise and attend meetups and conferences around increasing diversity in tech, functional programming and food.