The best way to get a better programmer is to actually program something

What language you start with doesn't matter, in each and every language you can write horrible code.
First task is to learn the language, read a couple of books about it till you know the language syntax. Concerning the language, everything is allowed. I think Python is a quite nice language to begin with. Also, C/C++ is a nice language since you'll really learn how things work on a rather low level, i.e. things like memory management. Makes you appreciate and understand higher-level languages more.
The next task is finding something to work on. Look for something you are missing in your computing environment. For example a friend of mine started with an ID3 tag editor for his MP3 collection.
Whatever you choose, the most important thing to remember is to keep it plain and simple:
Do not use IDEs, code generators and the likes. If you use them, you'll never learn the basics. Only if you know inside out how things work, you can use IDEs, code generators and the likes to speed up development.
Also, don't start with GUI programming, start with a simple text based console application. After all you want to learn programming, not how to click together a simple dialog in some IDE.
My advise:
- Install Linux, a completely new and different work environment opens up your mind
- Chose a programming language
- Get a simple text editor, shouldn't offer much more than syntax-highlighting
- Write your own build scripts
That way you'll learn the programming language of your choice, you'll learn how the source gets compiled and you'll learn how the basics work.