I've asked many people this question and consulted loads of programming resources across the web. When it comes down to it, what matters most when learning a language is what you hope to do with it. AKA your goals.
For me, I have a few end goals. Sure, I would like to be more employable in places like tech startups. I also would love to be able build an entire website from scratch without needing to rely on WordPress themes or the help of a more tech-savvy friend.
But even more I want to learn the fundamentals of programming. I want to actually understand what is going on. And then once I master one language, move onto others.
Looking At The Research
First things first, I confided in several discussions on Quora. Again, these theme of end goals kept reappearing. But what also kept reappearing was Python. You can see on this thread that Python is mentioned repeatedly. Why? Because it's a “clean language.” It's very comparable to our English language and thus easy to comprehend.
Confiding In Other Resources
Full disclosure: My boyfriend is a current Computer Science student with years of programming experience. Obviously, I put a lot of weight in his opinion. He recommended that I start off with Python. Why? For the same reasons. It's easy to read. It's digestible. It's a good starting point.
I also found other bloggers that recommended starting with Python. As it says in the article,
First of all, you will need to learn what programming means. This will be done along learning your first language: Python. There are many languages you could start with but this one:
– is available on every platform
– has a great community ready to help newcomers
– can be used in small and large projects
– is well documented
– is free!
What Ultimately Led Me To Choose Python
If both Udacity and MIT are using Python for beginners, it must mean it's a good language to start with—right?
(Not to mention, I also just came across a “Programming for Everybody” course on Coursera that uses Python, too, as the language of instruction.)
So, given all of these reasons and the fact I have already dabbled a bit in Python, I am going to begin learning Python.
Want to master Python?
Then download my list of favorite Python learning resources.