RSS
Blog
Immagine con il logo CROSS che mostra le case nella nebbia o nella pioggia

Il valore dell'open source per le università: UC Santa Cruz

28 luglio 2020 - di Andrew Oram

Oltre a fornire al mondo il suo software più importante, Linux e open source offrono immensi benefici educativi. I programmatori possono attestare che i progetti free open source li hanno aiutati moltissimo.

Alcune università hanno riconosciuto il valore che possono offrire ai propri studenti, e al mondo in generale, sponsorizzando progetti open source. Di recente ho parlato con il Dr. Carlos Maltzahn, professore di Informatica e ingegneria presso l'Università di Santa Cruz, California, fondatore e direttore del Centro di ricerca nel software open source (Research in Open Source Software, CROSS). La nostra conversazione ha riguardato i molti modi in cui l'open source si propone nei programmi universitari.

Durante la sua esistenza quinquennale, CROSS ha rilevato che gli studenti sono desiderosi di unirsi al programma, che persone in tutto il mondo senza alcuna connessione formale con l'UCSC si iscrivono per lavorare ai progetti e che gli sponsor sono disposti a supportare i progetti con donazioni sostanziali. La sostenibilità, in particolare la stabilità finanziaria, è ancora difficile da raggiungere e CROSS ha sperimentato diversi modi per raccogliere fondi così da garantire che i progetti possano sostenere la propria indipendenza dopo alcuni anni.

Altre università che raggiungono e costruiscono comunità intorno all'open source includono Berkeley (tramite il progetto Spark), l'Università di Stanford (con Open vSwitch), l'Università dell'Indiana, Urbana-Champaign (con LLVM e Clang) e l'Università di Boston, attraverso una partnership con Red Hat di cui ho scritto. Red Hat, insieme alla National Science Foundation, ha anche lanciato una risorsa web chiamata Professors' Open Source Software Experience (POSSE) che insegna agli insegnanti come integrare l'open source nell'istruzione. Qui parlerò solo di CROSS e delle implicazioni del suo lavoro per altre università.

Istruzione e software libero

Ogni studente di informatica di successo, che voglia lavorare o meno in area FOSS, deve colmare il divario che ho menzionato in precedenza tra esercitazioni in classe e ambiente di lavoro. Il divario comprende tutto ciò che il programmatore deve fare prima di scrivere il codice e dopo aver scritto il codice. Prima di generare il codice, devono valutare le esigenze degli utenti, scegliere attività utili e ottenere il buy-in dai team. Dopo, devono eseguire test e integrazione, inviare il codice per la revisione, accettare feedback, rimanere responsabili della manutenzione e rimanere in generale in contatto con il loro team . I progetti FOSS forniscono eccellenti comunità nelle quali apprendere queste abilità e competenze.

Inoltre, i programmi di informatica di solito non insegnano agli studenti come leggere il codice di altre persone. Non riescono mostrare l'aspetto che hanno i progetti professionali pronti per la produzione. I progetti FOSS sono ricche fonti di codice di alta qualità, che gli studenti UCSC studiano come parte della loro immersione nell'open source.

Parte della formazione in open source per studenti di informatica UCSC avviene in classe. Imparano come lavorare su Github, le dinamiche delle comunità FOSS e la storia di due grandi comunità su tutte: Linux Kernel e FreeBSD. Ma ottengono al tempo stesso anche un progetto pratico che devono completare per ottenere un voto positivo: devono farsi accettare una patch per il kernel di Linux. La patch può essere anche banale, come una modifica della documentazione, ma questo richiede loro di impegnarsi nella comunità.

Progetti CROSS

CROSS assegna borse di studio per lavori su progetti di ricerca e incubatori. I ricercatori sono dottorandi della UCSC. Studenti che stanno lavorando su innovazioni all'avanguardia con un percorso realizzabile nel quadro di progetti open source. I borsisti degli incubatori hanno completato il proprio dottorato e costruiscono una comunità di sviluppatori attorno a un prototipo di ricerca open source.

CROSS invita a presentare proposte di ricerca e incubazione due volte l'anno e cerca di avviare almeno due nuovi progetti all'anno, subordinatamente alla disponibilità di finanziamenti. CROSS, insieme ai suoi sponsor del settore e al comitato consultivo (che comprende Doug Cutting, Sage Weil, Karen Sandler, Nissa Strottman e James Davis), rivede tutti i progetti due volte all'anno e prevede di finanziare ciascuno per 2-4 anni. L'organizzazione aiuta i borsisti degli incubatori a interagire con la comunità di sviluppatori attraverso il programma Open Source Research Experience, che incoraggia gli studenti a lavorare su idee progettuali create e guidate dai borsisti CROSS. Pertanto, CROSS è sia una struttura di ricerca che un incubatore. A questo link: https://cross.ucsc.edu/projects/index.html l'elenco dei progetti CROSS attualmente attivi.

Dato che CROSS esiste da cinque anni, il più anziano progetto dell'incubatore si sta avvicinando al completamento del suo quarto anno e sta affrontando la sfida di rendere il progetto sostenibile al di fuori di CROSS. I borsisti degli incubatori stanno lanciando un sacco di proposte di finanziamento in questo momento, rendendo i progetti attraenti per già consolidate comunità di software open source.

Il supporto di CROSS include il pagamento dei coinvolti negli incubatori, dando loro il tempo di reclutare e guidare nuovi sviluppatori e guidarli a loro volta mentre si connettono a progetti open source consolidati e a fonti esterne di supporto finanziario. I candidati all'incubatore devono dimostrare l'interesse da parte di comunità di sviluppatori ben note al di fuori di UCSC quando propongono il loro progetto. Nella prossima sezione dell'articolo cominceremo a conoscere meglio questi outsider.

