È inutile negarlo, quando all’oste si chiede com’è il proprio vino questi vi dirà sempre che è il migliore di tutti, perciò connettendosi alla pagina del prodotto CI di GitLab non dovrebbe stupire troppo l’immagine che viene mostrata:
In poche parole lo studio di Forrester (rinomato istituto di ricerca) ha certificato che i migliori prodotti per fare CI oggi sono prodotti da GitLab.
Un passo indietro però per chi si sta chiedendo: che cosa vuol dire CI? Ultimamente lo spettro di competenze richieste per lavorare sul software è veramente ampio. Per lo sviluppatore moderno, ormai DevOp (altra parola su cui andrebbero spesi decine di articoli), non è più sufficiente creare la propria applicazione localmente e poi consegnarla a “qualcuno” che la metterà in produzione. Lo sviluppatore moderno ha bisogno, e il mercato lo richiede, di Continuous Integration. Una modalità operativa che consente di strutturare processi dedicati al trasporto del codice dalla casa dello sviluppatore ai server di produzione. All’interno del percorso il codice viene testato, controllato e verificato in ogni suo aspetto, in modo da essere il meno passibile di inconvenienti quando verrà utilizzato dagli utenti finali.
Gestire questo genere di workflow è certamente complicato, ed è per questo che esistono prodotti appositi, come quello di GitLab che, stando a Forrester, è al momento il migliore in termini di offerta (quello che da) e di strategia (dove si evolverà).
Ma il motivo di questa puntata di “Saturay’s Talks” è diverso, poiché per certificare la propria leadership GitLab offre la possibilità di scaricare gratuitamente (previa registrazione) il documento di Forrester che offre interessanti spunti per fotografare lo stato attuale del mondo I.T. per quanto riguarda le tecniche di sviluppo e le modalità operative.
Emergono dati interessanti come ad esempio il fatto che su un campione di più di duemila sviluppatori, il 67% utilizza CI tool nel loro processo di sviluppo, ma, e qui viene il dato curioso, solamente il 17% lo utilizza quotidianamente. I dati provengono dal Forrester Data Global Business Technographics® Developer Survey del 2017, quindi un anno dopo è presumibile che le cose siano cambiate, ma i dati al momento sono questi e sembrano impietosi.
Eppure la necessità di questi strumenti è riconosciuta come necessaria da tutti per garantire la qualità del codice prodotto attraverso:
- Automazione dei code merge: ossia l’unione degli sviluppi fatti dall’utente con quello che è il codice in produzione dell’applicazione;
- Automazione delle build: la costruzione dei pacchetti automatizzata ad ogni modifica;
- Automazione dello unit testing: test scritti dagli stessi sviluppatori che certificano la compatibilità funzionale;
- Automazione della diagnostica: necessaria a comprendere con rapidità perché la propria build è fallita oppure il proprio codice non si comporta come atteso;
Insomma, si fa in fretta a capire come oggi prescindere da un prodotto che gestisca la CI relativa ai propri prodotti sia letteralmente impossibile.
Ma, di nuovo, chi davvero fa della CI il centro dei propri sviluppi? È possibile dire che, a fronte dei dati emersi dalla ricerca e riportati poco sopra, il mondo I.T. non sia ancora in linea con quelli che sono i requisiti riconosciuti unanimemente come fondamentali?
Ci sono sviluppatori all’ascolto? Cosa ne pensate?
Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.
Lascia un commento