[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AUDITORY] Query about Python software



Dear all, 

Many important points have been stressed in this thread already. The question ‘What do I start with?’ is ultimately reduced to ‘should I start with an extremely simple programming language or dive in a more useful one to me (and if so, which one)?’ 

While there are arguments for the first approach, my recommendation would be to dive into Python directly (see recommended material to start with):

- Python syntax is simple enough that things start making sense as quickly as with a simpler language (data types, for loops, if statements, ...)
- Once you have the basics, there are lots of topics to expend your horizon onto, both inside Python (Object-Oriented Programming) or using specialised libraries (Numpy, Scipy, Pandas, or the many mentioned before)
- Python is free (Matlab’s license is expensive)
- Python is well used both in academia and outside
- Python's growth in the past years has been outright impressive (see the curves in 2017 https://stackoverflow.blog/2017/09/06/incredible-growth-python/)
- Python community is incredibly active ; ranked 3rd most loved on StackOverflow in 2020 https://insights.stackoverflow.com/survey/2020 . That means if you have an issue, chances are high that someone answered it on StackOverflow. 

Once you have decided on the programming language, keep in mind that it is indeed a marathon. And just like when you start dancing: the basics are extremely important. Make sure to understand the import keywords of the language (def, import...), the data structures (dict, list, set...) and what they can do (ex: can you sum two dicts?), how to use functions and, later, classes, … rather than jumping in to use the latest cool machine learning framework. That step should only come after a few weeks/months or practice, otherwise you’ll waste a lot of time and wallow in frustration. 

A difficulty may be to install and use Python in the first place, but surely someone asked about that on StackOverflow ;)

Regards, 
— 
Alban, full-time python engineer.