Workflow Tips¶
These are the workflows I've leaned on for my CEL projects — editing, syncing to Scribe, keeping data safe, reproducible pipelines. None of it is lab policy, just what's worked for me; take what's useful and leave the rest.
Start with the workflow overview
If you read one page, read The recommended workflow — the end-to-end picture (edit locally → sync to Scribe → run in batch) that the other pages fill in. It's the fastest way to see how I work and decide what's worth adopting.
The workflow, end to end¶
- The recommended workflow — the overview that ties everything together: where you write code, how it gets to Scribe, and how it runs.
- Editing Stata in VSCode — write
.dofiles locally in a real editor (VSCode) rather than in the server's Stata GUI editor — you get git history and your editing doesn't hang on the connection. - Version control using git — what version control is and why (one file, full history — no more
_FINAL_v2), the handful of commands, and the optional GitHub bits. Usable locally on its own. - Local ↔ server sync — the two ways to move code between laptop and Scribe (FileZilla vs git), with the benefits and costs of each.
- Working on Scribe — getting an account, connecting, running Stata (batch vs GUI), and keeping jobs alive with
screen. - Stata GUI on Windows — illustrated Xming + PuTTY walkthrough for running the Stata GUI from a Windows machine.
Keeping data safe¶
- Data safety — keeping confidential student data on Scribe and out of GitHub, and how the repos enforce it.
- gitignore setup for data security — the concrete
.gitignore, how to verify nothing leaked, and what to do if data was committed by accident. - Versioning data with DVC — an optional power tool to version the data too, not just code — keeping every byte on Scribe. The two-push rhythm, the on-Scribe remote rule, and the guard scripts.
Reference¶
- Reproducible pipelines — the
do/main.do+settings.dopattern, pinning inputs, and automated checks. - Claude Code intro — what the
.claude/folders andCLAUDE.mdfiles are, and whether you need them (you don't, to run the analysis).
Status: actively filled in
Several pages started as outlines distilled from my va_consolidated handoff. A few
sections still marked TODO flag something I haven't finished yet (e.g. a stub README to
expand, or a lab-policy detail to confirm). The workflow advice itself reflects how I
actually work.
The one rule worth memorizing¶
Code lives on GitHub. Confidential data lives only on Scribe. The two never mix.
Everything else in these guides supports that separation.