dgt_oss01 – La filosofia Open Source

Titolo del modulo: dgt_oss01 – La filosofia Open Source

Panoramica:
Questo modulo esplora i principi e le filosofie fondamentali alla base del movimento open source. È rivolto sia a chi si avvicina per la prima volta sia a professionisti esperti e tratta il contesto storico, i valori fondanti e l’impatto dell’open source sulla tecnologia e sulla società.

Obiettivi del modulo:
– Comprendere le origini e l’evoluzione della filosofia open source.
– Analizzare principi chiave come trasparenza, collaborazione e sviluppo guidato dalla community.
– Valutare le implicazioni socio-economiche dell’adozione di modelli open source in diversi settori.
– Approfondire progetti e community open source di successo, esplorando come favoriscono innovazione e inclusività.
– Imparare a partecipare a un progetto open source guidando un agente AI in linguaggio naturale, restando personalmente responsabili di licenze, attribuzioni e qualità.

Contenuti del modulo:

  1. Introduzione all’open source:
  2. Definizione e differenze rispetto ad altri modelli di licenza software, ad es. proprietario vs. open source.
  3. Panoramica storica del movimento open source e delle sue tappe fondamentali.

  4. Fondamenti filosofici:

  5. Esplorazione di valori fondanti come libertà, trasparenza e collaborazione.
  6. Analisi delle considerazioni etiche nello sviluppo open source.

  7. Figure chiave e influenze:

  8. Studio di pensatori influenti come Richard Stallman e Linus Torvalds, che hanno orientato la direzione del movimento.

  9. Dinamiche e governance delle community:

  10. Comprendere come sono strutturate e governate le community open source.
  11. Casi di studio sulle pratiche di gestione della community in progetti di successo.

  12. Impatto economico e sociale:

  13. Analisi di come l’open source contribuisce alla crescita economica, all’innovazione e al cambiamento sociale.
  14. Discussione sui modelli di sostenibilità dei progetti open source.

  15. Progetti e community open source di rilievo:

  16. Analisi di progetti storici come Linux, Apache HTTP Server e Mozilla Firefox.
  17. Approfondimento su community emergenti come Kubernetes e TensorFlow, esplorandone il contributo al progresso tecnologico.

Testi di riferimento:

  • “Free Software, Free Society” di Richard M. Stallman
  • “The Cathedral & the Bazaar” di Eric S. Raymond
  • “Open Sources: Voices from the Open Source Revolution”, a cura di Chris DiBona, Sam Ockman e Mark Stone

Esempi pratici e casi di studio:

  • Linux: il suo sviluppo, al suo impatto sui sistemi operativi e alla governance della sua community.
  • Apache HTTP Server: un’analisi del suo ruolo nella tecnologia dei web server e di come incarni la collaborazione open source.
  • Mozilla Firefox: approfondimenti sulla sua influenza sul mercato dei browser e sul suo impegno per la privacy degli utenti.
  • Kubernetes: comprendere la sua importanza nell’orchestrazione dei container e nelle tecnologie cloud-native.
  • TensorFlow: discussione sul suo impatto sul machine learning e sulla ricerca nell’AI.

Metodologia:
Il modulo combina lezioni frontali, discussioni interattive, analisi di casi di studio e interventi di ospiti della community open source. I partecipanti lavorano poi in gruppo su un vero progetto open source, seguendo l’approccio in linguaggio naturale dell’academy: chiedono alla macchina di esplorare il repository, riassumerne le linee guida per i contributi e la licenza, e preparare una issue o una piccola pull request. Il loro compito non è digitare la modifica, ma descriverla con precisione, verificare che la macchina abbia rispettato la licenza e le convenzioni della community e decidere se il contributo è davvero pronto per essere inviato.

Valutazione:
Conoscenze e comprensione degli studenti saranno valutate tramite elaborati scritti, presentazioni su community open source selezionate, partecipazione alle discussioni in aula e una revisione del contributo di gruppo, incluso il modo in cui hanno istruito la macchina e le correzioni apportate al suo lavoro.

Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy