Visualizzazione post con etichetta Python. Mostra tutti i post
Visualizzazione post con etichetta Python. Mostra tutti i post

venerdì 2 settembre 2011

Compiti per le vacanze

Ai miei alunni ho assegnato, a giugno, i compiti per le vacanze... ma il profe, nei mesi di luglio e agosto, cosa ha fatto?

Oltre a cercare di divertirmi e di riposarmi il più possibile, oltre a cercare di rendermi utile per qualcuno lavorando come cambusiere sotto una tenda ai margini dell'"Alpe della luna", ho anche studiato e ripassato un po' le cose che devo insegnare quest'anno e altre cose che non riuscirò mai ad insegnare.

Ma soprattutto ho dedicato ogni momento libero ad aggiornare, correggere e riscrivere la mia libreria pygraph, lo strumento che uso nell'ora di laboratorio di matematica.

pygraph contiene 4 strumenti:

  • pycart: fornisce gli oggetti di più basso livello, generalmente non lo uso direttamente con le mie classi;
  • pyplot: permette di tracciare grafici di funzioni, dopo aver imparato a tracciare a mano grafici di funzioni, farlo fare al computer permette di poter confrontare in pochi minuti l'effetto della modifica di alcuni parametri di una funzione o osservare aspetti qualitativi dei grafici.
  • pyturtle: il primo impatto con la programmazione è sempre divertente farlo dando comandi ad una "tartaruga" che si muove lasciando tracce sullo schermo.
  • pyig: permette di esplorare le relazioni tra elementi della geometria euclidea, fare costruzioni geometriche e verificare proprietà delle figure.
Un effetto collaterale dell'uso di questi strumenti per imparare la matematica, è che si impara anche qualcosa di programmazione in Python (che non fa certo male).

Ho riscritto praticamente tutto il codice Python, ho reso le librerie più coerenti, ho rivisto tutti i test e gli esempi, ho riscritto il manuale (oltre 120 pagine) aggiornandolo e realizzandolo con il linguaggio Restructured Text. Ho allargato la compatibilità a Python 2.6, 2.7 e 3.x.

Ovviamente il tutto è rilasciato sotto licenze libere e è ospitato da un repository pubblico dove chi vuole può contribuire facilmente. Ebbene, dove si possono trovare tutte queste meraviglie? Basta andare nel sito:

bitbucket.org/zambu/pygraph

sulla destra in alto si trova il pulsante: "get source" e da lì si può scaricare tutta la libreria, manuale ed esempi compresi, nel formato compresso preferito.
Una volta scaricato il file e estratto tutto il suo contenuto in una cartella, le istruzioni per installare le librerie si trovano nel file "readme.txt".

Provate gli esempi, date un'occhiata al manuale e fatemi sapere cosa ne pensate.

Buon divertimento con Python!

Daniele


giovedì 25 marzo 2010

Convegno "Didattica aperta"

Nei prossimi giorni si terrà presso la facoltà di scienze dell'università di Verona, un convegno sugli strumenti liberi nella didattica.

In particolare si parlerà di:

  • cos'è il software libero e cosa sono i formati aperti;
  • cosa sono le licenze libere e come sfruttarle;
  • cosa sono gli open archive (archivi aperti) e come accedervi.
Sarò presente anch'io con un poster su Python e uno sulle librerie grafiche 'pygraph'.

Un intervento di una collega di matematica di un'altra scuola tratterà dell'introduzione di Python nell'insegnamento della matematica.

Spero che sia una buona occasione per creare relazioni tra chi usa strumenti liberi nella didattica.

Tra i materiali riporto i due poster che propongo al convegno.

domenica 3 gennaio 2010

Fracapug

Quest'anno, la cattedra che mi è stata affidata, non prevede l'insegnamento dell'informatica in nessuna classe: grande dolore! Per alleviare il dispiacere conseguente, ho proposto un corso di Linguaggio Python come attività facoltativa pomeridiana.

La scuola insegna già, nei corsi PNI e Tecnologico, il linguaggio Pascal. Il corso di Python si propone come ampliamento dell'offerta formativa per chi vuole imparare un linguaggio di programmazione moderno.

Una quindicina tra alunni e colleghi si sono mostrati interessati e hanno iniziato a frequentare il corso.

L'obiettivo sarebbe più ambizioso di una semplice attività extracurricolare proposta dalla scuola: mi piacerebbe creare un "Python User Group", uno strumento per mettere in comunicazione gli appassionati di linguaggi di programmazione (in particolare di Python).

Come supporto all'attività, ho creato un gruppo:

http://groups.google.it/group/fracapug

