Programming Languages for the Humanities
Scientific Disciplinary Sector (SSD)
INF/01 - INFORMATICS
I semestre (Lingue e letterature straniere) dal Sep 26, 2022 al Dec 23, 2022.
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 know the elementary data structures, the basic programming constructs and the elementary abstraction techniques offered by the procedural and object-oriented programming paradigms; - will know and will be able to write programs that solve given problems, possibly exploiting available libraries and external modules, in particular for handling and analysing natural language textual resources.
Prerequisites and basic notions
Previous attendance of the first year course on "introduction to DH".
Introduction to programming
Introduction to Python
Data types (numbers, strings) and Variables
Sets and Dictionaries
Libraries for Natural Language Processing and handling of structured documents
Basic Principles of Object Oriented Programming
Visualizza la bibliografia con Leganto, strumento che il Sistema Bibliotecario mette a disposizione per recuperare i testi in programma d'esame in modo semplice e innovativo.
Classroom lectures with practical hands-on session with the computer.
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
Learning assessment procedures
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.
Correctness and functioning of the code
Complexity of the work carried out
Quality of the documentation
Quality of the oral discussion of the project
Criteria for the composition of the final grade
Weighted score based on the evaluation criteria