Seminari Python @Sociologia

Relatore : David Leoni david.leoni@unitn.it

Docente proponente: Agnese Vitali

Edizione: 2022 Aprile/Maggio/Giugno

Sede: Dipartimento di Sociologia e Ricerca Sociale, Università di Trento Via Giuseppe Verdi 26, Trento

Iscrizione: vedere seminari sociologia

Calendario: link

Parte A: dal 6 aprile al 5 maggio 2022 Locandina | VEDERE MOODLE (richiede account unitn)

Parte B: dal 6 maggio al 27 maggio 2022 Locandina | VEDERE MOODLE (richiede account unitn)

Materiale

Il materiale presente in questa pagina è stato tutto trasferito sul sito softpython.it

Eventuali link a materiale non mio li trovate nella pagina Riferimenti su SoftPython

Quando

Tipicamente i seminari si svolgono in primavera, possibilmente in presenza oppure online in caso di pandemie.

Chi non potesse partecipare ai seminari, potrebbe essere interessato a iscriversi al modulo d’informatica della summer school in data science (contatto: supportostudentipovo@unitn.it)

Esami passati

7 giugno 2022 - solo parte B (non c’erano iscritti per la A), con due challenge da softpython e due esercizi nuovi B1 Cure termali B2 Incartati B3 Il Trader B4 Euregio FamilyPass

  • NOTA: alcuni esercizi pubblicati sono leggermente diversi da quelli proposti in sede d’esame

4 maggio 2022 (parte A): ho proposto delle challenge da softpython: A1 Nozze di platino A2 La ricetta della nonna A3 monte ordinato A4 Se magna

  • NOTA 1: i prossimi appelli potreste trovare esercizi completamente nuovi

  • NOTA 2: ho aggiornato i testi su softpyhton, potrebbero essere leggermente diversi rispetto a quelli proposti all’esame

  • 21 giugno 2019 (6 crediti) : Testo + soluzioni

  • 5 giugno 2019 (6 crediti) : Testo + soluzioni

  • AA 2018/19: Vedere esami seminari Fondamenti Python (3 crediti, corrisponde al primo modulo) e Algoritmi Python 2018 (3 crediti, corrisponde al secondo modulo). Differenze con anno corrente:

    • l’esame sarà un po’ più difficile

    • nel primo modulo non ci saranno funzioni nè assert

    • nel secondo modulo ci saranno anche esercizi su Numpy e Pandas

Appelli

Per ciascun seminario (modulo 1 e 2), avete a disposizione due appelli:

  • Mercoledì 4 maggio 2022 15:00-18:00 lab 3 (modulo 1)

  • martedì 7 giugno 9:00-12:00 lab 3 (modulo 1 o 2)

  • giovedì 23 giugno 9:00-12:00 lab 3 (modulo 1 o 2)

  • venerdì 8 luglio 9:00-12:00 lab 3 (modulo 1 o 2)

Ricordo che l’ultima lezione del Modulo 2 sarà venerdì 27 maggio 8:30-11:00.

Prenotazione: entro una settimana prima dell’appello mandate mail a david.leoni@unitn.it indicando quale parte volete dare.

Gli appelli concessi per parte sono due perchè gli studenti che mi chiedono il terzo appello di solito sono anche quelli che arrivano ai primi due e palesemente non hanno alcuna idea di come si scriva un programma. Esercizi da fare ne avete e sicuramente anche un cronometro, quindi penso potete ben valutare da voi quando è il caso di presentarsi. Per dare un idea, mi aspetto che per ciascuno esercizio di difficoltà tre stelle su SoftPython ci mettiate max 30 min. Vedere anche sezione esami passati sul mio sito.

Modalità:

Per entrambe le parti vi chiederò di implementare del codice, per il quale riceverete un voto in base alla percentuale di correttezza. Se qualcosa non funziona in qualche linea, sentitivi liberi di metterci prima una print.

L’esame è open book: durante l’esame avrete accesso sui computer di laboratorio a tutto il sito softpython e documentazione di python. Non sarà consentito portare stampe / appunti.

Editor: Come editor per l’esame useremo Jupyter.

Precondizione esame modulo 1: Per affrontarlo decentemente dovete aver capito la teoria. A tal proposito, in SoftPython ci sono una quantità spropositata di sezioni intitolate “Domande” (esempio) tipo «Guarda i seguenti frammenti di codice, e per ciascuno cerca di indovinare quale risultato produce (o se da errore)». Non sono lì a caso: le ho aggiunte perchè ho notato che molto spesso ci si porta all’esame dubbi che poi risultano in tempi lunghissimi passati a debuggare il codice. Il modo corretto per rispondere a quelle domande è prima scrivere (scrivere con le dita, non pensare!) da qualche parte quello che ritenete sia il risultato che verrà prodotto, e POI provare ad eseguire il codice per sincerarsi che il risultato pensato sia corretto. Per quanto semplici possano sembrare, vi garantisco che avrete parecchie sorprese.

Se fallite UNA volta il modulo 1, potrete ridarlo successivamente, quel giorno mi comunicherete se vorrete dare il modulo 1 o il modulo 2, vi darò testi diversi a seconda della risposta. Se decidete l’esame del modulo 2 e lo passate vi riconoscerò i crediti anche per il modulo 1 (posto che foste iscritti al seminario corrispondente). NOTA: se non avete capito bene il materiale del modulo 1, vi garantisco che non riuscirete a passare il modulo 2!

Se fallite DUE volte il modulo 1: non riceverete alcun credito e non potrete dare l’esame per il secondo modulo.

Precondizione esame modulo 2: per affrontarlo serenamente dovrete aver capito bene il primo modulo, per cui se non avete ottenuto risultati soddisfacenti al primo appello, dovrete darvi una mossa!

Se vi prenotate ad un appello e non vi presentate: prenderete 0 per quell’appello, che verrà scalato dagli appelli disponibili. Per essere chiari, non accetto scuse: se vi è atterrato un asteroide sul condominio, vi prendete 0 lo stesso.

Appelli extra / orali / etc: se siete a corto di appelli, potete provare a supplicarmi: se siete fortunati, potrei concedervi l’appello extra. Se siete sfortunati, potrei avere altri impegni e non essere in grado di donarvi il mio tempo, al che vi consiglierò di provare a fare i due moduli d’informatica alla summerschool in data science questa estate. Sono tenuti dal sottoscritto, con medesimi contenuti e divisi in 3 crediti ciascuno.

Istruzioni per esame

Se possibile sarà in presenza, altrimenti online.

Ricevimento

Per orari / luoghi ricevimento, vedere qui

Se per caso avete progetti in altri corsi o interesse personale per cui volete usare Python, sono disponibile a dare indicazioni.

In particolare, posso offrire aiuto per

  • Installazione

  • Comandi Python base

  • Errori logici

  • Lettura / conversione dati

  • Formati (CSV / JSON / XML / HTML)

  • Cercare dataset

  • Tutorial

  • Licenze dati & software

Difficile aiutare per

  • librerie particolari

  • statistiche avanzate

  • visualizzazioni incredibili in 3d