[Scuola] Re OT: progetto mercurio e programmazione con ?javascript

Alessandro Dentella sandro@e-den.it
Fri Sep 2 11:35:43 CEST 2011


On Tue, Aug 30, 2011 at 10:37:33AM +0000, Stefano Floris wrote:
> Salve,
> 
> Insegno Laboratorio di Informatica Gestionale anche nel mercurio.
> 
> Dopo tanti, tanti anni di insegnamento di VB (che ereditavo da
> decisioni pregresse di altri colleghi) nel laboratorio di
> informatica gestionale al mercurio (Ragionieri Programmatori) sono
> riuscito l'anno scorso a mettere su un percorso alternativo di
> didattica sulla programmazione.
> 
> Per il linguaggio ci ho pensato su ed ho scelto HTML e PHP.

Quali sono state le alternative che hai analizzato e quali le motivazioni
della scelta? perché usare un linguaggio che non ha applicazione fuori dal
web? PHP è il linguaggio dove lo sviluppo è stato il meno ragionato che io
conosca.

> Sull'editor ho ragionato un po' ed ho deciso di scartare NetBeans ed
> altri e iniziare in terza con il semplice editor di testi (agli
> studenti insegno ad usare Ubuntu e un editor semplice che riconosce
> PHP ma possono usare anche il blocco note, se desiderano).
> 
> Sul debug, anche io, (parlo sempre di terza classe) ho deciso di non
> far vedere alcun sistema.
> Questa scelta nasce dalla mia esigenza di testare quanto gli
> studenti riescono ad affinare la loro capacità di concentrazione e
> ricerca dell'errore in autonomia e senza ausilii ma sopratutto a
> "scoraggiare" la scrittura dell'errore. Vale a dire: un errore fatto
> costa molta fatica trovarlo quindi è meglio sviluppare una buona
> propensione alla progettazione e la capacità di prefigurarsi gli
> scenari.

Io non insegno nelle scuole, ma faccio il programmatore da circa 20 anni (ho
usato awk, bash, tcl-tk, perl, php, javascript ed ora principalmente python)
e conosco molti programmatori. Evitare gli errori è una bella utopia, ma
nella pratica, soprattutto quando cerchiamo di imparare resta una utopia.

Quanto al debug, non credo che sia solo avere un debugger passo passo.

Avere degli strumenti buoni per capire dove sto sbagliando e soprattutto
avere una shell interattiva (come ipython ma anche la console di firebug)
dove testare quello che i libri ti spiegano ha -secondo me- un valore
didattico inestimabile. Permette un cammino più ragionato, che non è la
disfatta o la ritirata. Sapere che "ci sono errori nella pagina" è ben
diverso da leggere su quale riga concentrarsi.

Del resto credo che se non funziona un esercizio, i ragazzi coinceranno
presto a provare a stampare il valore di una variabile, magari usando
window.alert() o simili cose. In particolare per il fatto che php non ha una
console interattiva dove poter testare i singoli comandi (anche se ne esiste
una per php... realizzata in Python!)

L'uso degli unit-test -che va insegnato dall'inizio- ha poi il pregio di
mostrare che quanto si è fatto è esattamente quello che si voleva.

> tale il percorso sarà soggetto a correzioni e modifiche. Inoltre sul
> debug penso di introdurlo in quarta assieme all'uso dei database
> relazionali (SQlight o MySql).

Come mai non PostgreSQL?

> strategiche a livello aziendale). Questo ci costringerà a fare una
> seria riflessione su strumenti, linguaggi e argomenti da trattare.

una buona occasione per rivalutare Python... il più veloce da imparare, 

> Ho provato a scrivere anche un testo scolastico (Creative Commons)
> su www.troppocurioso.altervista.org

ho visto, ad una prima e rapida occhiata mi è parso di non vedere alcun
cenno agli unit-test. Sono però un po' noiosi ma molto istruttivi, aiutano
anche a ragionare bene sulla struttura che si vuole dare alle
funzioni/classi. La programmazione test-driven prende sempre più piede ed è
ormai richiesta da molte aziende.


sandro
*:-)

-- 
Sandro Dentella  *:-)
http://www.reteisi.org             Soluzioni libere per le scuole
http://sqlkit.argolinux.org        SQLkit home page - PyGTK/python/sqlalchemy





More information about the scuola mailing list