How can I make myself a better programmer, and work with you one day?
--Hoping in Brazil
A good way to improve your programming skills is to participate in an open source project. Even if you don't contribute patches, using some open source project (anything in Linux, for example!) and understanding how it works by reading some part of the source code will improve your skills -- and there are many different way to contribute, for example, improving or translating documentation, verifying unverified bugs in the bug tracker, and so on.