Novità dall’Open source: arriva Django!


C’è un detto nel mondo Open source del Software libero, ovvero “c’è un’applicazione per ogni cosa, e se non c’è, ci sarà!”. Sene parla poco in Italia forse per chiusura mentale, forse perché non siamo abituati all’idea di poter ottenere dei prodotti di qualità, forse anche migliori di quelli che siamo già abituati ad usare, senza dover spendere nemmeno una lira o fare nessuna fatica. Eppure è vero, almeno quando parliamo di computer ci sono comunità impegnate attivamente nella creazione di programmi ed applicazioni per computer e per internet che lo fanno solo ed esclusivamente per passione e lo fanno più che bene dando vita a prodotti competitivi sul mercato ma che non costano niente all’utente che alla fine li va ad utilizzare.

 

Non ci credete? Prendiamo il caso di Mozilla. Quanti di noi utilizzano ormai da anni Firefox per navigare in internet o Thunderbird per controllare la posta elettronica? Questi due strumenti stanno diffondendosi a velocità supersonica nel mondo, ormai affiancati da Safari e Chrome stanno distruggendo il mercato Microsoft di Explorer eppure tutti e 4 i software citati sono Software Free ovvero completamente gratuiti e messi liberamente a disposizione sul web per l’uso. Sembrerà strano ma gli strumenti di questo tipo sono più numerosi di quel che pensiamo e abbracciano ogni aspetto della vita virtuale. Un altro esempio è Django.

 

Django, che si prende il nome dal famoso cantante ma non si ispira alla musica, è un web framework open source per applicazioni web, cioè una struttura di supporto su cui un software può essere organizzato e progettato. In pratica partendo da una base formata da una libreria di codice è possibile cominciare a sviluppare un codice attraverso un linguaggio di programmazione; un Framework semplifica questo lavoro (che per molti di noi resta comunque qualcosa di assolutamente incomprensibile) evitando che lo sviluppatore debba riscriver un codice già creato in precedenza per simili funzioni. Non è poi tanto strano se ci riflettiamo, sono ormai centinaia le applicazioni sviluppate nel web ed è quasi scontato, qualsiasi cosa vogliamo creare, che qualcuno abbia già pensato qualcosa di simile, di almeno vicino all’idea o comunque qualcosa che sia un buon punto di partenza. Il concetto di Framework è quello di utilizzare il codice che sta alla base di questo qualcosa come punto di lancio del nostro lavoro risparmiando tempo e cervello ed ottenendo dei buoni risultati. Un Framework praticamente, permette di aggiungere queste funzioni, nell’esempio più usato e banale abbiamo i “menù a tendina”, i cosiddetto drop down, un menù a tendina contiene voci che sono diverse, è più o meno lungo ma alla base la tecnologia che permette la creazione di un menù a tendina è sempre la stessa in ogni caso; attraverso un framework possiamo aggiungere una funzionalità menù a tendina nel nostro programma senza doverne scrivere il codice se non per la modifica di poche righe di impostazione.

 

Uno dei software che danno questa struttura di base è appunto Django, che appartiene alla categoria dei programmi gratuiti e liberamente utilizzabili fin dal 2005 quando fu creato da Adrian Holocaty. In questo caso Django si avvale di un linguaggio di programmazione chiamato Python. Il design di Django fornisce un certo numero di funzionalità per lo sviluppo facile ed immediato di applicazioni per la gestione dei contenuti. Per esempio, invece che richiedere sviluppatori per la realizzazione di controller e viste per le aree dedicate all’amministrazione di un portale web, Django fornisce una soluzione integrata di amministrazione dei contenuti che può essere inclusa come parte di ogni sito basato su Django e che può gestire molti siti da una unica installazione. Ancora uno volta questo riduce il lavoro finale.

 

Django è supportato dal server HTTP Apache se questo include mod python, o sotto qualsiasi server web WSGI. Include, inoltre, la possibilità di lancio di un server FastCGI, permettendone l’uso da qualsiasi server che supporti questo genere. Lo scopo finale di Django non si discosta di molto dal resto del mondo Software Libero, ovvero la creazione di applicazioni web ed altri programmi in maniera non complessa ed elegante, Django ti permette di creare programmi altamente performanti con un basso investimento sia in termini economici (data la gratuità del prodotto e la mancanza di licenze) sia in termini di tempistica del lavoro. Una delle sue caratteristiche più forti ed apprezzate è la logica DRY – Don’t Repeat Yourself –  ovvero non ripeterti, che enuncia: Every piece of knowledge must have a single, unambiguous, authoritative representation within a system, (Ogni conoscenza deve essere rappresentata all’interno di un sistema in maniera unica, autorevole e disambigua). Secondo questa teoria, un po’ come nel caso dei CSS che sostituiscono l’HTML, un comando, impostazione, codice creato una volta non viene ripetuto per intero ma “richiamato” quando serve, in questo modo il risultato finale è più leggero, semplice e gestibile anche per i meno bravi.

 

Sara