Ciao, e benvenuto nella quinta puntata della quinta stagione. Finora abbiamo parlato di contribuire ai progetti degli altri. Oggi affrontiamo il passo più ambizioso e personale: creare un tuo progetto open source. Cioè costruire qualcosa di tuo, dal principio, e renderlo pubblico. È una cosa diversa dal contribuire, con vantaggi e insidie particolari, e va capita bene prima di lanciarcisi.
Cominciamo dalla differenza rispetto a contribuire. Quando contribuisci a un progetto esistente, entri in un contesto già fatto, con regole e direzione date da altri. Quando crei un tuo progetto, invece, sei tu il responsabile di tutto: l'idea, le scelte, la qualità, e anche la manutenzione nel tempo. È più libertà, ma anche più peso. Per questo, di solito, non è il punto di partenza ideale per un principiante assoluto: contribuire prima ti insegna come funzionano le cose, e quella esperienza ti serve poi per gestire meglio un progetto tuo.
Ma perché crearne uno, dal punto di vista del curriculum? Perché un progetto tuo, ben fatto, è la vetrina più completa di cosa sai fare. Non mostra solo che sai scrivere una funzione, ma che sai portare un'idea dall'inizio alla fine: progettare, costruire, documentare, organizzare, mantenere. Riprendo un tema delle stagioni sui colloqui: il portfolio è la prova concreta delle tue capacità, e un progetto tuo, curato, è forse il pezzo di portfolio più forte che puoi avere, perché racconta una storia intera e tutta tua.
Ora il consiglio più importante della puntata, che va contro l'istinto di tutti: pensa piccolo. La tentazione, quando crei qualcosa di tuo, è immaginare il progetto grandioso che rivoluzionerà tutto. È la strada più sicura verso il fallimento. I progetti troppo ambiziosi non vengono mai finiti, si arenano dopo poche settimane, e un progetto abbandonato a metà comunica esattamente il contrario di quello che vuoi. Molto meglio un progetto piccolo, con uno scopo chiaro e limitato, portato davvero a termine. Riprendo la prima e la seconda stagione: finito è meglio che perfetto, e un piccolo progetto compiuto vale infinitamente più di uno enorme lasciato a metà.
Cosa costruire, allora? La risposta migliore è: qualcosa che risolve un problema che hai tu. Uno strumento che ti serviva e non trovavi, un piccolo programma che ti semplifica una cosa che fai spesso. I progetti nati da un bisogno reale hanno tre vantaggi enormi: sai esattamente cosa devono fare, hai la motivazione per finirli perché ne trai un beneficio, e c'è una buona probabilità che servano anche ad altri con lo stesso problema. Non cercare l'idea geniale e originale a tutti i costi: cerca l'idea utile e piccola, radicata in un tuo bisogno concreto.
Rendere un progetto davvero open source, e non solo del codice buttato online, richiede alcune cure che fanno la differenza tra qualcosa di serio e qualcosa di trascurato. La prima è una buona spiegazione del progetto: un documento iniziale che dica chiaramente cosa fa, a cosa serve, come si installa e come si usa. È la prima cosa che chiunque guarda, e spesso l'unica: un progetto senza una spiegazione chiara viene ignorato, per quanto buono sia il codice sotto. La seconda cura è una licenza: perché altri possano usare e contribuire al tuo progetto in modo chiaro, deve avere una licenza dichiarata. Sceglierne una è semplice, e senza di essa, tecnicamente, gli altri non sanno cosa gli è permesso fare.
Poi valgono, per il tuo progetto, tutte le buone pratiche di cui abbiamo parlato nelle stagioni precedenti, e qui sono in vetrina. Codice pulito e leggibile, perché la gente lo guarderà, come dicevamo nella prima stagione. Una storia ordinata dei cambiamenti con il controllo di versione. E, se te la senti, qualche test che dimostri attenzione alla qualità. Un tuo progetto pubblico è un biglietto da visita: ciò che mostri lì racconta come lavori, quindi è il posto in cui applicare con cura tutto ciò che hai imparato sul buon codice.
Una nota realistica, perché non voglio illuderti. La stragrande maggioranza dei progetti personali open source non diventa famosa, non attira contributori, non viene usata da migliaia di persone. E va benissimo così, perché non è quello lo scopo. Lo scopo, per la tua crescita e per il tuo curriculum, è avere qualcosa di tuo, compiuto e curato, che dimostra cosa sai fare. Il successo di un progetto personale non si misura dalla popolarità, ma dal fatto che lo hai finito bene e che racconta la tua capacità. Un progetto piccolo e perfettamente curato, che nessuno usa a parte te, è comunque un ottimo biglietto da visita.
Un ultimo pensiero sulla manutenzione, per evitarti un'amarezza comune. Se per fortuna il tuo progetto attira utenti e contributori, ti ritroverai con delle responsabilità: rispondere, revisionare, decidere. È bellissimo, ma può diventare un peso, e ne parleremo nell'ultima puntata sulla sostenibilità. Per ora tienilo a mente: creare è solo l'inizio, mantenere è un impegno diverso. Sappi fin da subito quanto tempo vuoi e puoi dedicargli, senza sentirti in colpa se la risposta è "poco".
Per oggi ci fermiamo qui. Creare un tuo progetto open source è la vetrina più completa delle tue capacità, ma va fatto con la testa: pensa piccolo, costruisci qualcosa che risolve un tuo problema reale, curalo con una buona spiegazione e una licenza, e applicaci tutte le buone pratiche del codice. Non cercare la fama: cerca qualcosa di compiuto e curato che racconti chi sei come sviluppatore. Nella prossima puntata parliamo di come comportarsi bene dentro le comunità open source. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.