I tend to engage in procrastination if my console is busy for more than 10 seconds. Using job() keeps me in the flow. Here are some commands I regularly job, either via code or via the addins.

Heavy inferential tasks

  • Everything involving MCMC in Bayesian Inference: brms, mcp, blavaan.
  • Cross-validation and hyperparameter tuning in machine learning, e.g., in tidymodels or mlr3.

Build output

Using empty jobs (job::empty() or “empty” addin) makes a lot of sense for these:

Text output

Wrap these in job::job({print(<command>)}) to print the text inside the job. Now you can, in good conscience, clean your console because you know that the important output is saved in a job.