The Missing Clojure Intro (originally published at dev.to) is a Clojure intro that takes a pretty unorthodox approach. I find one of the biggest problems with Clojure introductory articles is they shy away from discussing anything Java and often link out to installation guides which might not be trivial.
So I tried really hard to create an experience where you can really finish the entire thing in a few minutes without interruptions on any [Windows] machine. I discuss many different things that most guides miss (in fact even if you’ve already been doing Clojure for a few weeks or even months I bet you’ll find the experience interesting).
If you’ve been struggling to figure out what leiningen really does, you will especially love this!
So if you’re on Windows please do me a favor, check it out and tell me know what you think! Thank you!
I liked it. The only think I see is that it is quite complex for the beginner in programming reader which I think is the biggest downside of clojure at the moment (It is directed to people with exprience with Java and programming in general)
One thing I’ve been recommending for folks wanting to do Clojure development on Windows 10 is to install the Windows Subsystem for Linux and get Ubuntu (or another flavor of Linux) from the Microsoft Store and do your development that way – since all the command-line stuff works well for Linux (including clj/deps.edn etc).
The only downside to that is you will probably want to run your editor on the Windows side and there are some gotchas with some REPL interactions there (Windows paths).
Or you could run Emacs in a Linux terminal window as your editor and ignore Windows Or Liquid (although there’s currently a bug with WSL support that means you need to do some special tweaking).
But we need to address windows pc based developers in corporate networks where they have no admin permissions and have to work behind proxy/artifactory. emacs does not work behind proxy. vscode/calva is the only working option.
There are Windows packages that let you proxify an application transparently. Is there a specific problem you had? Besides dowloading Emacs packages it shouldn’t be a big deal?
When I need Clojure at work (special projects), I use Nightcode on Windows just fine. You might even be able to use the .jar version where you don’t have install permissions, but a JRE is present.
I agree, I think that Nightcode is by far the easiest way to get started with Clojure. Having a one-click installer, not having to manually install Leiningen and Java, is huge for reducing the difficulty level facing the beginner. This is especially true in the Windows world, where people are used to just clicking on an installer, waiting a bit, and then being good-to-go.
But I think most developers will eventually want a more full-featured environment. I started with Nightcode, but now I’m primarily using VSCode with Calva. I’ve dabbled a bit with IntelliJ and Cursive, and very tentatively started looking at Emacs and Cider. My suggestion for someone looking for a fancier development environment would be:
Already comfortable with Emacs? Use Emacs with Cider.
Already immersed in the Java world and have Intellij installed? Use Intellij with Cursive.