Quando anni fa sono stato incaricato di compilare l'orario per la mia scuola non esistevano applicazioni funzionanti su piattaforme linux.
Dunque ho pensato di farmi io il mio programma: scritto interamente in php e basato sul database mysql; per poterlo usare avete bisogno di questi due programmi, dovete inoltre installare il server apache in quanto il programma gira interamente in un browser, un po' come accade nelle pagine di commercio elettronico. Questi script sono indipendenti dalla piattaforma: volendo possono essere usati anche in ambiente windows o mac, ma non lo consiglio: mentre in ambiente linux php, apache e mysql sono presenti di default, facilmente installabili e configurabili, in ambiente windows (e suppongo mac, ma non l'ho mai testato) queste appicazioni vanno cercate e configurate con qualche difficoltà.
Questo programma è il risultato di anni di lavoro: inizialmente era possibile assegnare le ore solo manualmente, un po' come in una lavagna magnetica, ma con il vantaggio di non commettere errori sovrapponendo ore o assegnando meno o più ore del dovuto agli insegnanti. Fin qui tutto piuttosto facile.
La fatica veramente grande è stato scrivere uno script che assegnasse automaticamente le ore: il risultato è un script immenso (oltre 20000 righe in php!) che a me piace molto.
È veloce, affidabile, configurabile. Potete stabilire quante ore al giorno l'insegnate può lavorare, se e in quali giorni può superare la restrizione, se deve avere 'doppiette' per il compito in classe e prima di quale ora le doppiette vanno collocate (non è bello fare scritti alla ultime ore!), se le lezioni non possono essere in giorni consecutivi, se alcune materie non possono stare nello stesso giorno (tipicamente religione ed educazione fisica, per evitare giorni in cui si concentrano ore 'leggere') e altro.
Ci sono due soli limiti importanti, che io sappia: 1) il programma non gestisce le compresenze (ho sempre insegnato nei licei e non so come funzioni la cosa; a un certo punto ho tentato di occuparmene ma ho lasciato perdere); 2) il programma è assolutamente obbediente: se avete posto delle restrizioni cercherà di rispettarle assolutamente (è importante, insomma, non chiedere l'impossibile). Non accade, come in alcune applicazioni che ho visto, che vi venga proposto un orario in cui alcune delle limitazioni imposte non siano rispettate e vi venga comunicato con un messaggio di warning. Se, ad esempio, non è possibile realizzare quanto da voi richiesto per inglese in 5A (esempio semplice di impossibilità - ma di una simile banalità orario_elettronico si renderebbe conto in una frazione di secondo -: inglese deve fare tre ore settimanali, non può avere più di un'ora al giorno e le tre ore non devono essere in giorni consecutivi, ma in questa classe l'insegnante di inglese è condiviso con altri istituti ed è disponibile solo lunedì, martedì e mercoledì: non si può proprio fare!) , il programma cercherà tutte le soluzioni che può figurarsi (e sono tante, può richiedere tempo!) e se non ne trova non assegnerà le ore di inglese nella 5A: starà a voi assegnarle manualmente e decidere quali restrizioni violare (nel nostro esempio potrete assegnare le ore di inglese nei tre giorni, violando la condizione della non consecutività, oppure dare una 'doppietta' il lunedì, utile per i compiti in classe, e un'ora il mercoledì. Sono scelte tutte possibili, ma non previste nelle istruzioni, e orario_elettronico non ci ficca il naso).
Ci sono parecchie utilità collaterali, esplorate il programma! Particolarmente utile è la pagina "quadro di controllo" dove potete vedere 'al volo' se l'orario è completo, se mancano ore e in quali classi, se alcune condizioni sono violate (vedi sopra), se ci sono errori gravi.
Nella cartella 'doc' trovate una ricca documentazioe e una pagina FAQ, anche in inglese (be', inglese per modo di dire!), che, sebbene un po' datate, vi aiuteranno nell'installazione e nell'uso.
Ho messo a disposizione una versione demo dove trovate un corso intero ed ideale (vedrete che insegnanti!), notate, ad esempio, che in nessuna classe educazione fisica e religione sono nello stesso giorno e che inglese (3 ore settimanali) non ha lezioni in tre giorni consecutivi:sono condizioni imposte allo script di assegnazione automatica (completamente configurabili nella versione integrale).Non potete nè aggiungere nè modificare le classi, ma potete giocherellare con le ore assegante e perfino svuotare l'orario e testare l'assegnazione automatica. Dunque a voi la scelta:
1) Accedete alla versione demo a questo link:
Enter the demo version: orario_elettronico demo
2) Scaricate orario_elettronico
Download orario_elettronico
Prima di farlo vi chiedo di compilare un form; non che voglia sapere proprio chi siete (anche se non mi dispiacerebbe), per me potete anche chiamarvi xyz, ma mi serve per sapere quante persone lo hanno scaricato.
ALMENO IL CAMPO NOME NON PUÒ ESSERE VUOTO: SARESTE REINDIRIZZATI A QUESTA PAGINA!