La comunità open source non è estranea ai momenti di tensione e controversie. Figure come Linus Torvalds e Richard Stallman sono esempi lampanti di come la comunità open source possa essere coinvolta in questioni personali. E ora, il prossimo capitolo drammatico coinvolge il linguaggio di programmazione più amato dai programmatori: Rust.
Tra le problematiche burocratiche che coinvolgono la Rust Foundation e le tensioni interne, la comunità open source ha dato vita al suo fork del linguaggio di programmazione, chiamandolo affettuosamente Crab. Tuttavia, le ragioni che hanno portato a questo fork svelano i problemi interni che affliggono Rust.
Per contestualizzare la situazione, la Rust Foundation era già in una posizione precaria con la propria comunità. A partire da aprile, la Fondazione ha proposto delle modifiche al proprio marchio, che avrebbero costretto molti progetti open source a cambiare i loro nomi per essere conformi. Oltre a ciò, la natura restrittiva delle politiche sui marchi ha lasciato molti membri della comunità di Rust delusi.
A tutto ciò si è aggiunta una nuova controversia che ha infiammato la comunità. L’imminente RustConf, una conferenza dedicata agli appassionati di Rust, è stata avvolta da voci e pettegolezzi. La situazione è poi esplosa con un blog incendiario scritto da uno dei relatori della conferenza.
JeanHeyd Meneide, ingegnere del software ed editore di progetto per lo standard C, stava lavorando a una funzionalità sperimentale per Rust. Secondo quanto riportato, questo lavoro ha attirato l’attenzione degli organizzatori di RustConf 2023, che hanno invitato Meneide a tenere un discorso di spicco alla conferenza.
Tuttavia, per ragioni sconosciute, gli organizzatori hanno deciso di declassare il discorso principale a un discorso normale. Nel suo blog, Meneide ha dichiarato: “Queste sono state decisioni oscure che non sono chiare per i contributori comuni come me”. Si dice che ciò sia stato fatto su richiesta dei leader del progetto Rust, che al momento si trovano in una fase di ristrutturazione. Meneide ha quindi deciso di ritirare completamente il suo discorso in segno di protesta.
Ciò ha scatenato un’ondata di reazioni all’interno della comunità, poiché Meneide è una figura ben nota sia nella comunità di Rust che in quella di C. Come risposta a questa gestione problematica, uno dei principali contributori al progetto Rust, JT, si è dimesso. In un tweet, ha dichiarato: “Spero che sia chiaro per tutti che il problema principale è che Meneide non è stato trattato con rispetto e ha fallito in molti modi… Ecco perché mi sono dimesso”.
In un blog di accompagnamento, ha anche affermato che l’organizzazione Rust ha “disonorato” uno dei massimi esperti del settore. Questo sentimento è stato condiviso dalla comunità, con molti che hanno considerato la situazione una vergogna per Meneide.
A causa di tutta l’attenzione che circonda questa controversia, la comunità ha deciso di rivolgersi a uno degli aspetti fondamentali dell’open source: il fork. Durante la questione del marchio, un gruppo di sviluppatori della comunità di Rust ha deciso di biforcare il linguaggio, creando quello che è stato affettuosamente chiamato “Crab”. Inizialmente, all’interno della comunità di Rust, questo fork è stato liquidato come un “gesto ridicolo” dal fondatore della Rust Foundation.
Tuttavia, a causa dell’attuale disgusto nei confronti della gestione di Rust, il fork ha iniziato a ricevere maggiore attenzione. Secondo le statistiche di GitHub, il repository di Crab ha raggiunto circa 1900 stelle nel periodo successivo al suo lancio ad aprile. Sebbene la crescita sia stata più lenta da aprile a maggio, con soli 200 nuove stelle aggiunte, la controversia ha dato un’accelerata alla sua popolarità.
Il repository conta attualmente 3675 stelle e, sebbene l’obiettivo non sia sostituire Rust, mira ad offrire maggiore libertà agli sviluppatori e agli utenti. Questo modello si è verificato in diverse comunità open source, con risultati variabili.
Molti dei più grandi progetti della comunità open source sono nati da fork. Ad esempio, Ubuntu, attualmente la distribuzione Linux più popolare al mondo, è un fork di Debian. Mozilla Firefox, che è il secondo browser più utilizzato al mondo dopo Chrome, è nato da un fork di Mozilla Application Suite. Abbiamo visto numerosi esempi di fork riusciti, ma ci sono anche molti casi in cui hanno avuto poco successo e di cui si parla poco.
Questo dimostra la duplice natura dei fork dei progetti open source. Possono portare alla creazione di nuovi prodotti che sviluppano il proprio ecosistema o svanire nell’oscurità mentre il progetto principale continua a prosperare. Alcuni fork possono anche interrompere l’impulso alla base di un progetto open source.
Un esempio significativo di ciò è Bitcoin e il suo fork Bitcoin Cash. Mentre esiste un acceso dibattito su quale sia il migliore, è innegabile che i contributori che avrebbero potuto lavorare su Bitcoin ora stiano lavorando su Bitcoin Cash. Ciò ha diviso l’ecosistema, portando a una divisione nella comunità.
Tuttavia, Crab non è stato creato con l’intenzione di separarsi da Rust o di sostituirlo. Come affermano i suoi sviluppatori, “Vogliamo sottolineare che non siamo in conflitto con il progetto o con il linguaggio originale. Il nostro obiettivo principale è fornire alla comunità un’alternativa che rispecchi i loro valori e il desiderio di libertà senza restrizioni”.