// the find
jtleek/rpackages
R package development - the Leek group way!
A style guide for R package development written by Jeff Leek for his biostatistics lab at Johns Hopkins. It covers the full lifecycle from naming and versioning through documentation, unit testing, and Bioconductor submission. Not a package itself — just a README.
- Opinionated and specific where most guides are vague: exact versioning scheme for Bioconductor's 0.99.z pre-submission convention, file naming rules for S4 classes and methods, concrete indent/column limits
- The unit testing section includes a complete worked example with context grouping and multiple failure modes — you see what good tests look like, not just that you should write them
- Covers the maintenance commitment explicitly, which almost no package guides touch: why minimal dependencies matter for a 5-year horizon, when to say no to new features
- The documentation priority diagram gets the hierarchy right: correct behavior first, then documentation, then performance — a useful corrective to people who optimize before their code works
- The ecosystem has moved on substantially since 2013 and this guide hasn't. testthat now uses tests/testthat/, not inst/tests/. usethis replaces half the manual git setup. pkgdown exists for documentation sites. GitHub Actions replaced manual R CMD check. None of this is here.
- It's a Leek group internal document with a public URL — the 'ask Jeff', 'sucker your fellow students', and footnote about the 'succs' package make that clear. The advice is calibrated for a specific lab's workflow, not for someone working alone or in industry.
- No mention of NAMESPACE management pitfalls, which is where most new package authors actually get stuck. roxygen2 is mentioned but the @importFrom vs Depends vs Suggests distinction — the thing that causes 90% of package check failures — is skipped entirely.
- The GitHub setup section still recommends `git push -u origin master` and SSH key setup as a manual step, which is just noise for anyone using modern tooling.