<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Giovanni Marletta - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Impara a programmare gratuitamente! Tutorial di programmazione su Python, JavaScript, Linux e molto altro. ]]>
        </description>
        <link>https://www.freecodecamp.org/italian/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Giovanni Marletta - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/italian/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Tue, 26 May 2026 10:15:24 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/italian/news/author/giovanni-marletta/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ 5 Progetti da Includere nel tuo Portfolio Front-End ]]>
                </title>
                <description>
                    <![CDATA[ Un portfolio è un ottimo modo per mostrare le proprie competenze ai potenziali datori di lavoro. È particolarmente utile per gli sviluppatori principianti che potrebbero non avere alcuna esperienza professionale. Tuttavia, un problema comune che si può incontrare quando si costruisce un portfolio è sapere cosa includervi. La semplice pagina ]]>
                </description>
                <link>https://www.freecodecamp.org/italian/news/5-progetti-da-includere-nel-tuo-portfolio-front-end/</link>
                <guid isPermaLink="false">64cf7c66defe990699bf68c9</guid>
                
                    <category>
                        <![CDATA[ Portfolio ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Giovanni Marletta ]]>
                </dc:creator>
                <pubDate>Tue, 29 Aug 2023 05:30:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/italian/news/content/images/2023/08/5-Projects-To-Include-in-Your-Frontend-Portfolio.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>Articolo originale:</strong> <a href="https://www.freecodecamp.org/news/coding-projects-to-include-in-your-frontend-portfolio/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">5 Coding Projects You Should Include in Your Front End Portfolio</a>
      </p><p>Un portfolio è un ottimo modo per mostrare le proprie competenze ai potenziali datori di lavoro. È particolarmente utile per gli sviluppatori principianti che potrebbero non avere alcuna esperienza professionale.</p><p>Tuttavia, un problema comune che si può incontrare quando si costruisce un portfolio è sapere cosa includervi.</p><p>La semplice pagina web che hai costruito per un corso è sufficiente per essere inserita nel tuo sito web? Devi includere solo i progetti per cui sei stato pagato o puoi includere anche le cose più piccole? Esiste un numero "giusto" di progetti da inserire?</p><p>Lo scopo di questo articolo è quello di fornire alcune linee guida su come popolare il tuo portfolio di sviluppatore frontend, attraverso progetti di esempio.</p><p>Ecco un breve riepilogo dei progetti che tratteremo in questo articolo:</p><ol><li>Un sito web portfolio</li><li>Un sito web clone</li><li>Un'applicazione web CRUD</li><li>Un sito web collegato a un'API</li><li>Un sito web dal punteggio perfetto</li></ol><p>Nota: questo non significa che devi costruire tutti questi progetti. Questo elenco serve solo a fornire idee sul tipo di progetti che si possono realizzare.</p><p>Inoltre, questi progetti sono rivolti a sviluppatori principianti che hanno acquisito le basi dello sviluppo frontend e sono alla ricerca di progetti leggermente più avanzati.</p><h2 id="1-creare-un-sito-web-portfolio"><strong>1. Creare un Sito Web Portfolio</strong></h2><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/04/image-293.png" class="kg-image" alt="image-293" width="600" height="400" loading="lazy"><figcaption>Photo by <a href="https://unsplash.com/@goshua13?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Joshua Aragon</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Unsplash</a></figcaption></figure><p>Se hai costruito il tuo sito web portfolio da solo, puoi includerlo nell'elenco dei progetti. Se si tende a cambiare regolarmente il design del portfolio, è possibile includere anche le versioni precedenti.</p><p>Quando includi un progetto nel tuo portfolio, non solo metti in mostra le tue capacità, ma spieghi anche la mentalità che sta dietro al progetto. E questo è un aspetto che di solito interessa ai potenziali datori di lavoro.</p><p>Per gli sviluppatori frontend, spiegare come si è arrivati al layout scelto è importante quanto avere un design esteticamente accattivante.</p><p>Puoi andare oltre e descrivere le misure adottate per garantire che il tuo sito web segua le migliori pratiche di sviluppo. Ad esempio, potresti condividere il modo in cui ti sei concentrato sul miglioramento della SEO e delle prestazioni del tuo sito.</p><p><strong><strong>R</strong>isorse ed esempi</strong>: <a href="https://www.freecodecamp.org/news/15-web-developer-portfolios-to-inspire-you-137fb1743cae/">Questo articolo di Laurence Bradford</a> fornisce ulteriori informazioni sulla struttura di un portfolio e include esempi di fantastici portfolio di sviluppatori web da cui trarre ispirazione.</p><p><strong>Tecnologia consigliata<strong>:</strong></strong> per i principianti, consiglio di usare HTML, CSS e JavaScript vanilla per costruire un portfolio, soprattutto se è la prima volta.</p><h2 id="2-creare-un-sito-web-clone"><strong>2. Creare un Sito Web Clone</strong></h2><p>La capacità di convertire accuratamente un progetto in una pagina web completamente funzionale è un'abilità che ogni sviluppatore frontend dovrebbe possedere.</p><p>Per farlo, è necessario avere un occhio di riguardo per il layout e i colori. Dovrete inoltre possedere conoscenze basate sull'esperienza, come ad esempio conoscere la migliore proprietà di visualizzazione CSS da abbinare a un layout o essere in grado di eseguire il rendering di un'animazione secondo le specifiche.</p><p>Nella maggior parte delle aziende, gli sviluppatori frontend sono responsabili della traduzione di mockup e prototipi in pagine web, quindi è utile che il portfolio mostri le tue competenze "design-to-code". Costruire un sito web clone è un buon modo per farlo.</p><p>Ci sono due modi per costruire un sito web clone:</p><p>In primo luogo, è possibile ricreare un sito web esistente. Una sfida comune per gli sviluppatori junior è <a href="https://www.theodinproject.com/courses/web-development-101/lessons/html-css">clonare la homepage di Google</a>.</p><p>Questo metodo è particolarmente utile per comprendere le applicazioni reali delle scelte di stile nei siti web più diffusi. È possibile ispezionare gli elementi della pagina e cercare di capire i metodi utilizzati per il box-model, il posizionamento e la visualizzazione.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/04/image-294.png" class="kg-image" alt="image-294" width="600" height="400" loading="lazy"><figcaption>Photo by <a href="https://unsplash.com/@solenfeyissa?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Solen Feyissa</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Unsplash</a></figcaption></figure><p>In secondo luogo, è possibile ricreare un progetto da zero. Per un progetto più impegnativo, si possono consultare i design su <a href="https://dribbble.com/shots/popular/web-design">Dribble</a> o <a href="https://www.behance.net/search/projects?field=web%20design">Behance</a> e cercare di tradurre il design in codice.</p><p>Per rendere questo metodo più adatto ai principianti, provate a ricreare una pagina o una funzione semplice, come un form di login o un'applicazione meteo.</p><p><strong>Tecnologia consigliata<strong>:</strong></strong> la clonazione del design di un sito web non richiede alcuna funzionalità, quindi solo HTML e CSS vanno bene. Si può anche utilizzare questo tempo per familiarizzare con un framework CSS o un preprocessore come <a href="https://sass-lang.com/guide">SASS</a>.</p><p><strong><strong>Not</strong>a</strong>: tutti i progetti caricati su queste piattaforme sono protetti da copyright dei rispettivi proprietari, pertanto non è consentito utilizzarli per scopi commerciali. Tuttavia, se invii un'e-mail o lasci un commento chiedendo il permesso di ricreare il disegno per scopi non commerciali, il creatore potrebbe essere disposto a lasciarti ricreare i suoi progetti gratuitamente.</p><p>È inoltre importante specificare nel proprio portfolio che il progetto è un lavoro clonato o una ricreazione di un design altrui.</p><h2 id="3-un-applicazione-web-crud"><strong>3. Un'applicazione web CRUD</strong></h2><p>L'esecuzione di operazioni CRUD (Create-Read-Update-Delete) è una caratteristica molto comune per la maggior parte dei siti web (come blog, e-commerce, dashboard e così via), quindi è un'operazione che bisogna essere abituati a costruire come sviluppatori front-end.</p><p>Un'applicazione CRUD basilare può essere una lista di cose da fare (To-Do List) o una pagina web di appunti (Notes). La presenza di uno di questi progetti sul tuo sito web dimostra la tua abilità nella manipolazione delle strutture di dati. È anche una buona occasione per mostrare il tuo lavoro con un framework frontend.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/04/image-295.png" class="kg-image" alt="image-295" width="600" height="400" loading="lazy"><figcaption>Photo by <a href="https://unsplash.com/@jessbaileydesigns?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Jess Bailey</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Unsplash</a></figcaption></figure><p>L'articolo di Tania Rascia su come <a href="https://www.taniarascia.com/how-to-use-local-storage-with-javascript/">lavorare con il local storage</a> è un'utile introduzione per imparare a creare applicazioni web CRUD con JavaScript vanilla. Oppure, se vuoi un articolo più specifico su un framework, dai un'occhiata all'articolo della stessa autrice su come <a href="https://www.taniarascia.com/crud-app-in-react-with-hooks/">creare un'applicazione Crud con gli hook di React</a>.</p><p><strong>Tecnologia consigliata<strong>: </strong></strong>le applicazioni CRUD richiedono l'uso di componenti riutilizzabili, quindi è una buona idea costruirle usando un framework come React o Vue, a seconda della tua familiarità.</p><p><strong>Sito di esempio<strong>: </strong></strong><a href="https://taniarascia.github.io/react-hooks/">App CRUD con i React Hook</a></p><h2 id="4-un-sito-web-collegato-ad-un-api"><strong>4. Un sito web collegato ad un'API</strong></h2><p>Molti progetti su larga scala richiedono una sorta di comunicazione con un server backend e la visualizzazione dei dati recuperati da tale server. Nella maggior parte dei casi, ciò richiede l'uso di un interfaccia di programmazione delle applicazioni, in inglese <a href="https://www.freecodecamp.org/news/what-does-api-stand-for-a-definition-of-the-coding-acronym-in-plain-english/">Application Programming Interface (API)</a>.</p><p>Un'API è... Mi piace pensarla come un bibliotecario digitale. Immaginate di avere dei libri conservati in una biblioteca e di doverli utilizzare per una relazione.</p><p>Quindi, si va dal bibliotecario e si chiede di prendere in prestito un libro. È necessario indicare al bibliotecario alcune parole chiave (diciamo il nome del libro e il nome dell'autore) e avere la giusta autorizzazione (in questo caso, la tessera della biblioteca) per ottenere il libro.</p><p>Ora sostituisci "biblioteca" con "server", "libri" con "dati", "relazione" con "sito web" e "bibliotecario" con "API".</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2021/04/image-296.png" class="kg-image" alt="image-296" width="600" height="400" loading="lazy"><figcaption>Photo by <a href="https://unsplash.com/@ismailenesayhan?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">İsmail Enes Ayhan</a> / <a href="https://unsplash.com/?utm_source=ghost&amp;utm_medium=referral&amp;utm_campaign=api-credit" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 17.6px; vertical-align: baseline; background-color: transparent; color: var(--gray90); text-decoration: underline; cursor: pointer; word-break: break-word;">Unsplash</a></figcaption></figure><p>Le API consentono agli sviluppatori frontend di raccogliere, modificare e cancellare dati da un database backend. La creazione di un sito che utilizza un'API per visualizzare i dati è un ottimo progetto da includere nel tuo portfolio.</p><p><strong>Siti di esempio<strong>: </strong></strong>si può scegliere di creare un sito per la visualizzazione di dati (ad esempio, un <a href="https://webdesign.tutsplus.com/tutorials/build-a-simple-weather-app-with-vanilla-javascript--cms-33893">sito web che si connette a un'API meteo</a> e visualizza il tempo corrente) oppure, per un progetto più impegnativo, si può impostare un'<a href="https://www.callicoder.com/node-js-express-mongodb-restful-crud-api-tutorial/">API RESTful</a> ed eseguire le operazioni sul proprio sito web.</p><h2 id="5-un-sito-web-dal-punteggio-perfetto"><strong>5. Un sito web dal punteggio perfetto</strong></h2><figure class="kg-card kg-image-card kg-width-wide"><img src="https://www.freecodecamp.org/news/content/images/2021/01/perfect-score.png" class="kg-image" alt="perfect-score" width="600" height="400" loading="lazy"></figure><p>Un sito web con punteggio perfetto è un sito web che ottiene un punteggio del 100% in tutte le categorie del rapporto di verifica di <a href="https://developers.google.com/web/tools/lighthouse">Chrome Lighthouse</a>. La creazione di un sito web che soddisfa tutte le caratteristiche richieste dimostra la tua abilità nel seguire le best practice e nel garantire progetti di alta qualità.</p><p>Per sapere come ottimizzare il tuo sito web in termini di prestazioni e accessibilità per ottenere un punteggio Lighthouse perfetto, puoi leggere l'articolo <a href="https://blog.jemimaabu.com/how-i-built-my-perfect-score-portfolio-website#how-to-get-a-perfect-lighthouse-score-on-your-website">Come ho costruito il mio sito web Portfolio</a> dal punteggio perfetto.</p><h2 id="conclusione"><strong>Conclusione</strong></h2><p>Ecco quindi i 5 progetti che puoi includere nel tuo portfolio frontend. Inoltre, questi non devono essere tutti progetti separati. Potresti creare un sito web clone dal punteggio perfetto o un'applicazione CRUD che utilizza un'API per richiamare dati da un file JSON.</p><p>Ora puoi andare avanti e creare. Happy coding :)</p><p>Se questo articolo ti è stato utile o se hai delle domande, puoi farmelo sapere su <a href="https://www.twitter.com/jemimaabu">Twitter</a>.</p> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ Open Source per Sviluppatori - Un Manuale per Principianti che ti Aiuterà a Iniziare a Contribuire ]]>
                </title>
                <description>
                    <![CDATA[ Cosa ti viene in mente quando senti il termine Open Source? Nel mondo della programmazione, open source è un termine generico per indicare un software open source (OSS). Un software open source è costruito su un codice sorgente accessibile a tutti che può essere visualizzato, modificato, ampliato e distribuito. In ]]>
                </description>
                <link>https://www.freecodecamp.org/italian/news/open-source-per-sviluppatori/</link>
                <guid isPermaLink="false">64ae63490ec9a30673ad44af</guid>
                
                    <category>
                        <![CDATA[ Open source ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Giovanni Marletta ]]>
                </dc:creator>
                <pubDate>Fri, 21 Jul 2023 19:41:22 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/italian/news/content/images/2023/07/Open-Source-for-Developers-Book-Cover--1--1.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>Articolo originale:</strong> <a href="https://www.freecodecamp.org/news/a-practical-guide-to-start-opensource-contributions/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Open Source for Developers – A Beginner's Handbook to Help You Start Contributing</a>
      </p><p>Cosa ti viene in mente quando senti il termine <strong>Open Source</strong>? Nel mondo della programmazione, open source è un termine generico per indicare un software open source (OSS). Un software open source è costruito su un codice sorgente accessibile a tutti che può essere visualizzato, modificato, ampliato e distribuito.</p><p>In questo articolo approfondiremo molti aspetti del software open source e del suo ecosistema. Parleremo di cosa ti serve per iniziare a contribuire all'open source, delle competenze necessarie, di come mantenere i progetti open-source, delle sfide, delle risorse e di alcuni progetti interessanti per iniziare.</p><p>Prima di iniziare, ecco qualche parola su di me e sul mio interesse per il mondo open-source.</p><p>Utilizzo quotidianamente progetti, prodotti e servizi open source e contribuisco ad alcuni di essi per migliorarli. Mi occupo anche di molti progetti open source per educare i principianti alla programmazione web.</p><p>Puoi consultare i progetti open-source che gestisco sul mio <a href="https://github.com/atapas">profilo GitHub</a>.</p><p>Questo articolo intende condividere con te la mia esperienza per aiutarti a iniziare a lavorare con l'open source, se non stai già contribuendo.</p><h2 id="come-funziona-l-open-source">Come funziona l'Open Source?</h2><p>I progetti open-source sono composti dalle seguenti persone ed elementi:</p><p><code>Manutentori del progetto</code>: i manutentori sono una o più persone che avviano il progetto open-source, lo gestiscono, prendono decisioni, fanno brainstorming di idee e lavorano a stretto contatto con i collaboratori, gli utenti e le piattaforme di marketing.</p><p>I manutentori del progetto avranno diritti di accesso e privilegi aggiuntivi per controllare vari aspetti del progetto.</p><p><code>Contributori del progetto</code>: quando i manutentori avviano un progetto open-source, sono i primi a contribuire. Man mano che il progetto cresce e più persone lo conoscono, cresce la volontà di contribuirvi.</p><p>Man mano che cresce, il progetto ottiene più collaboratori. Chiunque può esaminare il codice del progetto, modificarlo, richiedere una revisione e inserire le modifiche nel progetto.</p><p><code>Repository del codice sorgente e della documentazione</code>: il manutentore conserva il codice sorgente del progetto in un repository di codice sorgente centralizzato (ad esempio, GitHub). Questo aiuta tutti i collaboratori ad avere l'accesso necessario al codice per contribuire.</p><p><code>Licenza del progetto</code>: ogni progetto open source deve specificare una licenza di distribuzione per renderla chiara agli utenti/consumatori.</p><p>Esistono vari tipi di licenza e il manutentore può sceglierne una in base alle esigenze del progetto. Alcune licenze di distribuzione molto diffuse sono MIT, Apache License 2.0, GNU General Public License (GPL) 3.0 ecc.</p><p><code>Guida alla contribuzione</code>: un manutentore del progetto OSS crea una guida alla contribuzione per aiutare i collaboratori a comprendere il processo di pull request, gli standard, l'ambito e così via.</p><p><code>Guida al codice di condotta</code>: la guida al codice di condotta illustra le varie linee guida, la collaborazione, le aspettative di comportamento dei collaboratori e come approcciare e risolvere i problemi.</p><p><code>Cultura del progetto</code>: la cultura del progetto si evolve con la comunità del progetto. Sebbene i manutentori abbiano un ruolo importante, i collaboratori sono ugualmente responsabili del mantenimento di una sana cultura di apprendimento, condivisione e crescita.</p><p><code>Community</code>: man mano che il progetto cresce, la community si sviluppa intorno ad esso. Strumenti come GitHub Discussions e Discord sono famosi per organizzare interazioni basate sulla community.</p><p><code>Distribuzione</code>: un progetto open-source deve avere un modo per raggiungere gli utenti finali e i consumatori. Dovrebbe esserci un modello di distribuzione che aiuti il codice a tradursi in un prodotto finale da consegnare.</p><p><code>Utenti/Clienti</code>: gli utenti o i clienti sono i consumatori del prodotto che il team open-source costruisce utilizzando il codice sorgente.</p><p>Ora diamo un'occhiata all'immagine sottostante. Qui vediamo la community di un progetto open-source che comprende manutentori e collaboratori.</p><p>Il codice sorgente si trova nel repository centralizzato. I collaboratori fanno il <code>fork</code> (un termine che impareremo a breve) del <code>repository upstream</code> e contribuiscono. Una volta terminato il contributo, il manutentore del progetto lo integra al branch principale.</p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2022/07/opensource-model.png" class="kg-image" alt="opensource-model" width="600" height="400" loading="lazy"><figcaption>Una visione di alto livello del modello di lavoro Open Source</figcaption></figure><p>Non preoccupatevi se non conoscete termini come fork, branch, merge, ecc. Li impareremo presto in questo articolo. Continuate a leggere.</p><p>Ora cerchiamo di capire come il software open-source viene consegnato agli utenti/clienti.</p><p>L'immagine seguente mostra una delle tante possibilità ad alto livello. Un progetto open-source dovrebbe avere un meccanismo di build-package-deploy che utilizza il processo di Continuous Integration e Continuous Deployment (CI/CD).</p><p>Ogni volta che vengono apportate modifiche al codice nel branch principale (<code>main</code>), il flusso di lavoro CI/CD si avvia automaticamente. Costruisce il codice sorgente, lo impacchetta e lo distribuisce per renderlo accessibile agli utenti finali e ai clienti target.</p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://www.freecodecamp.org/news/content/images/2022/07/deploy.png" class="kg-image" alt="deploy" width="600" height="400" loading="lazy"><figcaption>Una visione di alto livello di come il CODICE SORGENTE arriva nelle mani degli utenti</figcaption></figure><p>Nota bene: il CI/CD o qualsiasi altro meccanismo di distribuzione non sono parte integrante dello sviluppo di software open source. Tuttavia, conoscerli aiuta a comprendere il modello di lavoro OSS da cima a fondo.</p><h2 id="cosa-significa-contribuire-all-open-source"><strong>Cosa significa contribuire all'Open Source?</strong></h2><p>Contribuire all'<code>Open Source</code> significa migliorare il progetto open source in qualsiasi modo. Una delle idee sbagliate che si possono avere sul contributo è che bisogna contribuire solo al codice sorgente. Ebbene, non è tutto qui.</p><p>Contribuire al codice sorgente di un progetto open source è solo un tipo di contributo che si può dare. Tuttavia, è possibile contribuire ad altre aree come:</p><ul><li>La documentazione del progetto. Migliorarla in modo che più collaboratori e utenti la trovino facile da gestire.</li><li>Testare l'applicazione, trovare i problemi e creare issue nel sistema di gestione dei problemi.</li><li>Partecipare alle revisioni del codice per aiutare il progetto a migliorare gli standard di codifica.</li><li>Scrivere unit test, test end-to-end e migliorare la qualità dell'applicazione.</li><li>Creare contenuti come articoli e video per diffondere la conoscenza del progetto.</li><li>Contribuire a costruire la community di persone interessate.</li></ul><p>Tutti questi elementi sono contributi cruciali per i progetti open source.</p><h2 id="i-vantaggi-dei-contributi-open-source"><strong>I vantaggi dei contributi Open Source</strong></h2><p>I contributi Open Source comportano una serie di vantaggi per gli sviluppatori. Alcuni vantaggi chiave sono:</p><ul><li>Ottenere la possibilità di migliorare le proprie skill.</li><li>Migliorare il software/l'applicazione con il codice e la documentazione.</li><li>Incontrare persone che la pensano allo stesso modo, creando network e community.</li><li>Comprendere i cicli di sviluppo e manutenzione delle applicazioni.</li><li>Imparare dai feedback delle pull request.</li><li>Imparare a gestire il proprio codice come open source.</li></ul><h2 id="miti-sull-open-source"><strong>Miti sull'Open Source</strong></h2><p>Ora conosciamo il modello Open Source e i suoi vantaggi. La prossima cosa che vogliamo imparare è come iniziare a contribuire all'Open Source, sia come <code>manutentori</code> del progetto che come <code>collaboratori</code>.</p><p>Prima di farlo, chiariamo alcuni miti sull'Open Source.</p><p>❌ <strong>Mito</strong>: Non so programmare. L'Open Source non fa per me.</p><p>✅ <strong>Realtà</strong>: l'Open Source non riguarda solo la programmazione! Hai molte opportunità di contribuire al miglioramento della documentazione, ai test, alla creazione di media, alla creazione di contenuti e molto altro ancora. Quindi, non restare indietro pensando che la mancanza di competenze di programmazione possa impedirti a contribuire all'OSS.</p><p>❌ <strong>Mito</strong>: So programmare ma non conosco la tecnologia utilizzata in questo progetto Open Source. Non posso contribuire.</p><p>✅ <strong>Realtà</strong>: Al contrario, è un'ottima opportunità per imparare qualcosa che non si conosce già! L'ecosistema Open Source è abbastanza paziente da fornirvi il tempo necessario per imparare e contribuire.</p><p>❌ <strong>Mito</strong>: L'Open Source non mantiene uno standard di livello aziendale.</p><p>✅ <strong>Realtà</strong>: non è affatto vero. Infatti, oggi molti software aziendali sono alimentati da software Open Source. Non è corretto pensare che i progetti Open Source non si preoccupino della qualità e degli standard.</p><p>❌ <strong>Mito</strong>: I progetti Open Source non sono facili da mantenere.</p><p>✅ <strong>Realtà<strong>:</strong></strong> Un progetto Open Source è sostenuto dai collaboratori. Un aspetto essenziale per un manutentore è stabilire le basi, creare una tabella di marcia, costruire la community e mantenere alta la motivazione.</p><p>Per molti progetti Open Source, i manutentori non devono nemmeno scrivere il codice. I collaboratori possono gestire lo sviluppo, a condizione che il manutentore fornisca il supporto necessario.</p><p>❌ <strong>Mito</strong>: Il software open source è sempre libero.</p><p>✅ <strong>Realtà<strong>: </strong></strong>La maggior parte lo è, ma non tutto l'OSS è libero. Ciò dipende dal tipo di licenza utilizzata dal progetto. Alcune licenze sono restrittive per dare libero accesso all'uso e alla distribuzione del codice in qualsiasi modo. È necessario prestare particolare attenzione alle informazioni sulla licenza di un progetto per capire "quanto" l'OSS sarà libero.</p><p>❌ <strong>Mito</strong>: L'Open Source è per i principianti.</p><p>✅ <strong>Realtà<strong>: </strong></strong>Molti sviluppatori pensano che l'OSS sia per i principianti e gli studenti. In realtà, tutti possono contribuire. Ha senso che un esperto in materia arricchisca un progetto Open Source con le proprie conoscenze ed esperienze.</p><h2 id="cosa-sapere-per-iniziare-a-contribuire-all-open-source"><strong>Cosa sapere per iniziare a contribuire all'open source</strong></h2><p>Gli sviluppatori devono conoscere poche cose fondamentali per iniziare rapidamente a lavorare con i progetti Open Source. Si tratta di prerequisiti facoltativi, ma se ne sarai a conoscenza, ti piacerà ancora di più contribuire all'Open Source.</p><h2 id="conoscere-le-basi-di-git">Conoscere le basi di Git</h2><p>Se sei già a conoscenza del significato di Git e del suo utilizzo principale, hai già fatto un bel po' di chilometri. Git è onnipresente nel mondo Open Source e non puoi ignorarlo.</p><p>È necessario conoscere almeno questi argomenti,</p><ul><li>Cos'è Git e come funziona?</li><li>Che cos'è un repository?</li><li>Come clonare un repository?</li><li>Come si fa a mettere in pratica le modifiche?</li><li>Come fare il commit delle modifiche?</li><li>Come scrivere messaggi di commit migliori?</li><li>Come risolvere i conflitti di merge?</li><li>Come eseguire il push delle modifiche a un repository remoto?</li><li>Come fare il pull delle modifiche dal repository remoto?</li></ul><p>Se sei alle prime armi con Git, ti consiglio questo video che ti aiuterà a imparare i concetti di Git e tutti gli usi sopra menzionati: <a href="https://www.youtube.com/watch?v=vWtu4mzUgQo">Demystifying Git for Beginners</a>.</p><h2 id="acquisire-familiarit-con-github"><strong>Acquisire familiarità con GitHub</strong></h2><p>Su <a href="https://github.com/">GitHub</a> ci sono oltre 128 milioni di repository pubblici. Una parte significativa di questi repository sono progetti Open Source. Il progetto Open Source a cui si vuole contribuire potrebbe essere presente anche su GitHub. Pertanto, è necessario imparare a gestire le cose su GitHub.</p><p>Come collaboratore di un progetto Open Source, devi sapere:</p><ul><li>Come fare il fork di un repository?</li><li>Come si trova l'URL per clonare il repository?</li><li>Come creare una Pull Request?</li><li>Come revisionare una "Pull Request"?</li></ul><p>In qualità di manutentore del progetto, è necessario conoscere:</p><ul><li>Come creare un repository?</li><li>Come aggiungere informazioni sulla licenza al progetto?</li><li>Come creare una guida alla contribuzione e una guida al codice di condotta?</li><li>Come impostare uno standard per la creazione delle issue e delle pull request?</li><li>Come fare il merge delle pull request?</li></ul><p>Puoi seguire la discussione su Twitter qui sotto. Ti spiega tutto passo per passo:</p><figure class="kg-card kg-embed-card"><iframe id="twitter-widget-0" scrolling="no" frameborder="0" allowtransparency="true" allowfullscreen="true" class="" title="Twitter Tweet" src="https://platform.twitter.com/embed/Tweet.html?creatorScreenName=tapasadhikary&amp;dnt=false&amp;embedId=twitter-widget-0&amp;features=eyJ0ZndfdGltZWxpbmVfbGlzdCI6eyJidWNrZXQiOltdLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2ZvbGxvd2VyX2NvdW50X3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9iYWNrZW5kIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19yZWZzcmNfc2Vzc2lvbiI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfZm9zbnJfc29mdF9pbnRlcnZlbnRpb25zX2VuYWJsZWQiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X21peGVkX21lZGlhXzE1ODk3Ijp7ImJ1Y2tldCI6InRyZWF0bWVudCIsInZlcnNpb24iOm51bGx9LCJ0ZndfZXhwZXJpbWVudHNfY29va2llX2V4cGlyYXRpb24iOnsiYnVja2V0IjoxMjA5NjAwLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3Nob3dfYmlyZHdhdGNoX3Bpdm90c19lbmFibGVkIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19kdXBsaWNhdGVfc2NyaWJlc190b19zZXR0aW5ncyI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdXNlX3Byb2ZpbGVfaW1hZ2Vfc2hhcGVfZW5hYmxlZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdmlkZW9faGxzX2R5bmFtaWNfbWFuaWZlc3RzXzE1MDgyIjp7ImJ1Y2tldCI6InRydWVfYml0cmF0ZSIsInZlcnNpb24iOm51bGx9LCJ0ZndfbGVnYWN5X3RpbWVsaW5lX3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9mcm9udGVuZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9fQ%3D%3D&amp;frame=false&amp;hideCard=false&amp;hideThread=false&amp;id=1440296182396309513&amp;lang=en&amp;origin=https%3A%2F%2Fwww.freecodecamp.org%2Fnews%2Fa-practical-guide-to-start-opensource-contributions%2F&amp;sessionId=3068f842df40bcda3c8d975a80ffc005fc6aac54&amp;siteScreenName=freecodecamp&amp;theme=light&amp;widgetsVersion=aaf4084522e3a%3A1674595607486&amp;width=550px" data-tweet-id="1440296182396309513" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 22px; vertical-align: middle; position: static; visibility: visible; width: 550px; height: 492px; display: block; flex-grow: 1;" loading="lazy"></iframe></figure><h2 id="imparare-a-fare-il-fork-di-un-repository"><strong>Imparare a fare il fork di un repository</strong></h2><p>Il fork è un altro concetto cruciale da comprendere. La maggior parte dei progetti <code>Open Source</code> non consente a un collaboratore di creare branch direttamente su un repository. Al contrario, il flusso di lavoro dei contributi può svolgersi in questo modo:</p><ul><li>Fare il fork del repository.</li><li>Clonare il repository</li><li>Eseguire le modifiche.</li><li>Ottenere le modifiche dall'UPSTREAM.</li><li>Creare una pull request dal repository modificato al repository principale.</li></ul><p>Nella mia esperienza di lavoro con molti collaboratori, la maggior parte di loro trova il concetto di forking un po' impegnativo.</p><p>Per imparare a fare il fork di un repository GitHub, è possibile consultare questo video tutorial: <a href="https://www.youtube.com/watch?v=h8suY-Osn8Q">How to Fork a GitHub Repository</a>. Inoltre, è possibile trovare questo <a href="https://github.com/atapas/fork-me">repository GitHub</a> per esercitarsi nel forking. È per principianti assoluti, per acquisire sicurezza nel fare il fork di un repository.</p><h2 id="imparare-a-risolvere-i-conflitti-di-merge"><strong>Imparare a risolvere i conflitti di Merge</strong></h2><p>Chiedete a qualsiasi sviluppatore cosa ne pensa della risoluzione dei conflitti di merge. Non è molto semplice, ma più li si affronta e più si impara. Capire il processo di risoluzione dei conflitti di merge, come ragionare e come risolvere un conflitto di merge.</p><p>Ecco una <a href="https://www.freecodecamp.org/news/resolve-merge-conflicts-in-git-a-practical-guide/">guida pratica con esempi per imparare a risolvere i conflitti di merge</a>. Dai un'occhiata.</p><h2 id="imparare-la-sintassi-di-markdown"><strong>Imparare la sintassi di Markdown</strong></h2><p>La documentazione è una delle esigenze principali di qualsiasi progetto Open Source. Un file <code>Readme.md</code> spiega il progetto, come configurarlo, eseguirlo, distribuirlo e così via.</p><p>Il file <code>Contributing.md</code> spiega come contribuire al progetto.</p><p>Il file <code>CODE_OF_CONDUCT.md</code> descrive cosa aspettarsi dal comportamento e dall'impegno di un collaboratore. Naturalmente, è possibile scrivere molti altri file <code>.md</code> in base alle esigenze del progetto.</p><p>L'acronimo <code>md</code> sta per markdown. È la sintassi usata per la documentazione in GitHub. È meglio imparare la sintassi di base per poter partecipare alla documentazione senza problemi.</p><p>Ecco un progetto open source che fornisce la sintassi di mark down da copiare e utilizzare. Ti consiglio di darci un'occhiata.</p><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://github.com/atapas/markdown-cheatsheet"><div class="kg-bookmark-content"><div class="kg-bookmark-title">GitHub - atapas/markdown-cheatsheet: A single place for all the markdown syntaxes I have learned so far.</div><div class="kg-bookmark-description">A single place for all the markdown syntaxes I have learned so far. - GitHub - atapas/markdown-cheatsheet: A single place for all the markdown syntaxes I have learned so far.</div><div class="kg-bookmark-metadata"><img class="kg-bookmark-icon" src="https://github.githubassets.com/favicons/favicon.svg" width="32" height="32" alt="favicon" loading="lazy"><span class="kg-bookmark-author">atapas</span><span class="kg-bookmark-publisher">GitHub</span></div></div><div class="kg-bookmark-thumbnail"><img src="https://repository-images.githubusercontent.com/498971132/875262cc-d687-4a77-9967-57fbb5d07b7a" width="1280" height="640" alt="875262cc-d687-4a77-9967-57fbb5d07b7a" loading="lazy"></div></a></figure><h2 id="coltiva-le-tue-soft-skill">Coltiva le tue soft skill</h2><p>L'<code>Open Source</code> è un campo fertile per molti sviluppatori che possono lavorare, imparare e costruire assieme. Come contributore, le tue competenze tecniche potrebbero non essere sufficienti per godere appieno dell'esperienza open source.</p><p>Parliamo di alcune soft skill indispensabili per gli sviluppatori.</p><ul><li><strong>Pazienza</strong>: la <code>pazienza</code> &nbsp;è una qualità indispensabile per gli sviluppatori. È necessaria quando si impara qualcosa di nuovo, si esegue il debug di un problema complesso, si lavora con altri, si negozia con qualcuno e si riceve/dà un feedback. A volte le cose non vanno al ritmo che ci si aspetta, quindi bisogna avere pazienza e valutare la situazione.</li><li><strong>Curiosità</strong>: una mente <code>curiosa</code> fa molta strada. Quando si contribuisce all'open source, le possibilità sono immense. È necessario essere curiosi per capire le cose. Questo non si applica solo alle sfide tecniche, ma anche al lavoro con le persone.</li><li><strong>Essere reattivi</strong>: nell'ecosistema Open Source, è possibile non incontrare e parlare con le persone quotidianamente, ma il lavoro deve andare avanti. È necessario essere <code>reattivi</code> alle domande, ai compiti, alle richieste e a tutto ciò di cui si è responsabili. Molte grandi iniziative muoiono solo a causa della mancanza di reattività da parte delle persone.</li><li><strong>Essere umili</strong>: l'<code>umiltà</code> è la chiave del successo. Chi è preparato ma non è umile spesso non riesce a lavorare in squadra.</li></ul><h2 id="come-iniziare-a-contribuire-ai-progetti-open-source"><strong>Come iniziare a contribuire ai progetti Open Source</strong></h2><p>Vediamo ora come iniziare con la contribuzione all'open source. L'elenco che segue fornisce i link e le risorse per iniziare subito a contribuire ad un progetto open source.</p><h3 id="github-explore"><strong>GitHub Explore</strong></h3><p>GitHub Explore mostra i repository in base ai propri interessi. È possibile impostare le notifiche per essere informati su un progetto.</p><p>Inoltre, è possibile cercare i repository per argomenti e tendenze. Usa GitHub explore per scoprire i progetti più pertinenti alle tue competenze, esigenze e aspirazioni. Puoi trovarlo qui: <a href="https://github.com/explore/">https://github.com/explore/</a></p><h2 id="come-contribuire-all-open-source-di-freecodecamp"><strong>Come contribuire all'Open Source di freeCodeCamp</strong></h2><p>Questo repository di freeCodeCamp è un gioiello in tutto e per tutto. Fornisce molte risorse e indicazioni per iniziare a lavorare con l'open source. Puoi trovarlo qui: <a href="https://github.com/freeCodeCamp/how-to-contribute-to-open-source">https://github.com/freeCodeCamp/how-to-contribute-to-open-source</a></p><h3 id="contributor-ninja"><strong>Contributor Ninja</strong></h3><p>Questo sito ti aiuta con un elenco di linguaggi di programmazione tra cui scegliere: JavaScript, HTML, Rust, Go e molti altri. Si ottengono schede di repository da selezionare. È un luogo semplice per iniziare. Puoi trovarlo qui: <a href="https://contributor.ninja/">https://contributor.ninja/</a></p><h3 id="first-contributions"><strong>First Contributions</strong></h3><p>Si tratta di un elenco enorme di progetti open source da cui cercare e filtrare. Dispone anche di una documentazione ben guidata per iniziare. Puoi trovarlo qui: <a href="https://firstcontributions.github.io/">https://firstcontributions.github.io/</a></p><h3 id="codetriage"><strong>CodeTriage</strong></h3><p>CodeTriage è un enorme elenco di progetti con issue aperte. Mostra una separazione dei problemi e dei documenti da sottoporre a triage. Il sito web è molto utile. Puoi trovarlo qui: <a href="https://www.codetriage.com/">https://www.codetriage.com/</a></p><h3 id="up-for-grabs"><strong>Up For Grabs</strong></h3><p>Questo è un elenco completo di progetti Open Source da cui scegliere in base ai propri interessi. Puoi trovarlo qui: <a href="https://up-for-grabs.net/#/">https://up-for-grabs.net/#/</a></p><h3 id="first-timers-only"><strong>First Timers Only</strong></h3><p>Se non hai mai contribuito a un progetto open source prima d'ora e stai iniziando, considera la lettura di questa pagina.</p><p>Si possono vedere molte delle fonti di cui abbiamo già parlato, ma la pagina è piena di motivazioni. Puoi trovarlo qui: <a href="https://www.firsttimersonly.com/">https://www.firsttimersonly.com/</a></p><h3 id="open-source-friday"><strong>Open Source Friday</strong></h3><p>Cosa farai questo venerdì o il prossimo? Che ne dici di investire qualche ora per contribuire al software che usi e ami? Dai un'occhiata a questo sito e registrati. Puoi trovarlo qui: <a href="https://opensourcefriday.com/">https://opensourcefriday.com/</a></p><p>Spero che le risorse siano state utili. Inoltre, puoi esplorare le discussioni su Twitter, potresti trovare altre informazioni al riguardo.</p><figure class="kg-card kg-embed-card"><iframe id="twitter-widget-1" scrolling="no" frameborder="0" allowtransparency="true" allowfullscreen="true" class="" title="Twitter Tweet" src="https://platform.twitter.com/embed/Tweet.html?creatorScreenName=tapasadhikary&amp;dnt=false&amp;embedId=twitter-widget-1&amp;features=eyJ0ZndfdGltZWxpbmVfbGlzdCI6eyJidWNrZXQiOltdLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X2ZvbGxvd2VyX2NvdW50X3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9iYWNrZW5kIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19yZWZzcmNfc2Vzc2lvbiI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfZm9zbnJfc29mdF9pbnRlcnZlbnRpb25zX2VuYWJsZWQiOnsiYnVja2V0Ijoib24iLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X21peGVkX21lZGlhXzE1ODk3Ijp7ImJ1Y2tldCI6InRyZWF0bWVudCIsInZlcnNpb24iOm51bGx9LCJ0ZndfZXhwZXJpbWVudHNfY29va2llX2V4cGlyYXRpb24iOnsiYnVja2V0IjoxMjA5NjAwLCJ2ZXJzaW9uIjpudWxsfSwidGZ3X3Nob3dfYmlyZHdhdGNoX3Bpdm90c19lbmFibGVkIjp7ImJ1Y2tldCI6Im9uIiwidmVyc2lvbiI6bnVsbH0sInRmd19kdXBsaWNhdGVfc2NyaWJlc190b19zZXR0aW5ncyI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdXNlX3Byb2ZpbGVfaW1hZ2Vfc2hhcGVfZW5hYmxlZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9LCJ0ZndfdmlkZW9faGxzX2R5bmFtaWNfbWFuaWZlc3RzXzE1MDgyIjp7ImJ1Y2tldCI6InRydWVfYml0cmF0ZSIsInZlcnNpb24iOm51bGx9LCJ0ZndfbGVnYWN5X3RpbWVsaW5lX3N1bnNldCI6eyJidWNrZXQiOnRydWUsInZlcnNpb24iOm51bGx9LCJ0ZndfdHdlZXRfZWRpdF9mcm9udGVuZCI6eyJidWNrZXQiOiJvbiIsInZlcnNpb24iOm51bGx9fQ%3D%3D&amp;frame=false&amp;hideCard=false&amp;hideThread=false&amp;id=1435590663035310086&amp;lang=en&amp;origin=https%3A%2F%2Fwww.freecodecamp.org%2Fnews%2Fa-practical-guide-to-start-opensource-contributions%2F&amp;sessionId=3068f842df40bcda3c8d975a80ffc005fc6aac54&amp;siteScreenName=freecodecamp&amp;theme=light&amp;widgetsVersion=aaf4084522e3a%3A1674595607486&amp;width=550px" data-tweet-id="1435590663035310086" style="box-sizing: inherit; margin: 0px; padding: 0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 22px; vertical-align: middle; position: static; visibility: visible; width: 550px; height: 297px; display: block; flex-grow: 1;" loading="lazy"></iframe></figure><h2 id="manutentori-di-progetti-open-source"><strong>Manutentori di progetti Open Source</strong></h2><p>Finora abbiamo visto il lato dei collaboratori open source. Questo articolo sarebbe incompleto se non toccassimo anche il lato dei manutentori dei progetti open source.</p><p>In qualità di manutentore del progetto, è necessario seguire determinati standard affinché gli altri possano conoscere e contribuire al repository del progetto.</p><ul><li>Fornire un nome chiaro e una descrizione del progetto. Inoltre, è necessario aggiungere gli argomenti che sono correlati al progetto.</li><li>Aggiungere un file <code>Readme.md</code> chiaro per spiegare gli obiettivi del progetto, come usarlo, come configurarlo e così via. Se il codice sorgente è il cuore di un repository, il file README ne è la faccia.</li><li>Creare un profilo della community. Aiuta i manutentori dei repository open-source a esaminare il lavoro e a capire come aiutarlo a crescere.</li><li>Stabilire un Codice di Condotta.</li><li>Creare una Guida per i Collaboratori.</li><li>Decidere i template delle Issue.</li><li>Creare un template per le Pull Request (PR).</li><li>Attivare GitHub Sponsors.</li></ul><p>Per conoscere questi standard in modo più dettagliato, è possibile consultare <a href="https://www.freecodecamp.org/news/increase-engagement-on-your-public-github-repositories/">questo articolo</a>.</p><h2 id="prima-di-concludere-"><strong>Prima di concludere...</strong></h2><p>Questo è tutto! Siamo giunti alla fine di questo articolo. Spero che tu l'abbia trovato utile e che ti abbia dato una motivazione sufficiente per iniziare a contribuire all'open source.</p><p>Prima di concludere, vorrei citare alcuni progetti e repository open source da consultare.</p><ul><li><a href="https://github.com/EddieHubCommunity">EddieHub</a></li><li><a href="https://github.com/reactplay">ReactPlay</a></li><li><a href="https://github.com/topics/hacktoberfest">Hacktoberfest</a></li><li><a href="https://github.com/firstcontributions/first-contributions">First Contributions</a></li><li><a href="https://github.com/deleteman/the-hive">The Hive</a></li></ul><p>L'elenco potrebbe continuare a crescere, ma mi fermo qui. Se ti è piaciuto leggere questo articolo e/o hai delle domande, vuoi metterti in contatto con me, puoi trovarmi in questi posti:</p><ul><li><a href="https://twitter.com/tapasadhikary">Seguimi su Twitter</a></li><li><a href="https://www.linkedin.com/in/tapasadhikary/">Connettiti su LinkedIn</a></li><li><a href="https://github.com/atapas">Scopri il mio lavoro su GitHub</a></li><li><a href="https://youtube.com/tapasadhikary">Iscriviti al mio canale YouTube</a></li></ul> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
