Software educativo

Maurizio Paolini, Università Cattolica di Brescia
URL di questa presentazione: http://dmf.unicatt.it/~paolini/linuxday/educational.html

Schema della presentazione

  1. Introduzione
  2. Kdeedu
  3. Kstars
  4. Kalzium
  5. Kgeo
  6. Costruzioni con riga e compasso
  7. Aggiunta di features particolari
  8. E l'autore?
  9. kig: il circolo virtuoso del software libero
  10. E le Scuole?
  11. Nota finale


Introduzione

Alcuni progetti per lo sviluppo di software educativo stanno prendendo vita, insieme ad altri che esistono da molto tempo: E' un ambito in cui c'e' molta vivacita' proprio in questi ultimi mesi, quindi e' un buon momento per entrare attivamente a fare parte di uno di tali progetti con proposte, suggerimenti, correzioni, ecc.

Il progetto KDE-edu


Esempio interattivo con kstars:


Esempio interattivo con kalzium:


Esempio interattivo con kgeo:


Costruzioni con riga e compasso: bisettrice di un angolo

La prima reazione è: aspetto la prossima release del programma e magari trovo anche la funzione di intersezione tra cerchi e rette.

Ma si tratta di software libero: ho a disposizione i sorgenti, perchè non provare ad aggiungere di persona tale funzione?

Effettivamente la cosa ha funzionato: il risultato è il programma "kgeo.pao". (Ripetere la costruzione precedente con il programma "kgeo.pao")

Il risultato della modifica è a sua volta protetto dalla licenza GPL (carattere virale della GPL): non posso utilizzare la versione di kgeo da me modificata come fosse un programma proprietario; devo fornire assieme al programma anche i sorgenti e non posso impedire che ne vengano fatte copie, ecc.

Nel caso specifico ho predisposto una pagina web contenente le mie "patch" (cosa sono le patch?) da applicare a kgeo per ottenere le nuove funzionalità. In questo modo chiunque può trarre vantaggio dal mio lavoro: scarica i sorgenti di kgeo, scarica e applica le mie patch, compila tutto... (non è così difficile come può sembrare).


Altro vantaggio: aggiunta di features molto particolari

Può a volte succedere di aver bisogno di una estensione molto particolare di un qualche programma. Nel mondo del software commerciale, le possibili soluzioni in tal caso sono essenzialmente due:
  1. Forget it!
  2. Contattare il fornitore del prodotto, commissionargli l'estensione, pagarlo fior di quattrini, per poi constatare che il lavoro fatto in realtà non corrisponde a quello che si voleva :-(
  3. ---> economia malata.
Non così nel caso di software libero: l'aggiunta me la posso fare da me (se ne ho le capacità) o posso trovare qualcuno che lo sa fare, senza essere vincolato al produttore del programma, e riuscendo così a sfruttare il meccanismo della concorrenza.

Esempio: kgeo.wulff


E l'autore?

Naturalmente ho provato a contattare l'autore (Marc Bartsch) proponendogli di includere le mie patch nella versione ufficiale. La risposta è stata positiva, ma poi di fatto la cosa non è stata fatta. Nessuno può costringere l'autore a includere patch di terzi...

Tutto ciò succedeva durante la primavera scorsa. Nulla da fare?

Succede però che una persona (Dominique Devriese), anche lei interessata a migliorie su kgeo, non ricevendo un grande supporto dall'autore di kgeo ha deciso di partire con un progetto nuovo: "Kig" (K Interactive geometry), che verrà incluso ufficialmente in kde-edu a partire dalla versione 3.2, ma gia utilizzabile scaricando i sorgenti (ftp.kde.org/pub/kde/stable/apps/KDE3.x/math/).


KIG, ovvero il circolo virtuoso del software libero

L'autrice di kig si è dimostrata molto interessata all'inclusione delle patch sull'intersezione tra rette e cerchi, e in effetti ha convertito lei stessa le patch e le ha incluse in KIG, quindi ora la versione ufficiale di KIG comprende anche tali features. Morale: chiunque può utilizzare le modifiche apportate in un programma GPL, a patto che il risultato sia ancora GPL.

Localizzazione. Essendo KIG un programma non ancora ufficialmente incluso in kde, non esiste ancora un progetto di localizzazione ufficiale; naturalmente però non è un problema costruire una localizzazione per l'italiano.

Soddisfazione di ampliare un programma: In modo analogo a quanto fatto per KGEO, ho provato ad introdurre nuove opzioni in KIG; questo ha portato ad una stretta interazione con l'autore di KIG con scambio di suggerimenti nelle due direzioni, e il risultato è sostanzialmente la formazione spontanea di un team di sviluppo. Ora KIG ha tutta una serie di strumenti per la gestione delle coniche, risultato di un collegamento spontaneo tra competenze diverse.


E le Scuole?

Sono a tutti gli effetti gli utilizzatori ideali del software libero, poichè in tal modo rendono possibile la creazione spontanea di competenze, permettono di far leva sull'entusiasmo dei giovani quando hanno la possibilità di creare qualcosa che prima non esisteva, possono inserirsi in progetti a partire da cose "semplici" come Ma potendo giungere anche a interagire con i sorgenti dei programmi

Nota finale

L'autrice di KIG è ora studentessa del primo anno di Computer Science; questo significa che il grosso di KIG lo ha scritto quando era ancora studentessa di una scuola secondaria: come dire che voi potete avere tra i vostri studenti delle competenze insospettate.