Enable JQuery execution.
Abilitare l'esecuzione di JQuery
Use an SVG enabled browser (eg Chrome, Firefox) for a proper visualization of the content.
See instructions here.
Per una corretta fruizione dei contenuti del sito deve essere utilizzato un browser abilitato alla visualizzazione di SVG (es. Chrome, Firefox).
Vedere le istruzioni qui.

elinor.it

Motivazione

Quando iniziai ad insegnare Matematica pensai di provare a realizzare strumenti informatici utili nella didattica.
Feci vari esperimenti e, visto l'esito positivo, mi sembrò utile metterli a disposizione dei miei studenti e di chiunque volesse utilizzarli. Il canale web mi sembrò l'ideale, quindi realizzai elinor.it

Il framework

Per lo sviluppo dei siti avrei potuto utilizzare le tecnologie in voga all'epoca, ASP.NET o PHP.
Tuttavia queste tecnologie hanno caratteristiche che non mi aggradano molto. Una è strettamente legata ad un sistema operativo e l'altra è un linguaggio interpretato che non si presta bene ad ottenere una certa velocità di elaborazione necessaria in alcune applicazioni. Inoltre volevo utilizzare un linguaggio compilato tradizionale che mi è più familiare.
Decisi quindi di sperimentare alcune tecniche di sviluppo utilizzate agli albori di Internet, ma non per questo meno efficaci, e che tutt'ora hanno alcuni vantaggi.
Nel corso del tempo ho concepito e realizzato un framework in tecnologia CGI per la realizzazione di applicazioni web.
Gli obiettivi perseguiti nella concezione del framework sono stati sostanzialmente:
- la riduzione al minimo dei costi di infrastruttura adattandosi ai comuni servizi di hosting a basso costo
- la protezione del codice sorgente dei siti web
- la prestazione massima nell'elaborazione
- l'utilizzo nello sviluppo web di un linguaggio general purpose per applicazioni desktop
- il divertimento nel creare qualcosa
Inizialmente, quindi, questo framework era stato implementato in Delphi per Windows per poter essere utilizzato in web server dotati di ASP.NET.
Con l'abbandono di Delphi e il passaggio al gratuito e open source Lazarus Freepascal si è aperto il mondo dello sviluppo multipiattaforma. Quindi non ero più limitato a Windows ma potevo affrontare lo sviluppo anche per Linux ed altri sistemi operativi.
Grazie ad una (minimale) riscrittura del codice da Delphi a Freepascal ho potuto migrare il framework da Windows a sistema operativo "qualsiasi".

Server web

Inizialmente lo sviluppo era vincolato all'utilizzo di server web Windows. Questo mi limitava nella scelta dei servizi di hosting in cui depositare i miei siti web.
Con lo sviluppo multipiattaforma mi sono svincolato da questo requisito e ho potuto considerare delle alternative.
Dapprima ho separato la gestione del dominio dal servizio di hosting.
Quindi ho utilizzato un Rasberry Pi 3 come server web Linux in casa grazie ad una connessione Internet sufficientemente prestante e ad un indirizzo IP fisso.
Successivamente sono passato ad un Virtual Private Server Linux che garantisce maggiore sicurezza, affidabilità e velocità della connessione, e continuità nell'erogazione del servizio.
Il passaggio da hosting a server autogestito è stato possibile grazie all'abbattimento dei costi dei VPS.
Questo mi ha permesso anche di semplificare la gestione della parte applicativa e mi ha aperto alla possibilità di utilizzare tutti gli strumenti disponibili per applicazioni desktop, acquisendo una enorme flessibilità.