Author Options:

What is the best book for learning Python and C++? Answered

I want to learn python and C++ but I want a couple of good books to learn those with. What books do I need if I want to start?


In addition to books and in case you just start learning any programming, there is a nice online course on Udacity that's based on python https://www.udacity.com/course/cs101

But if you really only want to play around with Arduino then start right away, there's lots of material online.

It can get messy to try to learn two languages at the same time, but at some point you should learn programming basics also. It is more motivating to start with arduino and skip general introduction at first. General beginner courses are almost never done in C++, probably it's too difficult language. But I see people asking arduino questions on this site, where their main problem is that they don't understand basic constructs in coding.

What I want to say is that Arduino does not have prerequisites to start, but carry in mind that at some point you would largely benefit from taking a complete introductory course to programming.

RealPyhton is pretty good. It has lots of hands on "assignments" and comes with the answer scripts. It tries to teach in a practical way, glossing over technical things you don't really need to know and emphasizing real applications and little tips and shortcuts based on how people actually code.

I would probably choose one language, python is the obvious choice due to its simple syntax and structure, and become decently proficient before picking up a second language. That way you won't be trying to learn two ways to do one thing and when you move to C++ you will have an understanding of programming structure and logic.

I want to learn both so when I move to C++ and I can do arduino projects I may just go and buy a arduino book instead of C++ because I want to do more with my arduino and pi

Didn't say you couldn't learn both, just suggested learning one at a time. When you learn your first language you'll not only be learning that languages syntax and formatting but also how programming logic works, good coding practices (comment all the things), how to debug a program, etc. If ou were to throw an entirely different syntax and format on top of that I suspect it would take longer to learn than just learning them one after the other.

The nice thing about arduino is everything you need to learn it is available free on the web, in particular on their website, arduino.cc. If you buy a Python book like RealPython or For Dummies, and get a basic understanding of programming from that then you can learn Arduino without spending another penny (accept on Arduino components which is a little addiction unto itself :D). When I started Arduino I had taken one C++ class a few years prior in college and I have managed to do several Arduino projects, some with decent complexity, using only the Arduino website and Instructables.

Of course you could definitely just go straight to Arduino without any other programming experience and probably do fine but the way it's going to teach you might be a little rough if you don't have any prior programming experience. Also , if along the way you have any Arduino questions feel free to ask. It make take a day or two for me to get back to you but I'll definitely try my best to help.

I hate the name but C++ for dummies and python programming for dummies.
There good if you don't know much about the programmes.

ok thanks for the info I am going to probably skip on the C++ and get a book over arduino

Canadian dialect English spelling is a pain some words are spelled the same as US dialect English spelling and some words are spelled the same as Great Britain dialect English spelling.

Then there are words like prise and prize, both spellings are correct in Canadian dialect English.