It's taken me a while, but just over 12 months learning the basics of programming, I'm finally contributing and commiting code to my company's SVN repo.
One of the things I like about programming, is that it seems to suit me. Having not done any programming at all before 12 months ago, jumping in at the deep end and going into a career that requires it wasn't an easy step to take. However, I've had some good guidance from my colleagues - in that I've not settled upon a single language. I wouldn't say I know any language well, but I'm reading and understanding code better than I've done before.
The hardest part for me, is looking at a problem and seeing my own solution - rather than the solution that's coded infront of me. Once I've understood the train of though of the original programmer, it's alot easier.. however, at the start I was failing to do that.
At the moment I'm happy making modifications and bugfixes to programs. It's simply enough stuff, where auditing and testing the problem takes by far the majority of the time. However, I'm understanding things better - and feel like I'm finally making some decent progress.
I know it's possible to contribute to open source in other ways than just coding (I've been doing that for the last few years) - but now I'm coding I hope to submit code to the projects I like. It's been my aim for a while. I've set up my bzr repo, but most of my code at the moment I'd hope to submit as patches to other projects. Who knows what the future will hold.