Programming Languages for the Humanities (2020/2021)

Course code
4S008107
Name of lecturer
Marco Rospocher
Coordinator
Marco Rospocher
Number of ECTS credits allocated
6
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Location
VERONA
Period
I semestre (Lingue e letterature straniere) dal Sep 28, 2020 al Jan 9, 2021.

Lesson timetable

Go to lesson schedule

Learning outcomes

The course aims to provide students with the basic skills for programming a computer to solve problems. At the end of the course the students: - will be able to use the main functionalities of the UNIX command line (e.g., filters, regular expressions) to manipulate data flows; - will know the elementary data structures, the basic programming constructs and the elementary abstraction techniques offered by the object-oriented programming paradigm; - will know and will be able to write programs that use the main libraries for the analysis of textual resources and for the manipulation of documents annotated with a markup language.

Syllabus

The course will be given ONLINE only, in live streaming. Video-recordings of the lectures will be provided on the University e-Learning platform (Moodle)..

Introduction to programming
Introduction to Python
Data types (numbers, strings) and Variables
Decisions
Iterations
Functions
Lists
Sets and Dictionaries
Files
Libraries for Natural Language Processing and handling of document markup
Basic Principles of Object Oriented Programming


Materials and resources will be given out during the course to support the lessons, and will be uploaded on the course's Moodle page.
In addition to the suggested textbook, the following resources are recommended as supplementary materials:

- How to Think Like a Computer Scientist (Learning with Python): http://openbookproject.net/thinkcs/python/english3e/
- Python 101: http://python101.pythonlibrary.org/index.html
- Introduction to Jupyter Notebooks: https://programminghistorian.org/en/lessons/jupyter-notebooks

Reference books
Author Title Publisher Year ISBN Note
Cay Horstmann; Rance D. Necaise Concetti di informatica e fondamenti di Python (Seconda edizione) (Edizione 2) Maggioli Editore 2019 9788891635433

Assessment methods and criteria

Attendance and student contribution to class is strongly encouraged.
There is no difference in the program, materials and examination between attending and non-attending students

The exam consists in preparing a Python programming project and its discussion with the teacher. The discussion may take place online for all students who request it in the 2020/21 academic year.