
First, the five that didn't land
The scoreboardThe open-source PRs I sent to other people's projects this year, and what each one taught me.
6PRs opened
1merged
19 daysfrom open to merged
- Feb 5karpathy/nanochatTypo fixes and tokenizer testsWhat I learned: Search open PRs first. Someone had already fixed the typos.Closed
- Mar 11anthropics/claude-codeA brand new pluginWhat I learned: Pitch a big feature in an issue before writing the code.Closed
- Mar 21Docstrings and a SemanticF1 modeWhat I learned: One PR at a time. Three in two days is a lot to review.
- Sep 7open-jarvis/OpenJarvisHardware docs for jarvis initWhat worked: Answer a question people are already asking.Merged
What actually works: treat it like research
How I contribute nowFive steps, the same loop as research. Under each one is how it went on OpenJarvis.
- ImmerseRead the code, the issues and the discussions before touching anything.On OpenJarvis: I read how jarvis init detects your hardware and picks a model.
- Understand the whyFigure out why things are the way they are. A lot of odd-looking code is a decision.On OpenJarvis: The recommendation logic was deliberate. It just wasn't written down anywhere.
- Spot the gapWhere the reasoning doesn't add up, or nobody wrote it down, that's a real limitation.On OpenJarvis: Users kept asking what hardware they need, in a discussion and then an issue.
- Formalize itWrite it down with evidence. If there's related work or literature, it helps your case.On OpenJarvis: I ran the code across RAM and VRAM sweeps and matched the project's own tests.
- Solve it their wayFit the fix to where the project is going. If the goal is A, build toward A.On OpenJarvis: One docs-only PR that closed the issue. No surprise refactors.
The docs I ended up writing
jarvis init, it just wasn't written down. So I ran the recommendation code across every RAM size up to 120 GB and every VRAM size up to 90 GB, and wrote down what it picks:
What jarvis init picks for your machineThe bands I documented, generated by running the recommendation code rather than guessing.
2B
~1.1 GB
4B
~2.2 GB
9B
~5.0 GB
27B
~14.9 GB
GPU VRAM (one GPU)
1–8 GB9–17 GB18–35 GB36 GB+
System RAM (no GPU)
5–14 GB15–24 GB25–44 GB45 GB+
The mistake, and the best part
From open to merged19 days of waiting, then 52 minutes on Sep 26 from review to merge (Eastern time).
- Sep 7Opened
- 19 daysWaiting
- 4:50 pmTwo facts to fix
- 5:06 pmFixed and approved
- 5:42 pmMerged
If you're about to open your first PR
- Pick a project you actually care about.
- Start from an open issue or discussion, not from an idea in your head.
- Search open and closed PRs before you write a line.
- Send one PR at a time.
- Show your receipts: what you ran and what it printed.
- Expect to be wrong about something, and make it easy to fix.