I'd like to improve my programming skills, especially the readability of my source codes, and, why not, to give a little contribution to some open source or Linux-related projects. I'm studying C, and I'm interested in practical development problems and electronics problems, but I need to make a lot of experience. Is there any project you know that I could join?
Hello.
You could find a lot of interesting projects all around web. One wepage that is excelent is sourceforge.net. There, you can find projects that may interest you, I am sure about that ;)
I'd recommend to read code before writing it. If you want to learn C and are confident with Linux, why not download the kernel source code and dive into it? Not 100% of the code you'll see is written with good practices in mind but you should see how things are going on.
If it's too huge, try a smaller open source project. Then, when you're familiar with it, and wanna improve it, just send a mail to the project coordinator!
This type of question is very common. These may help:
http://stackoverflow.com/questions/52095/open-source-projects-that-are-easy-to-contribute-code-to
http://stackoverflow.com/questions/2284/how-to-contribute-code-back-to-open-source-project
http://stackoverflow.com/questions/188495/open-source-virgin-what-steps-to-take
http://stackoverflow.com/questions/38881/how-to-find-opensource-projects-looking-for-help
Why don't you take up developing device drivers for linux...say for a particular USB device etc. The community can surely use help there, and it will be close to your interest in electronics.
I would suggest write a GPS driver for linux. I don't know if there is any existing one but if you are keen on gaining experience why not try the entire gamut of software development including setting up a code base.
If you are a student, check out also the Google Summer of Code programme; you could make experience and even get paid for it! This year's edition is starting soon.