teaching

Course materials, schedules, and resources for classes taught.

This page displays a collection of the courses that I have taught or am currently teaching. Each course has its own dedicated page with detailed information, including an overview of the topics covered and past editions of the courses.

2026

Computer Science Fundamentals - 6 ECTS

First Semester Andrea Augello

The course is targeted to Industrial and Information Engineering students, and aims to provide the foundation for the understanding of fundamental concepts for designing and programming computer applications using the Python language. During the course, techniques for software development using structured and object-oriented programming paradigms through the Python language will be addressed. The approach will be geared toward algorithm construction and data structuring and management. The course will give the student the tools to evaluate the correctness of proposed solutions and to analyze and evaluate the usefulness of existing solutions.

Artificial Intelligence 1 (Intelligenza Artificiale 1) - 9 ECTS

First Semester Prof. Salvatore Gaglio (head professor) and Andrea Augello (teaching assistant)

This course is targeted to Computer Engineering Master’s students, and provides an introduction to the fundamental concepts of artificial intelligence, including problem solving, search algorithms, logic programming, inductive learning, neural networks, and probabilistic reasoning. In this course, I have curated the practical exercises and labs to provide students with hands-on experience in implementing AI algorithms and techniques.

Operating Systems (Sistemi Operativi) - 9 ECTS

Second Semester Andrea Augello

This course is targeted to Computer Engineering students, and provides an introduction to the fundamental concepts of operating systems, including process management, threading, synchronization, and Linux scripts.

Machine learning techniques for cyber threat detection in distributed systems - 1 ECTS

Second Semester Andrea Augello

This course is targeted to Information and Communication Technology PhD students, and focuses on the use of machine learning to detect attacks in relevant cybersecurity domains. Topics covered in the course also include intelligent data analysis techniques for discovering critical events raced by the spread of false information, as well as the detection of malicious activities performed by humans in the internal perimeters of data centers.

Fundamentals of Computer Science and Programming (Fondamenti di Informatica e Programmazione) - 9 ECTS

Second Semester Andrea Augello

The course is targeted to Aerospace Engineering students, and aims to provide the foundation for the understanding of fundamental concepts for designing and programming computer applications using the Python language. During the course, techniques for software development using structured and object-oriented programming paradigms through the Python language will be addressed. The approach will be geared toward algorithm construction and data structuring and management. The course will give the student the tools to evaluate the correctness of proposed solutions and to analyze and evaluate the usefulness of existing solutions.

2022

The Linux Operating System - 3 ECTS

Online asynchronous course Andrea Augello

This course provides an introduction to the Linux operating system, covering basic commands, file system navigation, text processing, shell scripting, system administration, networking, and version control using Git.

Programming and Python Lab (Programmazione e Laboratorio Python) - 6 ECTS

Second Semester Andrea Augello

This course is targeted to Statistics for Data Analysis students, and provides the foundations for algorithmic thinking, and the basics of programming using Python. The course also covers the usage of Excel for basic statistical analysis and data visualization.


Master’s Thesis Supervision

2026

  • Progettazione e sviluppo di un algoritmo di apprendimento federato basato sul paradigma postive-unalbeled per il rilevamento dei malware - Davide Di Lorenzo (Co-supervised)
  • Progettazione e sviluppo di un sistema multilivello per il rilevamento di malware resistente a manipolazioni avversarie - Daniele Gaglio (Co-supervised)
  • Progettazione e sviluppo di un sistema interpretabile per l’analisi dei malware basata su grafi - Marco Anselmo (Co-supervised)

2025

  • Progettazione e sviluppo di un sistema di rilevamento di malware basato su tecniche di ensemble federated learning - Gioacchino Zangara (Co-supervised)
  • Progettazione e sviluppo di un sistema di rilevamento dei malware basato su paradigma positive unlabeled - Edoardo Terranova (Co-supervised)
  • Riconoscimento di malware in presenza di dati rumorosi - Mattia Sidoti (Co-supervised)
  • Progettazione di soluzioni basate sulla teoria dei giochi per il rilevamento malware - Marena Jestin (Co-supervised)

2024

  • Riconoscimento di Anomalie nel Traffico di Rete Generato da Sistemi IoT - Domenico Giosuè (Co-supervised)

2023

  • DCFL: Apprendimento federato con clustering dinamico dei client - Giulio Falzone (Co-supervised)
  • NEP-IDS: sistema di rilevamento delle intrusioni basato sull’errore di predizione dell’entropia - Partheepan Thiyagalingam (Co-supervised)