con mailing list e uno spazio per i materiali. In questo spazio subito qualche partecipante al corso ha introdotto gli appunti presi durante i primi incontri in laboratorio.

Ho approfittato della disponibilità dei corsisti per testare la versione in sviluppo di una parte della libreria pygraph (di questa parlerò in un altro post...). Infatti le parti relative alle funzioni, al problem solving, ai parametri e alla ricorsione le ho affrontate con l'aiuto della grafica della tartaruga.

La partecipazione agli incontri è sempre molto attenta e partecipata. L'ora e mezza vola e spesso, presi da domande e problemi, sfondiamo l'orario previsto.

Agitazioni scolastiche e neve hanno un po' interferito sulla frequenza negli ultimi incontri... spero che da gennaio si possa riprendere a pieno ritmo.

Ma spero soprattutto che un po' alla volta il livello di competenza diventi tale da poter far a meno del "profe" e che il "corso" si trasformi in un gruppo di utenti appassionati.

domenica 26 aprile 2009

Didamatica 2009

Qualcuno ha protestato dato che dopo la prima e seconda lezione, non ho più scritto niente...

La scuola, e qualche altro impegno, mi assorbono moltissimo.

Ho partecipato a Didamatica 2009 che si è svolta a Trento nei giorni scorsi. Per questa conferenza ho prodotto alcuni materiali che metto a disposizione di chi fosse interessato. Ovviamente la presentazione è poco comprensibile per chi non ha ascoltato le elucubrazioni che hanno accompagnato la sua proiezione, ma se qualcuno vuole divertirsi a interpretarla...

Chi è interessato può scaricare questo materiale partendo dai link posti a fianco.

.

domenica 6 gennaio 2008

Libreria rimessa a nuovo

In novembre, dopo un anno e mezzo di lavoro, ho pubblicato le dispense per il laboratorio di matematica - informatica. Ora, dopo un mese e mezzo di lavoro (ma ho fatto anche altro...) ho terminato la revisione delle librerie grafiche per Python. Queste librerie contengono:
  • la geometria cartesiana,
  • la geometria della tartaruga,
  • la geometria interattiva,
  • un tracciatore di funzioni in due variabili.
Non sono molte le novità, ma ho revisionato tutto il codice e reso le librerie più usabili e coerenti.

Oltre alle librerie citate, pygraph_02_03 contiene anche molti esempi, un manuale completo, in italiano e alcuni altri testi introduttivi alla programmazione.

Python è un bel linguaggio per imparare a programmare e gli strumenti grafici aiutano.

L'alto livello di astrazione permesso da Python e dalla sue librerie permettono di concentrarsi sui problemi matematici o geometrici millenari lasciando in secondo piano i problemi legati al linguaggio, problemi che fra qualche anno saranno superati.

Buon divertimento con Python e con pygraph!!!

.

sabato 27 ottobre 2007

Laboratorio di informatica

Lungo periodo di silenzio-post: è iniziato l'anno scolastico, che ha assorbito tempo e risorse...

Sebbene a ritmo rallentato, ho continuato il lavoro e ora posso dare il grande annuncio:

Le dispense sono terminate!

Dopo una gestazione di 15 mesi ho messo la parola "fine" alle aggiunte, correzioni, impaginazioni, ...

Ecco le dispense di laboratorio di informatica calde di stampa! (Vedi "Laboratorio Mat-Info" pdf o odf).

Sono rivolte ad alunni del primo biennio del liceo PNI o Tecnologico. Non sono dispense di "informatica", ma dispense di "matematica" nel laboratorio di informatica.

Possono anche essere usate come introduzione all'informatica, ma, per ogni argomento, ho cercato di dare il minimo di contenuti informatici sufficiente per poter utilizzare lo strumento informatico per qualcosa di sensato.

Il testo permette diversi approcci al laboratorio: si può partire dal foglio di calcolo o da applicazioni numeriche, come di solito si fa con Pascal, o da applicazioni geometriche.

Gli strumenti informatici utilizzati sono:
  1. Foglio di calcolo: OpenOffice.org
  2. Linguaggio di programmazione: Python
  3. Librerie grafiche: pygraph

I numerosi capitoli sono molto brevi, pensati per essere svolti in un'ora. La pratica mostra quanto io sia affetto da "pensiero magico" dato che per essere un po' digeriti i vari argomenti richiedono molto più tempo!

Il testo è diviso nelle sezioni:
  1. Introduzione al linguaggio Python
  2. Numeri
  3. Geometria interattiva
  4. Geometria analitica
  5. Geometria della tartaruga
  6. Foglio di calcolo

