Mnagingvi

GitHub · @Mnagingvi

Mnagingvi

One small pull request at a time. Every issue and every fix is a lasting improvement to the project it lands in.

Today's small change: a typo in the docs

Poke the swan

The approach

Small changes stay in a project for good

A merged pull request does not expire. A corrected sentence in the docs, a clearer error message or a test for a forgotten edge case keeps helping every person who uses the project after it.

So I work on one thing at a time. A small change is quick to review, easy to understand and simple to undo if something is off. Maintainers can say yes to it without a long meeting or a weekend of reading.

The loop

Four steps, then start again

  1. Notice

    Use the project and write down the one thing that tripped me up.

  2. Open an issue

    Describe it plainly, with what I expected and what happened, so others can confirm it.

  3. Send a small PR

    Fix only that thing, link the issue and explain the change in a few sentences.

  4. Follow it through

    Answer review comments, adjust, and wait for the merge before picking up the next one.

Only one change is open at a time.

Why small

How big is your pull request?

Drag the slider and see how a reviewer is likely to feel.

4 lines
Read over coffee About a minute. The reviewer says yes before the tea cools.

A rule of thumb, not data. I aim for the left side of the slider.

What counts as small

Changes a reviewer can read in a minute

  • A typo or a dead linkDocs and READMEs are the first thing a new user reads.
  • A clearer first lineSay what the project does before anything else.
  • A missing exampleOne short snippet that shows how a function is called.
  • A clearer error messageSay what went wrong and what to try next.
  • A test for an edge caseEmpty input, a very large value or an unusual locale.
  • A well-written issueSteps to reproduce a bug can be a contribution on their own.

What it looks like

A sample pull request

An illustration of the size and shape I aim for. The project is made up, and nothing here is real. Press the green button to merge it.

Example

Make the README's first line say what the project does

Open

The README opens with only the project name, so new visitors have to scroll to find out what tinyparse is for. This adds a short summary to the title line.

Closes the linked issue. Docs only, no code changes.

README.md  @@ -1,3 +1,3 @@- # tinyparse+ # tinyparse: read INI files in one line, no dependencies    ## Install
Nothing real happens. Then it is back to step one.

Say hello

Got an idea or a swan pun?

Questions and ideas are welcome. Start a conversation or open an issue on one of my projects on GitHub.

Visit my GitHub