Innovazioni

La cosa meravigliosa degli standard è che ce ne sono molti tra cui scegliere.
Grace Hopper

Premessa

E' inevitabile che per sviluppare software bisogna ricorrere a componenti di terze parti, primo fra tutti un sistema operativo come Windows o Linux. In questo ultimo decennio, soprattutto con l'avvento di Internet ed il boom del net-economy alla fine degli anni 90, c'è stata un esplosione di applicativi e tecnologie che ha invaso il mercato.
Questo ha creato una frammentazione delle tecnologie assurda ed l'approccio alla programmazione è cambiato: ha trasformato i programmatori in sviluppatori, da studiosi e risolutori di problemi a novelli ricercatori di codice.
Sono diventati dei Cuochi"Prendi un po di questo codice, aggiungi un po di quello..."
Questo nuovo modo di "lavorare" si può riassumere in una frase:

"per ogni cosa che serve (che ci chiedono) c'è qualcuno che l'ha gia fatto, basta trovarlo".

Onestamente, il ragionamento non è del tutto sbagliato, è stupido inventare "Acqua calda", ma bisogna necessariamente fare una riflessione.
E' assodato che ormai molte aziende che realizzano software, usano decine e decine di componenti di terze parti per fare le cose più disparate come gestire i contenuti, processare immagini o costruire pdf.
Non sanno minimamente come funzionano, ma usano tranquillamente queste tecnologie.

Un programma è come un organismo, fatto di tante parti, ognuna con il suo compito.


Cosa succede quando una di queste parti smette di funzionare ?
Se l'azienda che ha fornito la tecnologia non esistesse più ? Non è raro che vengano acquisite e smembrate da aziende concorrenti.
E se ci volessero giorni o mesi prima che il problema venga risolto ?
E se questa tecnologia un domani, per motivi puramente commerciali, non esistesse più ?

Il nostro approccio

L'esperienza ci porta a farci queste domande ogni giorno, soprattutto perchè abbiamo già visto scomparire centinaia di tecnologie in questi anni.
La linea che seguiamo è la seguente:
Se la tecnologia che ci interessa esiste, deve soddisfare una serie di presupposti: 

  1. Deve essere multi piattaforma: cioè deve funzionare su Windows, Linux, Apple e possibilimente Solaris
  2. Non deve essere vincolante: se venisse a mancare il progetto nell'insieme non deve risentirne.
  3. Deve esistere un alternativa valida: deve essere facilmente sostituibile con un altra tecnologia analoga.
  4. Possibilmente deve essere open: dobbiamo avere i sorgenti e devono essere comprensibili.

Se invece una tecnologia non esiste, due sono i modi per affrontare il problema: crearla o aspettare che venga realizzata.

Soluzioni creative

Raramente aspettiamo.
Creare nuove tecnologie
ci rende orgogliosi del lavoro che facciamo ogni giorno.
Nel corso di questi anni abbiamo realizzato molte tecnologie proprietarie che ci forniscono gli strumenti per ogni nostro progetto.
E se qualcosa non funziona o ha bisogno di aggiornamento, non dobbiamo chiedere a nessuno, la responsabilità è la nostra ed i tempi di intervento sono immediati.
Ad esempio: Realizziamo siti multilingua centralizzando le traduzioni di ogni cosa, Processiamo meta linguaggi all'interno dei gestori dei contenuti, Elaborariamo, Miglioriamo e Fondiamo le immagini.
Questo ci permette con orgoglio di affermare:

Su un computer pretendiamo il sistema operativo e il database (quello che volete)
Il resto lo aggiungiamo noi.


Scopri le nostre tecnologie