Introduction to Programming

Data Science and Advanced Analytics Master Program, NOVA IMS - Universidade Nova de Lisboa, 2018

The Introduction to Programming course unit aims at introducing the basics of programming in Python. The course is oriented to students that do not have any experience in computer programming, starting from the very basics of computation. However, the course will rapidly evolve towards advanced programming techniques and concepts. In this way, at the end of this course unit, the students will be able to effectively approach complex problems, typically characterized by vast amounts of data, programming efficient strategies to extract information and support decision-making processes. The course will cover the most useful elements in the Python Standard Library but also key libraries for the data science production pipeline. These include libraries such as Pandas, Scipy, Numpy, Matplotbib, Igraph, Scikit-learn, and Seaborn. During this course we will use Anaconda as the package repository, and Jupyter Notebooks (IPython) as the programming environment.

Learning to program in a new language can be challenging, and the best way to learn is through practice. In that sense, the instructors strongly recommend students to practice at home (exercises will be available) and to apply the new learning tools to problems they are passionate about. Try to use Lab time to discuss challenges with the Instructors your and make the most of the course.


  • Lubanovic, Bill. Introducing Python: modern computing in simple packages. “ O’Reilly Media, Inc.”, 2014
  • VanderPlas, Jake. Python data science handbook: essential tools for working with data. “ O’Reilly Media, Inc.”, 2016