

How do you get involved in an open source project? - psycovic23

I've reached the point where I'm pretty fluent at some languages (C/C++, Python, and some web stuff), but I'm tired of working on tiny little projects.  My internship this summer has enabled me to work on a really large-scale project, so I've learned about revision control, complicated make files and autoconf and the like.<p>My question is, how do I get involved with a larger open source project now? Downloading source code and reading through it leaves me pretty lost, and there's generally no documentation on the code, so I'm having trouble getting started.
======
plinkplonk
"Downloading source code and reading through it leaves me pretty lost, and
there's generally no documentation on the code, so I'm having trouble getting
started."

Fix an open bug. This is the easiest way to get your feet wet. Send a patch to
the maintainers incorporating the bug fix. (Read any suggestions as to coding
style etc to maximize your chances of acceptance). Rinse. Repeat.

------
johngunderman
If you are interested in getting involved in a "big" FOSS project, I would
suggest two things:

1\. Go on the IRC dev channel for the project. There you can get to know the
developers, and discover from the quirks of the code base, and any other misc.
help you may need.

2\. Go to the website of the project and look for a beginner's todo list. Many
major projects have these, I know GNOME does. The list is basically some
simple tasks that need to be done and make it easy for new developers to learn
the code base.

Aside from these two examples, the best advice I can give you for learning any
poorly documented code is to use exuberant-ctags in vi or emacs. Using tags,
you can easily jump through the codebase, following the logic of the code.
This is far easier than manually looking up function definitions when you want
to see what a function does. I'm afraid I didn't describe ctags particularly
well, but a bit of googling should get you up to speed.

------
paulproteus
I and some friends began a startup to make getting involved easier. We're
building an open source involvement engine, helping people showcase their
contributions to open source and find new opportunities. One thing I'm
particularly happy with is our volunteer opportunity search engine; we index
bugs from projects large and small, and we showcase places where projects have
said they want help from new contributors. There's no other cross-project
opportunity search.

Sign up for our alpha at <http://openhatch.org/>. Right now, before you
forget! We'd love more feedback from people interested in getting involved.

Today is Demo Day run by our funders, Shotput Ventures, in case you follow
those things.

Once we hit public beta (just a little while) we'll make a real announcement
here. (-:

------
kamme
There are a lot of different ways to help. Most people think the best way to
help is to fix bugs or do code cleanup. While this is true, it's also very
important to help other users. I send quite some time on a Linux distro forum
and helped other people there. Same on IRC, I tried to help a lot of beginning
users start mIRC scripting. It might not have been the most exciting things to
do for most people, but I've been thanked a lot for doing simple things like
giving a kind response and doing some effort to help other people. And after
all, I'd rather work with some software if I know there is a good community of
users to help.

------
p858snake
I would recommend having at look at their site(/s) and having a look at their
todo lists and bug tracking systems to see where you can help out and just try
to write a patch for it in their preferred method and see what happens.

For Example: for Mediawiki you could look at their bugzilla and find the open
bugs with the "easy" keyword (<http://bit.ly/3SbYJG>) and try to write
patches.

And also you can help out on their Chatrooms/IRC Channels, Message Boards,
Mailing Lists ect

------
jdoliner
The existing developers of a project will almost certainly be willing to help
you get started. Man power is always in high demand on open source projects so
many of them even have mentoring programs for new developers. Hanging out in
the channel is the first step to all of this. And remember: don't be scared.

