Hi everyone! I'm starting this debate because I want to know how do you contribute to the open source culture, if you do it at all. I just wanted to see if there are any other ways to help apart from fixing bugs or building new functionalities for an open source project.
Don't be shy, I'm looking forward to reading your answers! :)
Top comments (5)
I authored jquery-csv. It was the first spec (rfc 4180) compliant CSV parser in JS (and really fast) so it gained a fair amount of popularity in its heyday. So far, it has surpassed 1MM downloads.
I have also authored many other libs/tools over the years. Contributed to many other projects, incl bug fixes, features, tests, and documentation. Participated on a Node working group. Discussed future JS standards via TC39 proposals.
Lately, I created a GH group @vanillawc where I've been building open source standard web components. It's good practice and eventually WC will be common place in the FE ecosystem.
The barrier to creating a project is getting over your own ego. Just because you create something doesn't mean it'll ever gain any traction. So, who cares. Put it out there, try to solve a problem that you think needs fixing.
For every one of my projects that gains any traction, there's dozen that don't. That's the 'hard' part.
The barrier to contributing is understanding the process. Read the CONTRIBUTING.md, follow it. Understand that everything you touch probably took 10x more effort than you think to create and maintain. Try to add real value not opinion, opinions are worthless. OSS is about working together. You'll have a much easier time if you approach a project with a 'how can I help' attitude.
If you suck at reading other people's code, then work at it. Good thing there is a gigantic collection of open source codebases where you can practice.
That's really the 'secret'. Practice, do work, get better, try to understand users, collaborate, be helpful.
The entire ecosystem depends on people who do all of these things well. If you'd like to be a part of the conversation. Prove that you can add value.
To be honest, I don't...
While I do maintain a lot of projects, I don't personally contribute to any—at least not through pull requests. More often than not, I'll open issues on other repos when I run into a problem with a tool, but I've never tried to fix a problem myself.
Well, using open source software is actually a contribution to the open source culture.
Personally I am working on several open source projects (Fresh IDE/FreshLib an advanced assembly language IDE and library, AsmBB a web forum engine) and I am actively promoting other open source projects, that I am using and think they are great. For example FlatAssembler the greatest assembler ever made, RWASA ultra-fast web server written in assembly language, fossil scm a really great DVCS, SQLite (well, you know SQLite) and many others.
Also, when I stuck on some bug that no one wants to fix, I am fixing it myself and of course sending the patch to the maintainers. Recently it was a bug in the WINE project.
I don't really contibute to existing projects, because I usually find them quite intimadating and don't really know how to start, however I make all my personal projects open source.
I create issues as I come across. Comment on existing issues. Though I haven't created any PR yet!