Jan's Blog

a burned out maintainers guide on how to maybe contribute to open source (perhaps)

I’ve been participating in open source for close to a decade and many times lacked information that could have helped me or got information that didn’t prepare me for reality, this is not a real guide just a incoherent string of thought that is based on my personal experience, view everything written with subjectivity.

Step 0: do something else first

No seriously, if you are fresh start off making something independent and just put it out there. This doesn’t just mean software projects either, you can go ahead and write, draw, translate some text you found somewhere, ANYTHING, publishing this somewhere public is even better because it gives you a chance to smell the room.

If you can’t come up with anything you want to do you can always just recreate/remix something existing to put your own note ontop, this can mean developing the millionth notes app in the world, redrawing something existing or adapting a story to take a different turn, do be aware that if you base your work off anything that their author(s) would very likely appreciate some form of credit.

When you find yourself struggling with the process feel free to reference other stuff (as long as you don’t outright copy it), you can also try looking for various communities that are helpful to newcomers, however your experience there can be varied depending on where you end up.

[[AGAIN, YOU DO NOT HAVE TO CODE TO DO OPEN SOURCE]]

Step 1: finding a place (or not)

If you already got your hands dirty the next step would be finding out where you want to dig. Some people find one project and stick with it forever, others go around from project to project doing what they can and become so called “drive-through contributors”.

There is absolutely no shame in either, I personally hold loose attachment to some project but go around to whatever I feel like working on or what I believe could use my help and sometimes that meant working on nothing at all. For a long time I felt a sense of shame because I couldn’t find or make a project that just felt like me

Step 1.1: know your place

Found something you want to contribute to? Great! Now remember your place.

If you are new you are considered on the same level as a drive-through contributor, people are not going to start relying on you for anything or assign anything to you, they don’t know who you are.

The best you can do at this time is make issues, deal with issues, propose changes etc but remember that maintainers often do this in their spare time and often struggle themselves, if your contributing ends up being ignored don’t take it personally otherwise it will fester within you and cause harm to you and your environment, I speak from personal experience.

Step 2: go outside

You started doing some stuff and maybe even found a project to contribute to, what now? Now you go outside. Not nessarily in the literal way, go play some games, make some friends (maybe even in the projects you contribute to), just find something to enjoy yourself.

I know that this sounds easier said than done, when there is something lacking in your life it is easy to fill that void with your contributions but that only turned me lonely, bitter and miserable and removed any joy I had in the process. Depending on the situation you should also consider the possibility of therapy, not everything can be solved by yourself and sometimes you need help, even just a friend to talk to can help you improve yourself.

Step 3: it’s (probably) not your job

Lots of people work on open source as part of their employment, probably not you and me neither. Practically every contributor feels some sort of obligation to their work, fixing bugs, making corrections, keeping people in the loop, making reviews, comments, all of it, these intentions are nobel but usually bring you nothing.

Always put youself over your contributions, if its not a life or death situation they can wait until you got the spare time and if others have a problem with feel free to tell them to screw off on my behalf, you deserve a little more respect than that.

Though to be sure not to make any promises you cannot keep, the respect needs to be mutual and if you said promised something and then don’t deliver people will rightfully be ticked off. It is better to make no promises and instead inform people of your intention, even if they may not pan out.

Step 4: why are there steps here?

I felt like it and so you must suffer through this nonsense layout (( due to ADD and other ills I stuggle with collecting my thoughts in any way or even holding onto them for prolonged timed, this entire post may feel very incoherent and rambly because that is simply how I operate, I apologize if it is hard to digest))

Step 5: play nice

No matter where you are now one thing you always gotta keep in mind that most of us are working towards a greater good but that still means there are a ton of people who need to make themselves your problem.

I know telling people not to engage with those people is impossible because there is something itching in your brain to tell them how wrong they are but please keep in mind that some interactions were designed to fail, stepping away is the only healthy decision you can make here including blocking them if they decide to go above and beyond.

Your aim should always be get treated nicely and treat others nicely to inspire a healthy environment where everyone can work together to make things better and not splinter into a million different fractions that all want something different. Even if someone did something horrifingly terrible your goal should not be to blow that up any further, horrible people are not going to care and nice people will only become discouraged by it.

Step 6: sometimes shit just sucks

Sometimes you may come across an amazing project which you love with all your heart and you contribute to make things bigger and better so it can bloom into a beautiful flower that everyone can enjoy… but your contributions are talked down upon, ignored or rejected for reasons you don’t agree with.

If you ever reach this point halt your contributions and try to seek out a conversation, maybe everything is just a misunderstanding or the social dynamics were not completely understood or maybe they have a different vision that you can get behind.

Sometimes shit just sucks and the problem is either you or the environment, I can only recommend trying to move on as quickly as possible otherwise you will only watch the flower wither away in your heart.

I know, it sucks. But there are other flowers out there and maybe even one pretty enough to fill your heart again.

Step 7:

there is no step 7 yet, maybe there will be in the future.

#Open-Source