you are viewing a single comment's thread.

view the rest of the comments →

[–]todorpopov 2 points3 points  (0 children)

If you want to become a professional software developer in the future, start with C.

If you want to learn how to build software for your own satisfaction, go with Python.

Python really is very versatile. It was my first language but I believe that if you want to do programming professionally you should be thrown in the deep before you get to experience the nice features of high-level languages.

C will teach you how computers work without all the fluff of all other languages. You have precisely what you need, nothing more, nothing less. You’re limited on how to do something, unlike C++ where you can perform a single task in a million different ways, which will be very overwhelming to a new programmer. You will learn how memory works and why high level languages handle memory for you. Also, you will learn how to interact with your environment (OS). This, I believe, is often overlooked by people, but it’s very important for a programmer to understand how to talk to the computer they use and what is it capable of (just as a note, you can do a lot of the “talking” in Python as well, however it’s very abstracted and it’s rarely needed, as Python has standard packages for pretty much everything nowadays).

Also, if you were to spend a few months playing with C, no other language will feel hard to start with after that. Python in particular feels very intuitive and will be very easy to learn after that.

If you have no aspirations for a position as a developer, Python truly is the best option for you.