2 ms·
I'd agree with this. Pick something you already use and fix or extend it in ways which make a meaningful difference to you, but be aware of and respect the desi
by pcowans 16y ago
I'd agree with this. Pick something you already use and fix or extend it in ways which make a meaningful difference to you, but be aware of and respect the design goals of the original authors.
In practical terms, you can just start hacking on the code yourself which will normally be available from a version control system somewhere, but when you've made changes you'll need to submit patches for consideration to the project maintainers at first. If you're unsure what format to use, just email to ask. For projects hosted on github you can just fork the project there which will make it technically easier to get patches back into the main branch. As you build up trust with others involved in the project you'll be able to get commit access to the project repository and make changes yourself.
As for IDEs etc, each project will have conventions and project metadata (makefiles, project indices etc.) suitable for a specific setup, so figure this out when you've picked a project and work with what's already in place as much as possible.
[edit] One other thing: it will be really hard to get started - getting up to speed with how a new piece of software works is difficult at the best of times and most projects aren't designed to make this easy. Persevere, as once you've got to grips with layout and conventions and got to know the other contributors things will become much easier.