Beginning Programming (Wendell)

Hi, I'm a 4th year electronics engineering student who is acquainted with HTML5, CSS3, IA-32 assembly language(a bit), computer organization and architecture. I'm also a hardware enthusiast. I'm trying my hand at some programming and was wondering where I should begin.

My question to Logan and Wendell (or is it 'Wendel'?), especially Wendell, is what language would give me a broader sense of the fundamentals of programming? I've got three really lengthy 1000+ page books on Python programming (since one of my friends [also an engineering student] suggested that Python would be a good starting point). I'm the kind of guy who has multiple books by different authors on the same subject strewn all over my study table. I read as many books on a topic, because that helps be grasp the topic well. 

I have a good knowledge of computing basics because of the curriculum. I got these books on Python:

1. Learning Python by Mark Lutz:

2. Programming Python by Mark Lutz:

3. Python Cookbook:

4. Python Programming For The Absolute Beginner:

Need recommendations for study material or books on programming that will teach me general fundamentals of programming. I have admittedly not been good at coding because of my field of study. It's been more focussed on the hardware side of things. Any help would be appreciated. Also, I'd like to create GUI's for any program that I make.

Thanks in advance.


Python is probably not a bad choice.

An alternative would be to go to Linux for your main os. And Learn C/C++. Linux is actually great because you'll be throwing yourself head first into an environment where you can learn a lot in short order. I'd recommend debian or ubuntu (or one of their siblings like Mint) as your distribution because you can install the package from the package manager, or request the package manager fetch the source for you and then you can compile it.

you can also do a lot of fun things with python in linux. get out of your comfort zone; sink or swim :)


Thank you for replying. I have Ubuntu on another system so I'll start up with that then.

I'm not Wendell but code academy is good for learning the basics of most well known languages.

I know about CodeAcademy but I'm just not acclimatized to learning the way they teach, by putting you right into the action. I like a more structured approach and more detailed explanations on everything, since I have a technical background.
Also I can't stand reading text for more than 20 mins on a screen. The glare is very uncomfortable. I like taking notes and stuff, marking important things, learning my way.