tags:

views:

88

answers:

2

Hi StackOverflow! I'm a CS student on well on my way to graduate. I have had a difficult time of finding relevant student jobs (they seems to be taken merely hours after the notice gets on the board) , so instead I'm looking for an open source project in need of help. I'm aware that I should choose one that I use, but I'm not aware of any OS-project that I use that needs help. That's why I'm asking you.

I don't have any deep experience, but I here are some of my biggest projects so far:

  • BitTorrent-ish client in Python (a subset of BitTorrent)
  • HTTP 1.1 webserver in Java
  • Compiler from a subset of Java to run on JRE
  • Flash-framework project to model an iPad look and feel (not to run actual iPad programs) complete with an API for programs.
  • Complete MySQL database for a booking system, with departure and arrival times, so you could only book valid tickets (with a Java frontend).

I know, Java and languages like AS3 and C# feels natural per se, Python, and have done a fair bit of hacking around in C, but I don't feel very comfortable with it. Mostly I'm afraid to make a fuckup because I have such a high degree of control.

I would like to think I'm well aware of good software design practices, but in reality what I do is ask myself "would I like to use/maintain this?", and I love to refactor my code because I see optimizations. I love algorithms and to make them run in the best possible time. I don't have any preferred domain to work in, but I wouldn't mind it to be graphics or math heavy.

Ideally I'm looking for a project in C++ to learn the in's and out's of it, but I'm well aware that I don't know that language very well. I would like to have a mentor-like figure until I'm confident enough to stand on my own, not one to review all my code (I'm sure someone will to start with anyway), but to ask questions about the project and language in question. I do have a wife and two children, so don't expect me to put in 10+ hours every week. In return I can work on my own, I strive to program modular and maintainable code. Know how to read an API, use Google, StackOverflow and online resources in general.

If you have any questions, shoot. I'm looking forward to your suggestions.

A: 

Would you be interested to work on Querydsl? Querydsl is a type-safe query language for JPA, JDO, Collections, SQL and Lucene.

In general pick something you are interested in, check out the sources and see if you want to work on the code. Many OpenSource projects need external help, but only few are actually asking for it.

Timo Westkämper
It actually sounds like an interesting project, and it might be come in useful in the future as well. I will take a look at it.
hvidgaard
A: 

Open source projects will accept patches from anyone. Just choose one and send your patches to them. If they don't like them, you will be told.

There are many places to look for projects:

  • GitHub
  • SourceForge
  • Google Code

and many more...

Oded
And just picking one at random wouldn't help much. That's why I asked here, in hope someone involved with or knowledge of a project, in need of help, could give me a few suggestions.I have read most of the other posts that suggest to use the said hosting services to find an OS project. The main problem with this approach is the shear number of projects.
hvidgaard
@hvidgaard - all of the sites let you filter by project type, language and other parameters. Cuts down the number.
Oded