If you are a student, you have a unique opportunity right now. Join the Summer of Code, submit a project proposal until March 25th, and work with the people from an open source community during the summer. You will get paid for three months, you will become part of a community, and you will have the chance to make an important step in your career as a software developer. Google is organizing and sponsoring the program and hundreds of mentors from all kind of open source projects all over the world are ready to help you to do your next step in open source. I really would have loved to have such a program when I was a student. You are living in good times.
I have been a mentor for KDE and openSUSE for many years and have worked with many amazing students. This year we made an extra effort in openSUSE and set up a new web site to help mentors and mentees to find together. It collects a lot of information about how you can succeed as a mentor as well as a student, and provides a portal for all the openSUSE project ideas people from the community have come up with. KDE also has a list of exciting KDE project ideas. Pick one or, even better, come up with your own.
There are so many interesting projects and lots of good students looking for working on them. While I try to help with the overall organization a bit, I limit myself to mentoring maximally one student during the summer, so that I can do a decent job with that and don't get stretched to thin. I have put up a couple of ideas in both projects, KDE and openSUSE. If you would like to help with mentoring one, you are more than welcome. This way we could be able to provide mentoring for more projects. If you are willing to help please get in touch with me. It is a great and rewarding experience to be an open source mentor.
The KDE project, where I'm looking for a student, is Inqlude, the Qt library archive. It's a nice project mixing an interesting set of technology, some Ruby, a bit of HTML and CSS, plus some C++ and Qt, and last but not least the opportunity to do some user interaction design. You will certainly learn something, and as it's a pretty small project within the universe of KDE, you will be able to make a significant impact during the summer and beyond.
In openSUSE we have a couple of projects around Machinery, our pretty new systems management tool for inspecting, inventorying, validating, and migrating Linux systems. It comes from openSUSE, but it also runs on and supports other flavors of Linux. It's Ruby, and one of the interesting aspects is that we are doing serious test-driven development, code review, automatic tests on all levels, and more what constitutes the craft of software development. You will learn a lot there. Mauro and Andre are available as mentors there as well.
There is one more project, I find really interesting. That's reproducible builds for openSUSE. The reproducible builds project coming from Debian aims at making it possible to prove that a binary is actually built from the sources it claims to be built from. This can help to make build systems more efficient, but more importantly it helps to protects against malicious modification of binaries during the build process. This can have a huge impact. Bernhard has started to do some work on it and by joining this you could make a real difference for free software by making sure users can trust in the software they run.
I'm repeating myself, but this is a wonderful opportunity for mentors and students alike. Don't hesitate, get your proposals together, and join the summer of code.