Working on an Open Source Project is like doing community work or donating blood. These are things we should do because they make our society better as a whole. Not only does it help improve the world, but it can have benefits by making new connections and gaining new world experiences. This is what Open Source Projects can do for you. They are a chance to connect with a community, work on a massive project, and better yourself as a coder/developer/artist/insert-whatever-the-hell-you-do.
In this post I’m going to explain my journey of finding an Open Source Project and joining a super strange cult community full of artists, developers and space clowns.
My Fears and Lack of Action
Until I started this blog, I did not contribute to an Open Source Project. I suffered from fears of not being good enough to add any value to a project. What if my code sucked? What if I added something that crashed the entire project? Am I just incredibly lazy and don’t want to go out of my way and do anything?
Yes to all of the above… Luckily I blew too much money on this website and I need content.
Finding Open Source Projects
There are many resources out there to find Open Source Projects, but here are the two I used to find mine.
General Open Source
This is a great website for finding projects under only programming language, game engine, skill level… ect. It’s where I found the one I’m currently working on right now!
Unity Open Source
This is a solid repository of ton of Open Source Projects focused on working with the Unity game engine. There were a few that caught my eye here, but for now, the one is enough.
The Three C’s of Finding a Good Project
Community, contributions and currently active. These are what I looked for to find a good project.
Community
I wanted to find a community that was a decent size and helpful. There are a lot of communities out there that will tell you to RTFM. (If you don’t know what this is, please RTFM) This is great advice, but there is a healthy balance with RTFM and mentoring newbies. Take the time to read through comments on their forums or the Discord channel and decide if the attitude is one that fits with you. You’re giving up your time, so make sure you’ll be happy with the people you work with.
Contributions
How often do people contribute to the Github repo? Do the people who manage the repo actually merge commits? When was the last time someone commented on an issue?
In my pursuit for an Open Source Project, I wanted to work on a project that had plenty of contributions. When I see a good amount of contributions that are actively being merged, it signals to me that contributors and administrators are in a state of flow and the project is moving along.
Currently Active
This one was covered a little bit in contributions, but I wanted a three part to my alliteration and it’s still a good point. Seriously… Check the date of these things. Is the Discord currently active? the forum? I need the personal gratification that I’m working on a project people are currently using. Who cares if I fixed a bug on a project that has collected dust for two years? I need the dopamine fix of seeing my work being used!!!!
Unity Station
This is the Open Source Project that I decided was right for me to cut my teeth on. It hit all the marks needed for a good Open Source Project. The developers are all active, the admins are great and the community fits me perfectly.
Unity Station comes from an uber old cult classic called Space Station 13. Essentially, you’re on a space station with a bunch of other players and you all have jobs. You can work as things like a security guard that makes sure everything is kosher on board or a clown who makes people slip and honks a horn at them. Its like a cross between Mystery Science Theater 3000 and Monty Python. The people who play it are weird as hell and a ton of fun.
The problem is Space Station 13 was built on a game engine and code from 2003. It’s dated tech and a team has taken it upon themselves to rebuild the game using Unity. After being developed for decades, there is a ton to convert and it is a major task.
Conclusion
I have found a project that met all my criteria and will soon be diving into the depths of a massive project that hundreds have worked on. I’m looking forward to gaining some experience with veteran developers and understanding a code base outside of my own.
Hopefully this will help encourage someone to get off their butt and help contribute to an Open Source Project. It seems incredibly daunting starting out, but now that I have found one, I’m really excited to help out.
I’ll leave you with a song one of the contributors has made.
If you want to check out Unity Station you can find their main website here.
I’m done writing. Bye bye.