Someone said Python and Javascript.
These aren't programming languages. they're unstructured scripting languages which will wind up making you a completely incapable programmer who can't work in other languages.
My advice is to pick up a structured language, something that reinforces types, something class oriented, and something that extends across platforms through native compilations without using interpreters.
Too complex? let me explain:
When you were taught English formally for the first time, you probably knew enough about it to know how to get a few words out, but only the words that were spoken to you by the people around you, right?
But when you go to school, you get educated not just in syntax, but in structure, in word choices, and most importantly - resources.
Learning a language like Python or javascript as a first language is just like learning English without ever going to school for it. Chances are you're going to sound like a neanderthal - and you yourself are going to be convinced you know all there is to know because those other words 'that more educated people learn dont add much more flavor', do they?
That's the problem with talking to neanderthals. They're convinced their language is best. When they know no other languages to contrast it by. And they'll thumbs me down (watch the thumbs down) because - hey 'that showing me who's right and who's wrong, he who gets the most thumbs down is wrong, right?"
Wrong.
My advice is to learn a a structured language - preferably an object oriented language - and preferably which natively compiles to binaries and doesn't need an interpreters.
I started by hacking when I was 11, leveraging disassembler and some c, then I moved from there to a very strtuctured GW Basic - from there to a Motorola 68000 Assembler and a cross compiling C, which had me writing flight code for rocket and guidance and navigation systems for a company by the name of Orbital in Chandler, Az. From there I moved to C++, and from there to more relaxed languages like Visual Basic 6.0.
Now, I prefer .NET - C# in particular.
Programming is - to me 'whats the best tool for the job'. Sometimes it's javascript, sometimes it's (ugh) a programming language called Foxpro, sometimes it's .net, and sometimes - nothing can beat a hex editor and understanding the op codes to do direct manipulation of the binaries themselves to place assembly level JSRs in to patch code that ain't working right.
There's plenty of them out there.
My advice is this:
Find a programmer or game company you admire. Learn what languages they work with.
And then - pick up a reference guidebook - have amazon suggest one to you - O'Reilly's books are GREAT for reference. And then program Away.
Or here's another option that's so old school it's ridiculous.
Pick up "Basic Computer Games" by David Ahl.
And then go to http://www.gw-basic.com/downloads.html and pull down GWBasic, and type those programs in, one by one like I did, and tweak the variables.
It's a real straightforward and easy way to get acquainted with structured programming.
And keep in mind. Bill Gates coded DOS using Basic and the underlying structure of Windows to build a billion dollar company. I have yet to meet anyone who coded up anything in python or javascript who's done remotely the same.
On that note. Tell David I sent you if you end up having to look him up.
He's a friend of mine.