Svolgendo diversi argomenti durante l'anno, gli strumenti informatici come variabili, funzioni, parametri, ecc. vengono riproposti da diversi punti di vista e possono quindi essere compresi meglio.

Quello che ho scritto non è altro che ciò che io a mia volta ho imparato dal lavoro di altri. "Gratuitamente ho ricevuto", gratuitamente mi sembra giusto dare. Perciò il testo è rilasciato sotto la licenza Creative Commons:

Attribuzione-Non commerciale-Condividi allo stesso modo

Ciò vuol dire che chiunque è libero di:

di riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare quest'opera

di modificare quest'opera

Alle seguenti condizioni:

Attribuzione. Deve attribuire la paternità dell'opera nei modi indicati dall'autore o da chi ti ha dato l'opera in licenza e in modo tale da non suggerire che essi avallino te o il modo in cui tu usi l'opera.

Non commerciale. Non può usare quest'opera per fini commerciali.

Condividi allo stesso modo. Se altera o trasforma quest'opera, o se la usa per crearne un'altra, può distribuire l'opera risultante solo con una licenza identica o equivalente a questa.

Pur avendo impegnato tutte le mie capacità nel curare contenuto e forma senz'altro il testo contiene molti errori, da quelli banali di battitura a quelli concettuali o metodologici: sono grato a chiunque me li segnali.

Spero che qualcun altro, oltre ai miei alunni (che sono obbligati;), usi questi materiali, e magari contribuisca segnalando problemi interessanti o aggiungendo dei nuovi contenuti.

Io mi diverto ad insegnare utilizzando strumenti informatici, anche i miei alunni sembrano molto coinvolti. Spero che questo materiale possa interessare, divertire e far crescere anche altri.

Buon divertimento con Python!

P.S. Il materiale si trova nella sezione "documenti" presente nella barra laterale, in formato pdf o open document (odf) seguendo i link Laboratorio Mat-Info.

.

venerdì 31 agosto 2007

Caro scuola

Anche quest'anno in corrispondenza con l'inizio della scuola è esplosa la notizia dell'aumento dei costi. La faccenda incomincia a diventare rituale: se ne parla dopo gli ingorghi del rientro ferragostano e pima della manovra finanziaria e dell'autunno caldo.
La maggior parte della spesa riguarda i libri di testo: enormi affari ruotano attorno all'editoria scolastica. Il modello attuale di produzione dei testi scolastici ha senz'altro il merito di finanziare la produzione di libri, opera altamente meritoria, e di finanziare un gran numero di lavoratori e quindi provvedere al sostentamento di altrettante di famiglie...
Ma sorge un dubbio: per caso questo metodo non risulta ormai sorpassato?
Grazie alle nuove tecnologie è possibile auto-produrre materiali didattici di qualità paragonabile, almeno in certi casi, ai libri di testo.
Perché questo non avviene? Mi vengono in mente due motivi:
  • I grandi interessi economici che spingono verso il mantenimento della situazione attuale;
  • La demotivazione degli insegnanti sempre meno capaci di essere attivi e produttivi.
L'auto-produzione di materiali didattici produrrebbe senz'altro grandi vantaggi per l'attività didattica:
  • Flessibilità dei materiali;
  • Adattabilità degli strumenti alle diverse situazioni;
  • Aggiornabilità continua;
  • Risparmio economico.
Ma per poter usare materiali auto-prodotti, serve un cambiamento di mentalità: da utilizzatori passivi a produttori. E un cambiamento di organizzazione: non può funzionare il modello dell'autore singolo, servono opere collaborative dove ognuno fa una parte che può essere:
  • Scrivere la trattazione di un argomento;
  • Scrivere esercizi o questionari di verifica;
  • Segnalare errori, carenze, miglioramenti;
  • Usare il materiale nella propria attività.
È chiaro che una tale organizzazione è possibile solo all'interno di un modello simile a quello in cui si sviluppa il software libero quindi con l'uso di licenze che permettano l'uso, la modifica, la copia e la distribuzione delle opere originali o modificate.

Per parte mia sto lavorando ad un testo per il laboratorio di informatica con:
  • OpenOffice.org,
  • Il linguaggio di programmazione Python,
  • Alcune librerie di Python per la geometria della tartaruga, cartesiana e interattiva.
Se ogni insegnante mettesse in un calderone comune e ben organizzato, il proprio lavoro, forse le case editrici sarebbero spinte a fare qualcosa di più interessante che cambiare titoli e versioni degli stessi testi ogni 3 anni.

A proposito del mio libro è meglio che mi rimetta a correggere le bozze invece di continuare a scrivere tra me e me.

.