7/15/2026 DBMI RSE-CoP Meeting
Do you use one system for all projects, or select the best system for each project?
Which of these is hardest to achieve in your work?
What type of patterns do you reach for in your work?
mypackage/ # the project folder
├── README.md
├── CITATION.cff
├── LICENSE.txt
├── pyproject.toml # the one config file (packaging + tools)
└── src/
└── mypackage/ # the package (importable)
├── __init.py__ # makes it a package; defines the public API
└── module.py # single .py file with definitions (functions, classes, ...)key = value settings grouped under [section] headersHave you made a python package? If so, did you use a .toml file?
setuptools) is the tool that does the buildingpip or build) is the tool you run, which calls the backendWhich build backend have you used or do you recommend?
Branching & Merging
1. Create a branch → 2. Add commits → 3. Push it → 4. Open a pull request → 5. Discuss & merge
maingh) for pull requestsWhich workflow (feature branching or forking) do you primarily use and why? Do you use Github’s CLI?
Common practices in open-source software development:
Do you regularly participate in code review? What is practical in your work?
test_*.py files and test_* functionsgit commit.pre-commit-config.yamlWhich of these do you use? Do you use pre-commit or run manually?
.yml file in .github/workflows/ to trigger GitHub ActionsDo your repos have CI workflows? What tasks are most important to automate?
| Level | Audience | Example |
|---|---|---|
| Instructions | Anyone arriving at the repo | README.rst, INSTALL.md |
| API documentation | People calling your code | docstrings → Sphinx site |
| Self-documenting code | People reading your code | PEP 8 names |
| Comments | People editing your code | # why, not what |
| User guides | Domain users | Github Pages tutorials |
| Versioning | All of the above | MAJOR.MINOR.PATCH |
Do you do all of the above? Which levels do you believe are the most time consuming or difficult?
Which license do you typically use and why?
git tag -a v0.0.1 -m "version 0.0.1"git push origin --tags
Lets you reuse your figures without violating the journal copyright.
Have you heard of repro-packs or do you already implement them?
Would you consider publishing in JOSS?

URSSI RSE Best Practices — DBMI RSE-CoP