Lavorare su un progetto CROSS non è redditizio. Maltzahn afferma che un professionista coinvolto nell'incubazione potrebbe probabilmente guadagnare quattro volte di più con un tipico lavoro di programmazione nella vicina Silicon Valley. Quindi gli studenti stanno lavorando ai progetti con la passione di renderli di successo, una sorta di mentalità da start-up.

Il modello sterling per un progetto open source per studenti è Ceph, il software open source più popolare per l'archiviazione di oggetti. È stato sviluppato da Sage Weil come studente universitario della Santa Cruz UC. Ha creato una società attorno a Ceph, vendendola infine a Red Hat mentre Ceph è rimasta open source. Weil divenne quindi consulente di UCSC nella creazione di CROSS.

Le aziende sponsor hanno avuto un ruolo chiave in CROSS sin dall'inizio. Si è iniziato con tre sponsor e in genere CROSS riceve 100,000 dollari per sponsor per anno, per un totale compreso tra 300,000 e 600,000 dollari all'anno. Le aziende aderiscono perché l'open source le aiuta a creare e plasmare nuovi mercati, cercare opportunità di networking con talenti e potenziali nuovi impiegati e influenzare l'istruzione, la ricerca e gli ecosistemi software open source di prossima generazione.

Ma il denaro è solo uno dei vantaggi offerti da uno sponsor, che forniscono anche consulenza agli studenti sulle esigenze di vita reale e di business che incidono sui loro progetti.

Per esempio, un progetto CROSS chiamato SkyhookDM aggiunge smart computation (nella fattispecie, query distribuite) a Ceph. Alcune aziende che producono dispositivi di archiviazione per computer supportano il progetto perché hanno margini di profitto ristretti e preferiscono esternalizzare la ricerca precompetitiva ad alto rischio alle università. Ma possono essere anche una cartina di tornasole per gli sviluppatori stessi di SkyhookDM, nell'ottica della comprensione dell'applicazione di costi ai prodotti di archiviazione. SkyhookDM è il più avanzato, tra tutti i progetti CROSS, verso lo sviluppo di un modello di finanziamento sostenibile.

Volontari esterni

CROSS misura il successo di un progetto open source in gran parte dalla salute della comunità che si forma attorno a esso: non solo il numero di collaboratori è importante, ma anche il numero di diverse organizzazioni da cui provengono. Come abbiamo visto, il progetto deve avere sviluppatori non affiliati con UCSC anche prima di ottenere l'approvazione CROSS. L'organizzazione ha scoperto che i suoi progetti fanno appello a molti programmatori in tutto il mondo: Messico, Guatemala, Nigeria e India, per esempio.

Alcuni di questi sono volontari; altri vengono pagati durante le sessioni estive e talvolta continuano a essere pagati se in autunno rimane budget. Quest'estate, CROSS impiega 11 studenti, tutti studenti universitari, di cui cinque all'UCSC e sei in altri contesti.

Maltzahn ritiene che il denaro non sia il principale motivatore, perché circa la metà dei coinvolti rimane su base volontaria anche dopo la fine del periodo pagato. Si tende a rimanere perché si impara dagli illustri mentor della UCSC, ricevendo una formazione che non è disponibile nelle comunità di provenienza. Inoltre, l'esperienza che questi studenti ottengono nei progetti CROSS li aiuta a frequentare i corsi.

Open source e università

Per supportare adeguatamente i progetti gratuiti e open source, gli avvocati e gli amministratori dell'università sono "costretti" a imparare molto di più sulle licenze e le comunità FOSS. Maltzahn sottolinea che le istituzioni accademiche hanno investito molto in materia di editoria, brevetti, avvio di attività commerciali e altre leggi e logistica nel mondo del software proprietario, ma devono aggiornarsi sull'apprendimento di strategie open source per amplificare il proprio impatto sulla società.

Studenti e professori riferiscono che l'informatica open source è preziosa. Per esempio, gli studenti imparano a trovare gli strumenti di cui hanno bisogno, invece di lavorare nell'ambiente creato dal professore. Questo li fa "sentire spersi in modo produttivo", nella frase attribuita a David Humphrey del Seneca College. I laureati riferiscono che le competenze acquisite, in particolare il come lavorare con altre persone, hanno reso più facile ottenere posti di lavoro e successo, indipendentemente dal fatto che il lavoro riguardi o meno l'open source.

Maltzahn raccomanda alle università di ricerca di creare gli "OSPO", Open Source Program Offices, rispecchiando l'approccio "Talk Openly, Develop Openly" . Maltzahn vorrebbe anche vedere le università monitorare il loro impatto sulla società attraverso la produzione di software open source, come Ceph. Ho la sensazione che tale ricerca attirerebbe l'attenzione sul software libero e open source e spingerebbe molte più università a renderlo parte del curriculum di informatica.

Informazioni su Andrew Oram:

Andrew Oram

Andy è uno scrittore ed editor nel settore IT. I suoi progetti editoriali presso O'Reilly Media vanno da una guida legale sulla proprietà intellettuale a una graphic novel su hacker adolescenti. Andy scrive spesso anche sull'impatto dell'IT in ambito sanitario, su questioni politiche relative a Internet e sulle tendenze che incidono sull'innovazione tecnologica e i suoi effetti sulla società. Pubblicazioni stampate in cui è apparso il suo lavoro includono The Economist, Communications of the ACM, Copyright World, Journal of Information Technology & Politics, Vanguardia Dossier, and Internet Law and Business. Le conferenze cui ha presenziato includono la Open Source Convention di O'Reilly, FISL (Brasile), FOSDEM (Bruxelles), DebConf e LibrePlanet. Andy partecipa all'organizzazione politica della Association for Computing Machinery, USTPC.