DEV Community

Cover image for 5 Things I Learned in My First Week as a Maintainer

Posted on

5 Things I Learned in My First Week as a Maintainer

I took a week off from blogging and in that time a couple of things changed. I joined Gatsby and became an open-source project maintainer overnight. 😳

As a result, I've had a lot of new experiences over the past week. I thought it would be fun to share some of them, as well as things I've learned. Perhaps they'll come in handy for others.

  1. Github UI tricks!
    As it turns out, Github has wonderful documentation and that's been incredibly valuable as I learned how to use the UI in a new way.
    For reviewing pull requests (PRs), using the files changed tab was helpful. Especially for PRs that encompassed multiple commits or multiple files.
    Another trick I loved was line by line comment changes. I'd submitted PRs before and seen edits like that, but I never really knew how it was done until now.

  2. Upstream is not a git keyword
    Another trick I loved was from my new boss @marcysutton . I've forked repositories and set upstream repos before. But when following the documentation I'd never realized that upstream wasn't a required keyword, it was just a variable name.
    This is incredibly valuable because the Github UI is powerful, but it isn't always enough. In certain cases, I want to pull down contributor changes in order to run them locally. Since upstream is only a name, I can use the contributor's name instead. That makes it easier to keep track of multiple forks.

    As an aside this is why changing names when you go through tutorials is so helpful. You learn what is and isn't fungible.

  3. Attention to Detail
    When reviewing PRs there is a lot to consider! My role is on the Learning Team, so I'm looking at whether the information is accurate from a technical perspective, whether it's written clearly, if it follows our style guide and a number of other things.
    It can be easy to miss one of those items by focusing too much on another. In addition, every PR is considered with an eye towards the project as a whole, and being new I don't know all of our docs yet. Or our features. Or, anything really!
    So it's definitely a challenge to hit the ground running. But what's wonderful is that I can leave comments for the things I find, and other team members can add on with their contributions. The beauty of open source at work.

  4. All eyes on you
    One of the fears in open source is that all your work is in public and everyone knows when you make a mistake. But I learned pretty quickly that the projects move so fast, and there are so many PRs, that it's impossible to keep track. So rest assured that no one is judging your contributions, only reviewing them for alignment with the project.
    And if you need further evidence of that, I give you my first PR. Complete with a typo...🤦🏻‍♀️ Proof

  5. Open source never sleeps
    Hacktoberfest is one of the busiest times of the year for open-source projects. But even still, my Github email notifications were non stop. I love completing tasks, so this is going to be an adjustment for me. I will never "finish" reviewing PRs, because there will always be more coming in.
    Thinking of PR review as a timeboxed activity is important. By doing that, I can also move forward our long term initiatives, instead of playing Lucy on the conveyer belt.
    Lucy eating chocolate and stuffing it in her shirt to try and handle all of the chocolates coming down the conveyer belt.

These are just a few scattered thoughts from my first week. But I hope this was a fun insight into my new role. Happy maintaining!

Discussion (7)

nickytonline profile image
Nick Taylor • Edited on

Thanks for sharing! Sounds like you're off to a busy start at Gatsby.

One tool I've found useful as a maintainer, but also as a contributor to OSS is the Refined GitHub extension. 🔥

GitHub logo sindresorhus / refined-github

Browser extension that simplifies the GitHub interface and adds useful features

Refined GitHub

Browser extension that simplifies the GitHub interface and adds useful features

We use GitHub a lot and notice many annoyances we'd like to fix. So here be dragons.

Our hope is that GitHub will notice and implement some of these much needed improvements. So if you like any of these improvements, please email GitHub support about doing it.

GitHub Enterprise is also supported. More info in the options.


Highlights 🔥

Adds button to mark issues and PRs as unread
(They will reappear in Notifications)
Adds one-click merge conflict fixers
Adds reaction avatars showing who reacted to a comment Adds the option to wait for checks when merging a PR
Linkifies issue/PR references and URLs in code
laurieontech profile image
Laurie Author

Ooh I’ll take a look!

ben profile image
Ben Halpern

Upstream is not a git keyword

These are such funny little details. I've definitely found myself on either end of this type of conversation/realization before.

laurieontech profile image
Laurie Author

Absolutely! And it says something that examples are so uniform that one could infer it is a keyword.

kfairris profile image
Kenny Fairris

Good things to know! And thanks for showing that we're all human. We learn more from our mistakes don't we?! :-)

binyamin profile image
Binyamin Green

I'd like to start contributing to open-source in earnest (not just a random PR). Where should I start?

laurieontech profile image
Laurie Author

That’s great! A lot of projects will tag their issues at first time friendly. Docs are also a great place to start.
Look for projects that you use or are excited about in some way.