Hi I’m Petar, Let’s talk about the state of Open Source.
The Open Source community is AMAZING. We’ve come a long way since the time when everyone wanted to keep their code a secret. Now we’ve got big companies like Facebook or Google creating and maintaining great Open Source products. We have startups relying on and creating Open Source code. People like you and me contribute to Open Source projects all the time. It has become kind of a normal thing, that if you’re going to write some code, and you think it may be useful to someone, to put it on GitHub. Everybody is Open Sourcing their code! We’ve come to realise that by sharing our code, our knowledge, and by working together, we can achieve so much more that if we all kept our code closed.
I want you to stop for a second and think about what this means. There is so much code on the internet right now, and you can use most of it anyway you please. Learn something from it, use it in your projects, improve it… Now I don’t know how many Open Source repositories are there on the Internet, but I imagine the number would blow our minds.
Edit: I found some information that “Today, there are 29 million projects just on GitHub” - but that’s counting forks too, as one comment points out. Without counting the forks, it’s at about 13M. Pretty mind blowing.
Ok, so we have acknowledged how awesome Open Source code is, but now, we have to look at it from another perspective.
People are writing open code because they want to do it, as a hobby, and not because it’s their job (most of the time anyway), the quality of those projects is all over the place.
There are some great projects, maintained by one person or a team of people, who invest a great deal of time and effort to make the project great. But there are also projects that lack in quality. They may have code that is a mess, they might not have good documentation. They might create the project and then abandon it.
Now don’t get me wrong, I’m not picking on anyone here, I understand. I, of all people, have some not so great repos that are Open Source, but I want to try and change that. And I want you to help me do it.
What we can do to make the situation better is this: we can create a specification, a checklist, of all the good practices that an Open Source project should have. Like, it should have documentation. Documentation should consist of the following things. It should have tests. You can read the proposed standard in our Review Guidelines on GitHub.
Let me know what you think about it and we can work together to improve it.
So what is JS Police all about then?
Now, I want to say this again. It is not our intention to insult anyone or to belittle their work. We want to offer advice on how to make a project better. Maybe submit a pull request or two while we’re at it. Get our hands dirty. We won’t shame anyone who didn’t write tests for their code. If the author chooses to follow some of our advice, then great. If not, no problem. We’re all got busy lives.
We should all understand that behind all of these projects are real people, who devote large amounts of time and energy into creating something others may find useful. They do it in their spare time, because they are passionate about software development and being Open Source.
Here are some of our goals:
So let’s dive right in, shall we?