Joining a project

closed account (S6k9GNh0)
I've been studying programming and C++ for a good while now. Unfortunately, I don't have a lot of experience and as a result, I want to join a project to gain some. Sourceforge looked like an ideal place but I get answers from no one who I ask to join and / or the project closes soon after resulting from lack of development or fundamental flaws from within the project. So where should I even begin to look for a project that is of my level?
Well, you can't really guarantee that you will be able to find good projects for your skill level...The best way is to go create your own project (then you will be sure). Can't really help you much more then this though.
closed account (S6k9GNh0)
Well I thought as much. I was hoping I could JOIN a project so I could gain experience. I simply thought it wouldn't be the best to start a project filled with methods of inexperienced code that probably won't ever be used (depending on what I begin.).
There are a few things I recommend you look for in a project:

1. It should interest you.
2. It should have and active and nurturing community. (Look at the devel mailing list and make sure people are civil.)
3. It should have a bug list somewhere.
4. It should have a publicly readable source repository.

Download the source from the source repository and make sure you can build it. Read the devel mailing list -- read the archives back at least a few months to make sure you understand at least the recent history. If you cannot build it after reading the list archives, ask the developers for help. Make sure you understand the basics: how to create a patch using diff, how to apply a patch using patch, what the developers expect from one another in terms of coding standards and documentation.

Go through the bug list and find a bug you can replicate and fix. Ask on the list if anyone has fixed the bug yet. If no one has, post a patch to the devel list. Let them know your skill level, and that you are new to the codebase and ask for feedback. Get feedback and continue to work on the fix until it is accepted. Continue doing that for a while -- tackle harder and harder defects. This is the important part -- only fix bugs at first. After a few bugs, pick someone else's enhancement request from the bug/todo list. After a while, you can contribute your own enhancements. You are not likely to be given commit access to the repository for quite a while. Don't take it as an insult -- good developers will be overly cautious and, in general, you don't need it.

The thing is, you don't need to ask to join. Once you start contributing regularly to a project, you are part of it. It's your choice.

Sourceforge is a good place to start. The KDE community seems to be willing to take on new developers. See the "interact" links here: http://techbase.kde.org/Welcome_to_KDE_TechBase

I disagree with firedraco -- the feedback you will get from joining a group of experienced developers will be far more beneficial than starting your own project. You'll learn much more joining with people that have more knowledge and experience than striking out on your own at first.

HTH
closed account (S6k9GNh0)
Thank you for the reply. KDE would be a lovely option if I could actually run it. :P
Why can't you run KDE?
closed account (S6k9GNh0)
KDE is a desktop environment based on X right? I run Windows Vista on a retail laptop. I've heard of running KDE on windows but I don't think it runs out of the box for Windows.
http://windows.kde.org/

The KDE on Windows Project is aimed at native porting of the KDE applications to MS Windows. Currently Windows 2000, XP, 2003 and Vista are supported.

The preferred way of installing KDE apps under Windows is the KDE-Installer. See the Download section on the sidebar for more informations.

KDE on Windows is not in the final state, so applications can be unsuitable for day to day use yet.


Seems like a perfect project to get involved in. Lots of opportunity to help out.
Topic archived. No new replies allowed.