Sono tutti open con il source degli altri – reprise
Lo ammetto: rompere lo stereotipo che l’opensource sia sicuro senza sé e senza ma è un mio cruccio. Ne scrivevo anche sei anni fa, proprio su questo blog, in questo post. Io amo scrivere codice e amo l’idea alla base dell’opensource. Amo che lo sviluppatore possa scrivere e condividere del codice con la comunità e questa possa collaborare migliorandolo.
Collaborare, migliorandolo.
Se la nostra idea di opensource è: “wow che figata, questa funzionalità è implementata gratis, aspetta che la inglobo nel mio mastodontico prodotto”, allora è il caso di soffermarsi sulla parola collaborare.
È chiaro, non tutti sanno scrivere codice. Ci sono poi tanti fattori che entrano in campo, alcuni anche personali come il senso di blocco del “oddio, come posso collaborare?” oppure “oddio, non sono a quel livello”.
Se però io voglio usare codice opensource, voglio sia sicuro e voglio supportare la comunità che mi ha dato quella libreria che mi sarebbe altresì costata tempo e denaro, io qualcosa devo fare. Posso dare un contributo economico al maintainer, posso scrivere documentazione, posso lavorare ai test, posso fare security audit, posso tradurre i manuali, posso scrivere post tecnico che spiegano come usare quel codice, …
Posso fare un sacco di cose. Un sacco di cose tranne il non fare nulla.
I guerrieri solitari
Dall’altra parte dell’utilizzatore finale abbiamo la figura del maintainer, del capo progetto, ovvero quella persona che è responsabile per quel pezzo di codice. Lo cura, lo fa crescere, prende i feedback della community e li trasforma in funzionalità.
Il maintainer di solito ha un lavoro ed una vita personale. Cosa succede se gli impegni sono troppi o semplicemente non è più in grado di sostenere economicamente il proprio progetto?
Ta-daan
Fa paura, vero?
A me molta, moltissima paura. Un mancato investimento di qualche centinaia di euro, facciamo finta il dominio sia un .com molto costoso, sappiamo tutti che forse sarà di un fattore 10x inferiore, ha una ripercussione su centinaia se non migliaia di altri progetti opensource che usano una particolare libreria che, caduta in mani ostili può contenere codice malevolo. Queste centinaia e migliaia di progetti opensource, sono poi inclusi in altrettanti progetti sia open che commerciali, con un impatto ben superiore al costo di un dominio per un anno.
La community deve essere una parte attiva nel ciclo di vita di un progetto opensource e tu che stai leggendo questo post, devi fare qualcosa nel tuo piccolo.
Non sai dove partire? Vai qui: https://github.com/thesp0nge. Scegli tra i miei progetti opensource e prova a contribuire in qualche modo.
Ci sono eventi organizzati in rete dove questa cosa è portata all’estremo, dove la community è chiamata a partecipare attivamente allo sviluppo e alla crescita del codice open, spesso alla base delle applicazioni che usiamo ogni giorno.
Ti do un compito. Esplora github.com o gitlab.com o sourceforge.net, scegli un progetto e contatta il maintainer chiedendo come partecipare. Se sei invece più coraggioso, prova a scaricarlo, provarlo e magari cercare qualche bug, mettendoti sempre in contatto con il maintainer. Se ti va poi, scrivi qui nei commenti quale progetto hai “adottato”.
Se invece sei tu stesso un maintainer e sei in difficoltà, chiedi aiuto alla community usando i social e qualsiasi strumento tu abbia a disposizione.
La sicurezza del codice passa soprattutto da qui.
Enjoy it!
Vuoi aiutarmi a portare avanti il progetto Codice Insicuro con una donazione? Fantastico, allora non ti basta che premere il pulsante qui sotto.
Supporta il progetto