News n. 180 – Corsi di argomento informatico

La Sezione INFN di Roma organizza due corsi di argomento informatico
sul sistema operativo Linux e sul linguaggio Python ai quali potra’
partecipare anche il personale delle altre Strutture INFN.

Entrambi i corsi si svolgeranno presso la sezione INFN di Roma,
nell’aula A del Dipartimento di Fisica (Edificio Marconi).

Il corso su Linux si articolera’ in due incontri, i giorni 17 e 18 marzo
dalle 10 alle 13.
Il prerequisito per seguire il corso e’ una minima conoscenza di Linux
che puo’ essere quella che possiede un comune utilizzatore (uso della
shell e delle principali applicazioni). Per alcuni argomenti (5 e 7) e’
richiesta una conoscenza di base del linguaggio C.

Il corso su Python sara’ invece composto di quattro incontri, nei
giorni dal 24 al 27 marzo dalle 10 alle 12.

Il corso di Python parte dalle basi del linguaggio sino alla
programmazione ad oggetti passando per la descrizione dei moduli per il
calcolo scientifico; non sono richieste capacita’ di programmazione; e’
utile avere una minima familiarita’ con editor di testo e utilizzo delle
shell di comando, come bash.

Potete trovare i programmi in allegato.

Il numero di posti disponibili e’ limitato a 35.
Le iscrizioni dovranno pervenire entro il 10 marzo per il corso di Linux
ed entro il 17 marzo per il corso di Python all’indirizzo e-mail:
elisabetta.disilvestro@roma1.infn.it

Cordiali saluti,

Elisabetta Di Silvestro
Responsabile Locale della Formazione

**********************************************************************

Corso Avanzato di Linux
Sezione di Roma
17-18 Marzo 2003
Docente Dr.G.Organtini

Il prerequisito per seguire il corso una minima conoscenza di Linux che
pu essere quella che possiede un comune utilizzatore (uso della shell e
delle principali applicazioni).Per alcuni argomenti (5 e 7) richiesta
una conoscenza di base del linguaggio C.

1)Amministrazione del sistema:processi,utenti,acl,demoni
(init,xinetd,syslog)

2)Gestione delle variabili di ambiente

3)Pianificazione dei compiti di sistema con cron, at e batch

4)Shell script ed introduzione alle Regular Expressions

5)Interazioni tra processi:condivisione della memoria,uso dei
segnali,uso del sockets per applicazioni client-server

6)Il kernel di Linux: componenti e ricompilazione

7)Principio di funzionamento dei device drivers

8)Sistemi multi boot.

L’elenco degli argomenti indicativo.

Visto il tempo a disposizione,gli argomenti saranno sviluppati secondo
l’interesse dell’utenza.

***********************************************************************

Python, un linguaggio per la ricerca scientifica

Dr. Federico Nati
24-27 Marzo 2003

Sommario

Python, un linguaggio per la ricerca scientifica

Dr. Federico Nati
24-27 Marzo 2003

Sommario

Python è un linguaggio Open Source che si sta diffondendo rapidamente in
numerosi ambiti, tra cui quello scientifico. Il suo utilizzo si sta
consolidando grazie alle caratteristiche di semplicità, eleganza,
modernità, integrazione ed estendibilità. Questo fa del Python un
candidato ideale per applicazioni scientifiche quali analisi dati,
simulazioni, grafici, manipolazione algebrica, e così via; anche a
discapito dei numerosi software proprietari che molti, persino
nell’ambito della ricerca universitaria, ancora ritengono essere una
risorsa indispensabile per tali scopi.
Questo ciclo di lezioni-seminario si propone di presentare le
caratteristiche del linguaggio, di illustrare la sua diffusione, di
fornire gli strumenti e le prime basi per cominciare da subito a
programmare, sfruttando anche i più importanti moduli per il calcolo
scientifico e la possibilità di programmare a oggetti.
Il ciclo si articolerà in 4 incontri: il primo consisterà in un
seminario autoconsistente in cui ad una panoramica generale si uniranno
brevissimi esempi, mentre nei successivi incontri si approfondiranno
rispettivamente: le basi del linguaggio, i moduli per la ricerca
scientifica e la programmazione Object Oriented.

1 Python ed il suo utilizzo nella ricerca scientifica

Cosa è Python, principali caratteristiche; chi lo usa e perché. Vantaggi
e svantaggi. Primissimi esempi, Hello World, leggibilità ed indentazione
del codice. Estendibilità: cosa sono i moduli, cosa sono le API, cosa
vuol dire potersi interfacciare con il C/C++ o con il Java. Gli
strumenti: la shell interattiva, editor di script, ambienti integrati.
Cosa sono le exceptions e che vuol dire gestione degli errori. Overview
dei principali moduli utili in ambito scientifico. Dove trovare la
documentazione.

2 Le basi del linguaggio

Le basi del linguaggio: data-type (numeri, stringhe, liste…) e comandi
principali built-in; i cicli FOR, IF WHILE…; importare i moduli;
alcuni moduli built-in: math (funzioni matematiche), string (operazioni
con le stringhe), os e sys (chiamare comandi esterni e di sistema), re
(regular expressions)…; I/O su file.

3 Moduli per la ricerca scientifica

Moduli per la ricerca scientifica: Numeric, Numarray, Scientific,
Gnuplot, Dislin, PIL, e altri. Estendere il Python con il C/C++.

4 Programmazione Object Oriented

Programmazione Object-Oriented con il Python: richiami sulla
programmazione OO, terminologia. Esempi esplicativi su classi, istanze,
attributi, metodi, proprietà, ereditarietà, polimorfismo. Cenni
sull’utilizzo del Python per l’interfacciamento con il web, la rete e i
database.