Skip to content

Improve/add next steps for beginners #356

@dmitriid

Description

@dmitriid

What is this about?

This came from a discussion over at Hacker News. Tl;dr is this: after looking at code examples and working through the guide on REPL, there's no next step:

  • how do I set up a project/project structure?
  • how do I build a project (do I somehow compile a jar? and executable? does clojure produce executables?)
  • how do I run something I built?
  • how do I deploy things?
  • how do I set up, write, and run tests?
  • how do I configure an application/build (dev vs. test. vs prod. etc.)?

There are probably a few more that I can't recall right now, and I haven't tried to start with Clojure in a while. But the above would be my immediate and next-to-immediate questions. And I clearly remember how frustrated I was that I had to google everything because the docs couldn't provide me with answers.

What does documentation have now?

Getting Started somewhat off-handedly mentions that there are CLI tools and some build tools. These mentions are not really prominent and it's not immediately apparent that you need to go there for some further info.

Learn Clojure jumps into code examples that shows evaluation results for various code snippets. And it doesn't mention REPL until later in the page, and doesn't show how to run a REPL to try these code examples until chapter two of a separate REPL guide.

Deps and CLI Guide is mostly about dealing with libraries and dependencies. It has a very short mention on how to write code in a (single) file and a short mention on how to include test directories.

From there on a beginner will be forced to only rely on Google and the kindness of strangers :)

What the documentation most likely needs

It needs at least one more chapter probably called "What to do next" :)

It should have short sections that go something like this:

  • How to setup and build your project? Short intro to Leiningen and Boot, with short code snippets. Links to the exact locations in their respective docs that talk about setting up and running (tutorial for Leiningen, Getting started for Boot)

  • How to test your code? Short intro on how to setup tests, add test directories, sample test code. A link to a larger guide (or a blog post, or an article) on how tot test Clojure code. A separate mention of clojure.spec, and a link to a guide on spec.

Additional links or small intro sections on other topics: deployment, running, configuration etc.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions