Python is commonly recommended as a first language due to its easier syntax, but my experience with it has been that everyone teaches it as a second language. Even the ones that pretend it's a first introduction. So either you get something so dumbed down that you will end up knowing as much as you did when you started or it's just going to be over your head from the get go. Python is easy, but the people who teach it make it complicated (or stupefy it). Pyscripter is an awesome IDE for it.
https://code.google.com/p/pyscripter/
Java, as useful as it can be for someone with the patience for it, it's still one ugly and drawn out language. They made it with "
how long can we keep people on 1 task? how many things can we make someone type just for 1 line of code?" in mind and wanted to keep people from being productive. The only thing I hate worse than Java is Eclipse. That thing is so disgustingly bloated and useless. I wish someone would come up with a real solution instead of tossing everything into that mountain of garbage. I don't mind suffering through the language but I can't stand Eclipse at all, while Netbeans just sucks. - But don't take my word for it. Try it and you'll see what I mean very soon after. :P
C++ is cool, as is C#. It's just that a lot of the people teaching it expect you to have an undergraduate background in mathematics, mathematical/computational logic, and computer science. Because you really need to know the intricacies of lambda expressions, how to calculate <insert your favorite equation series>, and other ramblings of bearded legends in order to just get through an introduction book on the language and make your crappy guess the number game. C languages suck in this regard even though in themselves they're very easy and intuitive.
http://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx works just fine.
There are efforts to make the learning more fun and structured to practicality, but in the end it goes back to learning a syntax from unintuitive people. You'll have an easier time if you see it as you teaching yourself and not as if you're being taught. Because of all of the different people/sites you'll be going through.
I'm sharing this instead of 'resources' because you get the usual "go to this site/Buy this book" from everyone else anyway as if that's the only thing you need to hear. People suck at pedagogy and relating advice between what we think is good with all that we know (e.g., programmer says a book on programming is good) and what a beginner knows and should read (ie, said book covers topics beginners won't understand). Then they blame you for this because it makes perfect sense to them.
Not every book is going to be good, not every course or website will help you, and people aren't going to be interested in answering your questions. Some try leading you on through premises you never understood to begin with and pretend that you learned something new on your own. I had a programming course that did exactly that, and even after I failed one of the assignments they would not help me until eventually one gave me that info that I needed to solve the project on my own. He thought he gave up and was giving me the answer when I still had to figure how to work it out. People like that are the reason I make it clear - assume people are out of touch with
you and
your level always.
So when you run into that wall this is what's actually happening. The correct/appropriate advancement for you is only slightly above your comfort zone (challenging you to new things), not way above it. And keep track of the topics you learn. Write them down or something. Then you can practice them from memory (to keep it sharp/discovery) and find new ones more easily (not on list? awesome!) and gauge where you're at when searching for information regardless of which site/video/book you're using without having to go through a topic again.
It's not easy advancing from noob status. But use your interest and energy as momentum and you can work your way through it. It is work, but you already know the payoff is worth it. Some words of encouragement from Fort Minor:
This is ten percent luck, twenty percent skill
Fifteen percent concentrated power of will
Five percent pleasure, fifty percent pain
And a hundred percent reason to remember the name