Most Clojure devs I know already have lots of experience and can debug faster in their head, with the occasional help of printing a value.
But check out this cool Clojure debugger, it even has time travel https://www.flow-storm.org/
We also have a debugger in Emacs/CIDER.
Your other complaints read like you haven't dug really far, or they are outdated.
Because these god forsaken strings are how you do everything in Clojure CLI. When you start a new project, you write them by hand. You flip and fiddle with plain text flags and weird nested hash tables to change tool behavior, and you have to remember so many little stupid things. It makes actually doing stuff feel horrible. There should have been a high bar for supplanting Leiningen and this should not have cleared it.
But wasn't the example in question for a tutorial repl setup for you getting up and running with no config? That seems like a nice user experience for someone who wants to get up and running by just copy pasting a one liner...
What projects are you working on where you are using nested hash tables passed in as strings to the CLI that couldn't be written as data in a deps.edn?
What tools do you miss from lein (genuine question) moving to deps.edn was mostly painless for the teams I've worked wit
You can just copy paste this and replace RELEASE with the version number. If you want to dig deeper, the CLI and deps options used here are well documented under https://clojure.org/reference/deps_and_cli
We also have a debugger in Emacs/CIDER.
Your other complaints read like you haven't dug really far, or they are outdated.