Yes but you do realise that unless you do a degree in software engineering you really wont learn to program that much. Example, before I moved back to the UK i was about the start university in America for computer science and very little of it was programming.
Via OU I am studying software engineering and take Java courses. Which are decent. However you are left on your own to work through it all and that I dislike. One of the main reasons I am starting local Uni next year.
Along with my degree I also have certifications in CCNA, compTIA and Microsoft. I will be adding my Oracle Java certificates too. That is a fantastic cert ot have to your name. I treat a degree as the back bone to these. Degree shows you can work and study on a professional level and have the ability to learn complex material. It also gives you the perspective of software engineering from an academic point and programming is only a tiny fraction of this engineering.
So yes, you can teach yourself programming but you wont have the acadmemic insight into the overall concepts of engineering / computer science and the vast majority of IT companies won't look twice at you.
My Father is a senior manager at a leading IT company and they won't touch anybody who has no degree for the facts about software engineering being far far more than being able to write a line of code.
Go get involved with open source projects, join stackoverflow and work your way up and do all that whilst getting a degree.
note :
DG2OO9.
Quoted the wrong bloody post in this message. Very very sorry, I was talking to one of the posters above you.