Un sito web per la scuola elementare – il mio vademecum

Lungi dall’essere un rimpiazzo per la teledidattica o le lezioni in presenza, sia chiaro. Eppure la disponibilità di un semplice spazio web per raccogliere materiali e, se serve, gestire l’interazione fra allievi e maestre potrebbe, in questi drammatici tempi, essere di grande aiuto. Ecco come fare…

Gli strumenti

Cose semplici. Un CMS di base, come il WordPress che fa funzionare il sito che state visitando in questo momento. Naturalmente serve anche un servizio di hosting che offra una adeguato spazio di memorizzazione. Diciamo che 40/50GB dovrebbero essere sufficienti per gestire il materiale di un intero anno scolastico.

E’ utile qualche strumento di editing grafico: il mio preferito è GIMP.

Infine serve uno strumento di editing video. Ve ne sono ovviamente moltissimi, soprattutto su OSX. I più famosi (e costosi) sono Final Cut e Adobe Premiere. Ma per i nostri scopi va benissimo un tool a riga di comando, ffmpeg. Sotto ve ne illustro l’utilizzo.

Sito web pubblico o no

Nel caso decidiate di optare per un sito non pubblico, ossia non visibile al di fuori della cerchia di genitori/allievi/insegnanti della classe, potete optare per una soluzione di protezione molto semplice, basata sulle funzionalità standard di Apache: il file .htaccess.

Create nella root del sito web un file denominato .htaccess (attenzione: a seconda della configurazione del vostro provider o del vostro CMS potrebbe già essercene uno, assicuratevi di integrarlo e non sovrascriverlo!). Dentro scriveteci quanto segue:

AuthName "Riservato agli alunni della <vostra classe>"
AuthUserFile /root/sito/web/wp-admin/passwd
AuthGroupFile /dev/null
AuthType basic
require user <scegliete uno username>

Il path indicato in corrispondenza di “AuthUserFile” è molto importante: quello è il file nel quale sono definiti gli utenti abilitati a stabilire una connessione con il vostro sito. Il mio suggerimento è quello di scegliere un nome utente semplice (es. “primaClasse” o “secondaD”, da scrivere poi al posto di <scegliete uno username> nel file di cui sopra), attribuirgli una password / passphrase abbastanza lunga e condividere il tutto sulla classica chat della classe.

La password invece non va scritta da nessuna parte. Non in chiaro, per lo meno. Andate invece su questo sito, che indicati username e password vi genererà una stringa tipo questa:

primaClasse:$2y$10$LI5xAJlL5F516Mn8X9JXG.g0PbtCPUPNO8y7B6V6niZEAnz6MWDhq

Questa string andrà poi inserita nel file /root/sito/web/wp-admin/passwd. Il vero path dipende ovviamente dalla configurazione del vostro provider. Idealmente sarebbe preferibile proteggere meglio questo file mettendolo fuori dalla web root, ma non in tutti i provider ciò è possibile.

L’editing dei video

Le bravissime maestre riprenderanno i loro esercizi e le loro lezioni con il telefonino, probabilmente. Quasi sicuramente in FullHD. Ottimo per la risoluzione, meno per la dimensione del file risultante. Ho visto file da 8Mbit/s. Risultato: quasi un gigabyte per 10 minuti di lezione. Purtroppo così non va bene. Ecco dove subentra ffmpeg. Con il semplice comando che segue si può prendere il file di input e trasformarlo, senza distorsioni, in qualcosa di più facilmente fruibile.

ffmpeg -i input.mp4 -b 1024k out.mp4

Il file così ottenuto può essere caricato come contenuto video nella libreria del vostro CMS e quindi pubblicato.

WordPress: caricamento più efficiente con la giusta struttura di permalink

Ho appreso da questo post che nei giorni scorsi c’è stato in intenso ed interessante dibattito su una delle più frequentate mailing list a tema wordpress, a proposito dell’apparente lentezza di alcuni blog con “qualche migliaio” (quindi non tanti) di post. L’autore di uno di questi riportava in pratica l’esecuzione di migliaia di query per l’esecuzione di una singola pagina.

Il problema di fondo nasce nel meccanismo con cui WP gestisce i permalink, ovvero quella funzionalità che trasforma in forma mooolto più google friendly la url atrimenti enigmatica di un post.

 

E' facile impostare la struttura dei permalink in WordPress
E' facile impostare la struttura dei permalink in WordPress

WP offre grande flessibilità nella selezione della struttura dei permalink. Bisogna tuttavia evitare di cadere nell’errore di selezionare come prma chiave del permalink una variabile testuale (ad esempio %postname% o %category%). In questo caso infatti il motore di elaborazione dei permalink non potrà immediatamente distiguere il post da una page, e sarà quindi costretto ad un po’ di lavoro in più. Inoltre (e qui il problema di performance rischia di trasformarsi in un bug!) tutto il set di rewrite rules viene memorizzato nel database, e trattato da WP come una option, costringendo appunto il server a (potenzialmente) interminabili operazioni per redirigervi alla giusta pagina.

 

Recently I discovered that the current way wordpress handles permalinks is not scalable. All rewrite_rules are at the moment held in a single database field in the wp_options table. If you have a few dozens pages and posts, you have maybe a few hundred rewrite_rules in it and all is well. But as soon as you start to have a few hundred pages and attachments, the amount of rewrite_rules explodes as well as the field size. This also depends on the permalinks settings. On one of my sites I can’t even open the database field to take a look because my browser and text editor crash because of its size.

Se questo problema è poco sentito per i blog – dato che questi hanno tipicamente una struttura di permalink che comprende l’anno ed il mese di pubblicazione – rischia di diventarlo se volete usare WordPress come un CMS.

Assicuratevi quindi che la vostra struttura di permalink inizi con una variabile numerica.

Anche al documentazione di WordPress è stata aggiornata a seguito della discussione.

WordPress 2.7 e i Nested Comments

Da pochi minuti questo blog gira sulla nuova versione di [tag]WordPress[/tag], la 2.7 (named Coltrane).

Le maggiori novità si trovano dall’altra parte, cioè nell’area “amministrazione”, e riguardano un design completamente rinnovato (piuttosto funzionale).

La principale novità lato front end (ovvero quello che gli utenti vedono sul sito) riguarda probabilmente la possibilità di avere i commenti nidificati. Preciso subito che dovrete adeguare il vostro tema per poter sfruttare questa feature.

Un’ottima spiegazione in italiano di come la cosa è implementata la trovate in questo post di Francesco Gavello.

Come per ogni upgrade, è possibile che anche questo abbia generato qualche capitoncino. Grazie in anticipo per le segnalazioni.