Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

A well-known project

Pro: Sounds really good.

Contra: Very difficult.

  • All the simple problems are already solved.
  • The code-base is huge and quite complex.

Opportunities:

  • There might be need for documentation, translation, examples.

Contributing to a well known, established projects used by millions of people sounds really nice. However it has its difficulties.

For one, those projects have been around for quite a while so any simple issue is probably already implemented and any simple bug is probably already fixed. So adding a new feature or fixing a bug will probably require a lot of time. Both to understand the code and to make the changes.

These projects also are usually managed in a much stricter way than those less established projects. That means you'll probably have to adhere to coding standards, commit-message standard, etc. much more than in a less established project. It is actually beneficial to you to learn such practices, but it will make it harder to contribute to such a project.

However even established project have typos, they also lack documentation, good examples of usages. Many have translations either as part of the application (localization) or as translated documentation. They also probably have lots of users that need help.

So there are many ways to contribute to well-known projects as well, just keep in mind that it might need more investment on your part.