Seminari
Nei locali del Polo F Etruria,
in
Pisa Via Diotisalvi n. 5.
orario:
- mattina: 09:30 - 12:00
- pomeriggio: 14:30 - 18.50
Segue il Programma dei seminari:
Registrazione partecipanti
Si ricorda che per questioni organizzative e per la gestione degli spazi occorre registrarsi su:
https://linuxday2019.eventbrite.it
Programma
Seminari (Mattina)
Reception, saluti ed introduzione ai lavori
Durata 135 minuti
Strumenti informatici liberi ed aperti per l'Ingegneria
Giuseppe Chellini Giulio Di Graziano Carlo RestaPresentazioni tecniche e pratiche su: Python e Julia, Blender e altri software utili per l'ingegneria e non solo. Si parlerà, inoltre, di casi di successo del software libero.
Seminari Pomeriggio (Traccia A)
Reception, saluti ed introduzione ai lavori
Durata 30 minuti
R Graphics
Alessandra Santi
La rappresentazione grafica permette un'analisi di sintesi
ed intuitiva dei dati. Già in R base ci sono strumenti di
rappresentazione grafica di alto livello. A questi si aggiungono altri
specifici pacchetti. Partendo dalla funzione plot() di R base, vedremo
nella pratica come costruire grafici di vario tipo.
Livello: principiante/intermedio
Durata 30 minuti
Gestire la virtualizzazione su Linux tramite libvirt
Matteo Bernardini
Ad oggi sono disponibili su Linux moltissimi sistemi di
virtualizzazioni diversi: libvirt e' il tentativo di unificare la
gestione delle macchine virtuali e container tramite un'unica
interfaccia a prescindere dai sistemi sottostanti. Il talk si
concentrera' su una descrizione del backend e sul suo utilizzo insieme
al sistema di virtualizzazione fisica piu' diffuso, qemu (con kvm),
con esempi di utilizzo dei frontend (virsh e virt-manager).
Livello: avanzato
Durata 30 minuti
AI Security Failure
Giuseppe Augiero
Molti credono che l’AI offrirà nuove e interessanti
soluzioni per garantire maggiore robustezza e un livello di
cybersecurity più elevato. Sono in pochi, invece, coloro che
comprendono che l’intelligenza artificiale sarà anche il
vettore che permetterà di aumentare la superficie di attacco
e offrirà nuove insicurezze da dover gestire ed arginare.
Livello: avanzato
Durata 30 minuti
Analisi di traffico criptato/malware con nDPI
Luca Deri
Negli ultimi anni il traffico di rete e’ diventato quasi tutto criptato,
ed i metodi di analisi per la rilevazione di malware e protocolli di rete non funzionano più.
Senza usare metodi brutali e poco utilizzabili su larga scala quale la decodifica del traffico
criptato (es. con tecniche di man-in-the-middle) è possibile comunque analizzare il traffico di rete.
Questo intervento illustra come in nDPI v3, libreria open source per il DPI (Deep Packet Inspection),
sia possibile analizzare il traffico di rete criptato (ad esempio TLS o SSH), estrarre informazioni
circa il client/server ed il servizio contattato, e rilevare la presenza di malware dietro una
comunicazione TLS senza bisogno di decodificare il traffico di rete. In sostanza verrà mostrato
come è possibile conciliare privacy e monitoraggio del traffico usando strumenti open source.
Livello: avanzato
Durata 15 minuti
fretboard - Learning guitar fretboard notes, scales and chords on a colorful ANSI terminal
Tommaso Cucinotta
Fretboard è un programma open-source multi-piattaforma scritto in C che visualizza
scale e accordi musicali per chitarra e ukulele in modalità testuale, sfruttando
le estensioni relative ai colori disponibili su un qualsiasi terminale ANSI,
come ad es. gnome-terminal su Linux, o cmder su Windows. Come si può intravvedere
da un esempio di output (generato per un accordo di Mi minore - Em)...E minor
chord as output by program
... fretboard non si limita a visualizzare tutte le posizioni disponibili per un
dato accordo, come fanno già decine di siti on-line, ma il programma è in grado di
evidenziare visivamente tutte le posizioni sulla tastiera dello strumento dove si
collocano le note (ed esattamente quali note) di ciascun accordo o scala, permettendo
la ricerca della combinazione ottimale in ogni condizione (ad es., si può facilmente
verificare che facilitazioni si ottengono mutando eventualmente una o più corde).
Nel talk parlerò delle motivazioni che mi hanno portato a scrivere un programma di
questo tipo, farò una piccola demo sul suo utilizzo, e mostrerò come estendere il
programma con ulteriori accordi o aggiungendo un'accordatura non-standard dello
strumento, modificando il codice sorgente e ricompilando il programma dal vivo.
Livello: principiante
Durata 15 minuti
L’importanza di una community
GDG Team Giovanni Bartolomeo, Diana Bernabei e Chiara Corrado
Cos'è il Google Developer Group Pisa? Cosa fa una community
e perché è importante farne parte?
Google, ma non solo, in questi anni ha più volte dimostrato il
suo interesse nel supporto delle community, della diffusione
gratuita della conoscenza e dell'incontro di appassionati.
Durante questa breve presentazione cercheremo di dimostrare
il perché di un così crescente interesse nelle community
e l'importanza che esse rappresentano nel territorio.
Livello: principiante
Durata 30 minuti
No Free Lunch Theorem: Machine Learning 101
Leonardo Dipilato
Il No Free Lunch Theorem è un teorema che afferma che non
esistono algoritmi migliori di tutti gli altri in tutti i casi,
rendendo necessario per chiunque lavori con il Machine
Learning avere una vista di insieme per sapere come
approcciare un dato problema.
In questo talk esploreremo alcuni modelli di natura ben
diversa per capire di quali tipi di problemi si possono occupare.
Livello: principiante
Seminari Pomeriggio (Traccia B)
Reception, saluti ed introduzione ai lavori
Durata 30 minuti
Sistemi ridondati e business continuity (File Systems,Database,Servizi TCP/IP)
Fabrizio De Massis
Nell'attuale mondo interconnesso è quasi intollerabile un blocco dei
servizi o la perdita dei dati.
Verranno presentate soluzioni che in ambiente virtuale propritario
(vmware), privo di storage condiviso, permettono la realizzazione di
sistemi fault-tolerant utilizzando soluzioni opensource quali:
FreeNas dotato di replica del filesystem ZFS (FreeBSD);
Percona Database, mediante il quale è possibile allineare in tempo
reale istanze database Mysql (Linux);
keepalived, una soluzione VRRP per Linux che permette la migrazione
automatica di un IP virtuale su sistemi linux privi di dati (application
server, relay di posta);
OpnSense firewall (FreeBSD).
Verranno forniti esempi di configurazione.
Livello: avanzato
Durata 30 minuti
Come diventare sviluppatori open source
Aldo D'Aquino
Un talk motivazionale, che racconta l'esperienza di un ragazzo che,
un po' per gioco e un po' per esigenza, ha realizzato un semplice tool per
sviluppatori, che in un anno ha superato le sue aspettative raggiungendo
oltre 100 download giornalieri. Durante questo talk vi parlerà di come si
è ritrovato a portare avanti un progetto open source, quali sono state le
difficoltà e cosa ha imparato, dando spunti concreti per creare nuovi progetti.
Livello: principiante
Durata 30 minuti
Catturare il traffico delle app Android senza root
Emanuele Faranda
Ho installato una nuova app sul cellulare. E' dannosa? Invia i miei dati
personali a qualcuno? La risposta sta nei pacchetti di rete.
Molti pensano che per catturare il traffico su android à la tcpdump è
necessario rootare il telefono. In questo talk spiegerò come (ab)usare
il VPNService android per catturare in maniera trasparente i pacchetti
sul dispositivo senza root.
Presenterò inoltre un'app open source che ho sviluppato per visualizzare
in tempo reale i pacchetti catturati in wireshark e ntopng.
Livello: avanzato
Durata 30 minuti
Cosa ci dicono le reti (in Python)
Pietro Battiston
In questo talk vedremo come il linguaggio Python viene utilizzato per
caricare, visualizzare, simulare ed analizzare reti economiche e
sociali.
Il talk è accessibile a chiunque, nel senso che sarà dato più peso alle
potenzialità ed a ciò che si può derivare da dati network che
all'aspetto della programmazione.
In ogni caso per seguire passo-passo i comandi utilizzati sarà
sufficiente una conoscenza basilare di Python.
Livello: principiante
Durata 15 minuti
Mycroft, l'assistente vocale open-source per Raspberry
Agostino Mascitti
Gli assistenti personali vocali hanno avuto negli ultimi
anni grande diffusione per la loro praticita' e reattivita'.
Testimoniano la crescente popolarita' Amazon Alexa e Google Home.
Tuttavia, entrambe le piattaforme sono basate su servizi fruibili solo
in remoto, con implicazioni sulla privacy e la sicurezza. Mycroft (https://mycroft.ai/),
invece, e' un assistente personale open-source, pensato per essere usato nelle case di
chiunque abbia un Raspberry e voglia di costruire qualcosa con le proprie mani, senza
pero' dovere necessariamente avere competenze informatiche. Questo talk dimostrativo
introduce Mycroft e presenta alcuni concetti base sul suo funzionamento.
Livello: principiante
Durata 30 minuti
Generazione di codice in Go
Massimiliano Ghilardi
Generare codice significa "programmi che scrivono altri programmi".
In Go è leggermente piu' facile che in molti altri linguaggi, ma resta
comunque un argomento avanzato.
Prendendo in prestito due concetti da linguaggi in cui la generazione di
codice e' la norma, mostreremo una tecnica interattiva e divertente per
manipolare il codice sorgente Go da programma.
Con appena qualche carattere in piu' rispetto ai normali sorgenti
e usando un interprete Go apposito, vedremo come creare, modificare
e stampare alberi sintattici (AST) anche complicati.
Questo ci permettera' di automatizzare compiti laboriosi, come la
scrittura di codice ripetitivo, in modo molto piu' facile delle
alternative e senza dover imparare un altro linguaggio oltre al Go.
Livello: avanzato
Durata 30 minuti
Creare un interprete in Go
Massimiliano Ghilardi
Il Go promette di essere un linguaggio di programmazione
facile da imparare, da usare e soprattutto da leggere.
Mettiamolo alla prova con un compito non banale: scrivere un interprete.
Vedremo come usare la libreria standard per realizzare un interprete Go,
e come alcune delle funzionalita' disponibili (reflection, il parser
standard Go) siano essenziali per semplificare il compito, nonostante
abbiano alcune limitazioni.
Per i piu' avventurosi, vedremo anche una tecnica avanzata per rendere
molto piu' veloce l'interprete.
Livello: avanzato