Metodologie informatiche nelle discipline umanistiche
A.A. 2024/2025
Obiettivi formativi
1. Fornire agli studenti una comprensione approfondita delle metodologie informatiche applicate alle discipline umanistiche.
2. Sviluppare competenze pratiche nell'uso di linguaggi di programmazione e strumenti informatici rilevanti per l'analisi di dati umanistici.
3. Promuovere la capacità degli studenti di applicare concetti informatici in progetti di ricerca e analisi nelle loro discipline di studio.
4. Incentivare la collaborazione tra studenti per sviluppare progetti applicativi che integrino metodologie informatiche e discipline umanistiche.
2. Sviluppare competenze pratiche nell'uso di linguaggi di programmazione e strumenti informatici rilevanti per l'analisi di dati umanistici.
3. Promuovere la capacità degli studenti di applicare concetti informatici in progetti di ricerca e analisi nelle loro discipline di studio.
4. Incentivare la collaborazione tra studenti per sviluppare progetti applicativi che integrino metodologie informatiche e discipline umanistiche.
Risultati apprendimento attesi
Al termine del corso, gli studenti dovrebbero essere in grado di:
1. Applicare concetti informatici fondamentali alle discipline umanistiche.
2. Utilizzare linguaggi di programmazione per l'analisi e la gestione di dati umanistici.
3. Implementare strumenti di analisi testuale e linguistica nei loro progetti di ricerca.
4. Progettare e gestire database per supportare la ricerca umanistica.
5. Presentare in modo efficace i risultati delle analisi attraverso strumenti di visualizzazione dati.
6. Collaborare con i colleghi nello sviluppo di progetti che integrino metodologie informatiche e discipline umanistiche.
1. Applicare concetti informatici fondamentali alle discipline umanistiche.
2. Utilizzare linguaggi di programmazione per l'analisi e la gestione di dati umanistici.
3. Implementare strumenti di analisi testuale e linguistica nei loro progetti di ricerca.
4. Progettare e gestire database per supportare la ricerca umanistica.
5. Presentare in modo efficace i risultati delle analisi attraverso strumenti di visualizzazione dati.
6. Collaborare con i colleghi nello sviluppo di progetti che integrino metodologie informatiche e discipline umanistiche.
Periodo: Primo semestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento può essere seguito come corso singolo.
Programma e organizzazione didattica
Edizione unica
Responsabile
Periodo
Primo semestre
Programma
PARTE A
DH - Introduzione alle metodologie informatiche nelle discipline umanistiche (6 ore)
Cos'è l'informatica nella sua accezione disciplinare? Discuteremo dell'oggetto di studio, l'informazione, introducendone la teoria e la formalizzazione come quantità misurabile. A partire da qui vedremo come l'informazione entri in relazione con le macchine per il calcolo attraverso la nozione di codifica dell'informazione. L'idea di macchina calcolatrice ci introdurrà al concetto di automazione e di risoluzione algoritmica di problemi.
Passeremo quindi a discutere la definizione di informatica umanistica, mettendo in questione lo statuto delle discipline umanistiche in relazione alle tecnologie dell'informazione. Esamineremo i limiti di un'accezione meramente strumentale dell'informatica a servizio di progetti di digitalizzazione e catalogazione.
Ciò ci porterà ad affrontare il tema dell'Intelligenza Artificiale generativa e il modo in cui essa modifica lo statuto epistemologico stesso delle tecnologie dell'informazione in relazione ai processi culturali, e come ciò può cambiare il ruolo dell'intellettuale umanista e le pratiche delle discipline dell'uomo.
PY - Linguaggi di programmazione applicati alle discipline umanistiche (8 ore)
Entreremo qui nel merito delle tecnologie dell'informazione attraverso l'attività della programmazione di un calcolatore elettronico. Comprendere cosa sia un programma e in che modo la programmazione renda possibile l'automazione di compiti e processi consente infatti di comprendere più pienamente il modo in cui problemi e processi sono risolvibili con un approccio algoritmico. Saranno introdotti i concetti generali propri di diversi linguaggi di programmazione e nozioni più specifiche relative al linguaggio Python. Il modulo avrà solo parzialmente un carattere pratico attraverso numerosi esempi svolti in aula dal docente, ma sarà possibile compendiare l'insegnamento in aula con le attività del laboratorio Python proposte dal corso di laurea.
Affronteremo poi casi nei quali la programmazione può essere integrata con successo nel processo di ricerca in ambito umanistico, discutendo anche il modo in cui ciò cambia la prospettiva sulle fonti e sui dati.
DB - Gestione e visualizzazione dei dati (14 ore)
I dati e la loro disponibilità in grandi quantità sono fra i fattori abilitanti indispensabili delle più recenti conquiste tecnologiche nel campo delle scienze dell'informazione. Ci occuperemo dunque in prima istanza di comprendere cosa siano i dati e in cosa essi si distinguano dall'informazione. La scienza dei dati è prima di tutto processo di trasformazione dei dati in informazione, cosa questa che comporta l'utilizzo di modelli che definiscano le relazioni fra i dati e li collochino in un contesto interpretativo.
Attraverso specifici incontri seminariali svolti durante il corso si approfondirà in particolare il tema della modellazione concettuale dei dati, apprendendo i principi fondamentali che presiedono a un corretto ed efficace trattamento dei dati stessi.
Passeremo poi all'attività di analisi e visualizzazione dei dati, introducendo alcuni strumenti concettuali indispensabili a comprendere grafici e report statistici.
TA - Principi e strumenti di analisi testuale e linguistica (16 ore)
Il testo, in particolare il testo scritto, è da sempre una fonte primaria nella ricerca umanistica, ma anche nelle professioni che vivono di testo, dall'ambito della comunicazione a quello dell'informazione, dall'editoria all'insegnamento. Vedremo come le tecnologie dell'informazione possono ampliare enormemente gli strumenti a disposizione dell'umanista per analizzare la complessità e la stratificazione del testo scritto. Comprenderemo cosa sia il testo dal punto di vista della macchina e come trarne informazione senza disporre delle competenze linguistiche e delle conoscenze in possesso del lettore umano.
Capiremo quindi come trasformare il testo in un oggetto dell'attività di automazione e quali compiti formali le macchine possono realizzare col materiale testuale.
Sulla scorta di queste competenze vedremo quindi alcune applicazioni, anche di uso comune, che utilizzano questi metodi, spaziando dalle banche dati della linguistica dei corpora al modo in cui il nostro telefono ci suggerisce come completare i messaggi, ai motori di ricerca, e infine all'idea di macchine che generano il linguaggio e il testo.
PARTE B
PR - Progetti applicativi nell'ambito degli studi umanistici (16 ore)
Nell'ultima parte del corso metteremo a frutto le competenze acquisite realizzando alcuni semplici progetti di ambito umanistico utilizzando le tecnologie dell'informazione. In particolare, introdurremo strumenti di AI generativa, discutendone l'utilizzo, i limiti, i rischi e le potenzialità, per poi utilizzarli per portare a termine obiettivi che richiedano di integrare conoscenze umanistiche e competenze tecnologiche.
Discuteremo anche di come progettare e organizzare un'attività di studio o ricerca facendo uso attivo e critico di queste tecnologie.
DH - Introduzione alle metodologie informatiche nelle discipline umanistiche (6 ore)
Cos'è l'informatica nella sua accezione disciplinare? Discuteremo dell'oggetto di studio, l'informazione, introducendone la teoria e la formalizzazione come quantità misurabile. A partire da qui vedremo come l'informazione entri in relazione con le macchine per il calcolo attraverso la nozione di codifica dell'informazione. L'idea di macchina calcolatrice ci introdurrà al concetto di automazione e di risoluzione algoritmica di problemi.
Passeremo quindi a discutere la definizione di informatica umanistica, mettendo in questione lo statuto delle discipline umanistiche in relazione alle tecnologie dell'informazione. Esamineremo i limiti di un'accezione meramente strumentale dell'informatica a servizio di progetti di digitalizzazione e catalogazione.
Ciò ci porterà ad affrontare il tema dell'Intelligenza Artificiale generativa e il modo in cui essa modifica lo statuto epistemologico stesso delle tecnologie dell'informazione in relazione ai processi culturali, e come ciò può cambiare il ruolo dell'intellettuale umanista e le pratiche delle discipline dell'uomo.
PY - Linguaggi di programmazione applicati alle discipline umanistiche (8 ore)
Entreremo qui nel merito delle tecnologie dell'informazione attraverso l'attività della programmazione di un calcolatore elettronico. Comprendere cosa sia un programma e in che modo la programmazione renda possibile l'automazione di compiti e processi consente infatti di comprendere più pienamente il modo in cui problemi e processi sono risolvibili con un approccio algoritmico. Saranno introdotti i concetti generali propri di diversi linguaggi di programmazione e nozioni più specifiche relative al linguaggio Python. Il modulo avrà solo parzialmente un carattere pratico attraverso numerosi esempi svolti in aula dal docente, ma sarà possibile compendiare l'insegnamento in aula con le attività del laboratorio Python proposte dal corso di laurea.
Affronteremo poi casi nei quali la programmazione può essere integrata con successo nel processo di ricerca in ambito umanistico, discutendo anche il modo in cui ciò cambia la prospettiva sulle fonti e sui dati.
DB - Gestione e visualizzazione dei dati (14 ore)
I dati e la loro disponibilità in grandi quantità sono fra i fattori abilitanti indispensabili delle più recenti conquiste tecnologiche nel campo delle scienze dell'informazione. Ci occuperemo dunque in prima istanza di comprendere cosa siano i dati e in cosa essi si distinguano dall'informazione. La scienza dei dati è prima di tutto processo di trasformazione dei dati in informazione, cosa questa che comporta l'utilizzo di modelli che definiscano le relazioni fra i dati e li collochino in un contesto interpretativo.
Attraverso specifici incontri seminariali svolti durante il corso si approfondirà in particolare il tema della modellazione concettuale dei dati, apprendendo i principi fondamentali che presiedono a un corretto ed efficace trattamento dei dati stessi.
Passeremo poi all'attività di analisi e visualizzazione dei dati, introducendo alcuni strumenti concettuali indispensabili a comprendere grafici e report statistici.
TA - Principi e strumenti di analisi testuale e linguistica (16 ore)
Il testo, in particolare il testo scritto, è da sempre una fonte primaria nella ricerca umanistica, ma anche nelle professioni che vivono di testo, dall'ambito della comunicazione a quello dell'informazione, dall'editoria all'insegnamento. Vedremo come le tecnologie dell'informazione possono ampliare enormemente gli strumenti a disposizione dell'umanista per analizzare la complessità e la stratificazione del testo scritto. Comprenderemo cosa sia il testo dal punto di vista della macchina e come trarne informazione senza disporre delle competenze linguistiche e delle conoscenze in possesso del lettore umano.
Capiremo quindi come trasformare il testo in un oggetto dell'attività di automazione e quali compiti formali le macchine possono realizzare col materiale testuale.
Sulla scorta di queste competenze vedremo quindi alcune applicazioni, anche di uso comune, che utilizzano questi metodi, spaziando dalle banche dati della linguistica dei corpora al modo in cui il nostro telefono ci suggerisce come completare i messaggi, ai motori di ricerca, e infine all'idea di macchine che generano il linguaggio e il testo.
PARTE B
PR - Progetti applicativi nell'ambito degli studi umanistici (16 ore)
Nell'ultima parte del corso metteremo a frutto le competenze acquisite realizzando alcuni semplici progetti di ambito umanistico utilizzando le tecnologie dell'informazione. In particolare, introdurremo strumenti di AI generativa, discutendone l'utilizzo, i limiti, i rischi e le potenzialità, per poi utilizzarli per portare a termine obiettivi che richiedano di integrare conoscenze umanistiche e competenze tecnologiche.
Discuteremo anche di come progettare e organizzare un'attività di studio o ricerca facendo uso attivo e critico di queste tecnologie.
Prerequisiti
Non è necessaria una precedente esperienza di programmazione, poiché il corso include una sezione introduttiva sulla programmazione, in particolare sul linguaggio Python, nè altre specifiche competenze se non motivazione e interesse per l'applicazione delle metodologie informatiche nei campi umanistici.
Metodi didattici
L'insegnamento è erogato in forma di lezioni frontali con ampio ricorso a esempi e materiali di supporto in forma di notebook Python. E' previsto l'uso di slide e materiali didattici che saranno progressivamente resi disponibili sul sito web dell'insegnamento in piattaforma Ariel e sul repository GitHub dell'insegnamento (https://github.com/afflint/midh).
Materiale di riferimento
L'insegnamento si avvale principalmente di appunti, notebook e materiali forniti dal docente e pubblicati sul sito Ariel dell'insegnamento. Per approfondimenti, è possibile integrare tali materiali con alcune letture suggerite:
- The Python Tutorial, disponibile online all'indirizzo https://docs.python.org/3/tutorial/index.html
- Paolo Atzeni, Stefano Ceri, Piero Fraternali, Stefano Paraboschi, Riccardo Torlone, BASI DI DATI, McGraw Hill, 2023 (Capitolo 7 sulla progettazione concettuale)
- Tony Gaddis, Introduzione a Python - 5/Ed., Pearson, 2022
- J. Glenn Brookshear, Dennis Brylow, Informatica - 13/Ed. Una panoramica generale, Pearson, 2020
- Sergio Bolasco, L'analisi automatica dei testi, Carocci, 2021
- The Python Tutorial, disponibile online all'indirizzo https://docs.python.org/3/tutorial/index.html
- Paolo Atzeni, Stefano Ceri, Piero Fraternali, Stefano Paraboschi, Riccardo Torlone, BASI DI DATI, McGraw Hill, 2023 (Capitolo 7 sulla progettazione concettuale)
- Tony Gaddis, Introduzione a Python - 5/Ed., Pearson, 2022
- J. Glenn Brookshear, Dennis Brylow, Informatica - 13/Ed. Una panoramica generale, Pearson, 2020
- Sergio Bolasco, L'analisi automatica dei testi, Carocci, 2021
Modalità di verifica dell’apprendimento e criteri di valutazione
La prova d'esame si svolge in forma scritta, verte sull'intero programma ha una durata indicativa di un'ora. La prova è composta da una parte A con domande a risposta chiusa e da una parte B con esercizi e/o domande aperte. Per poter sostenere la prova è necessario iscriversi ad una delle sessioni d'esame indicate da calendario. La prova scritta è valutata in trentesimi e tiene conto dei seguenti parametri: grado di conoscenza degli argomenti, capacità di applicare le conoscenze alla risoluzione di esercizi, completezza delle risposte, correttezza dei ragionamenti nello svolgimento degli esercizi. Se si consegue un voto superiore o pari a 25/30 è necessario sostenere una discussione orale per integrare il voto della prova scritta. Se si consegue un voto inferiore a 25/30 la discussione orale NON è possibile. Il mimino voto sufficiente a superare la prova è 18/30. Per chi dovesse sostenere l'esame per solo 6 CFU, la prova d'esame verterà esclusivamente sulla PARTE A del programma.
Docente/i
Ricevimento:
Su appuntamento tramite email
Online OR Via Celoria 18 - Stanza 7012
Ricevimento:
Su appuntamento. Il colloquio si svolgerà online dopo aver contattato il docente per posta elettronica.
Online. In caso di appuntamento di persona, Dipartimento di Informatica, via Celoria 18 Milano, Stanza 7012 (7 piano)