The Clojurescript tooling is also relatively simple. Similar to Clojure, it’s surprising how simple it is, you don’t even need a bunch of tool for any of this, just a REPL. You can call the Clojurescript compiler from the Clojure REPL, it’s all really quite simple.
Things get hairy because JavaScript never had a module system, and that’s where everything gets weird, and then the various JS runtimes, with accessing different runtime APIs, the browser object, and then the need for ridiculous level of compression and bundling to optimize delivery on page load, all inherent to JS really and not specific to Clojurescript.
I think the reason it’s not as easy are also just #2 and #4. There’s a lack of good up to date guides/tutorials for various situations you might encounter, and also they’re not easy to discover.
Actually didn’t mean it as that haha. I wrote the option because I think it’s a problem myself. Even if more experienced Clojure users all use their own different style, I think there would be benefits if there was a very clear “common track” for beginners and intermediate users, and if somehow at least the messaging could be more aligned for them. I’m sure that would help, I know beginners secretly get obsessed wanting to “learn the best way”. But sometimes what they need is to stick to the easiest way, until they get better.
Haha, that’s my biggest gripe with it as well. They copied the java command line style, which is the worse style I had ever seen before and always hated, but oh well. I would have preferred they’d stick to more standard Unix command line conventions personally. At least it’s just mostly cosmetic, I don’t like the syntax, but I do like the abstractions that tools.deps has setup.
Thanks for the feedback, #2 and #3 are things that the community can fix, if after you figure it out, you write a new more up to date blog about it for example, eventually, that should replace the old guides and rank higher in Google.
Make sure you’re explicit about what versions your blog is about though, so people similarly don’t think it’s “up to date” in the future when it might no longer be.
Good Luck with the rest of your project.