Qual è un buon progetto open source su GitHub per i principianti a cui contribuire?

La migliore risposta

Prenderò questo.

Primo di tutto, sono completamente in disaccordo con una risposta (con 1K + voti positivi) in questo thread insieme alle righe Se sei un principiante, non contribuire a un progetto open source su GitHub! È unimpresa senza uscita che porta a frustrazione e rabbia !”

Se qualcosa ha causato frustrazione e rabbia in qualcuno, non significa che la stessa cosa provocherebbe una reazione simile in te. Mi dispiace ma quella era una prospettiva negativa.

In effetti, contribuire allopen source è qualcosa che ti distingue dai principianti, dagli intermedi o dagli esperti. Ti dà la spinta per avanzare ulteriormente nel tuo viaggio tecnologico o di codifica. Ovviamente, non vuoi essere un principiante per sempre, vero?

Incoraggio vivamente i principianti a contribuire allopen source su GitHub e io ti mostrerò esattamente come puoi farlo subito dopo aver letto questa risposta.

Molte persone pensano che contribuire a progetti GitHub open source richiederà necessariamente loro di scrivere una sorta di codice.

Hanno in mente questa immagine artificiale che qualche repository pubblico di qualche libreria o framework JavaScript open source avrebbe qualche tipo di problema o bug e dovranno correggere quel bug se decidono di contribuire.

Non è vero (sempre) .

Avevo in mente unimmagine simile quando stava iniziando con il contribuire allopen source su GitHub.

Contribuire allopen source non significa necessariamente scrivere codice.

  • Dare alle persone linee guida sullapprendimento di un linguaggio di programmazione può anche essere considerato come contributo open source ion.
  • Mostrare alle persone il percorso per diventare sviluppatore front-end può anche essere considerato un contributo open-source.
  • Bene, il fatto che sto scrivendo questa risposta per insegnare quali sono i Il modo non tradizionale di contribuire alle attività open source su GitHub può anche essere considerato come il mio contributo allopen source.

Basta parlare. Lascia che ti dia unidea di come puoi contribuire allopen source in questo momento.

Inizierò elaborando la mia esperienza personale sul contributo a un repository GitHub pubblico.

Lo sono parte di alcuni forum relativi alla comunità di sviluppatori. Molti di loro. Un giorno, cera questo ragazzo che ha creato un thread menzionando:

“Ho creato il repository GitHub con lobiettivo di fornire 999 programmi in C per i principianti. Ne ho creati 7. 992 ancora da utilizzare. “

Mi è sembrato molto interessante. Ho rapidamente cliccato sul suo link repo ed ho esplorato 7 programmi che ha creato. Erano davvero adatti ai principianti e si allineavano perfettamente con il suo obiettivo, aiutare le persone che stanno iniziando a programmare in C.

Ho rapidamente biforcato il suo repository GitHub. Clonato quel repo nella mia macchina locale. E, ha creato un programma C adatto ai principianti con soluzione, seguendo il formato e la struttura che il ragazzo ha seguito per altri 7 programmi. Ha inviato le modifiche al repository biforcato. Ha fatto una richiesta pull (PR) al repository originale di quel ragazzo con un messaggio “aggiunto un altro programma C adatto ai principianti con soluzione”. Quel ragazzo ha approvato la mia richiesta di pubbliche relazioni e ha unito le modifiche al suo ramo principale. Il giorno dopo, ho fatto lo stesso con un altro programma.

Ecco fatto. Il mio contributo open source. Sì. Avevo bisogno di scrivere il codice per questo contributo. Tuttavia, era totalmente qualcosa di diverso da quello che stavo immaginando prima. Non ho risolto alcun problema o bug di livello avanzato in qualche famosa libreria o framework. Ho solo pensato a un programma adatto ai principianti che abbiamo imparato alluniversità, che ci ha fornito una soluzione e basta.

Puoi creare un repository GitHub sul tuo profilo basato su queste idee:

  • migliori risorse per apprendere lo sviluppo front-end (menzionare link ad articoli, libri, risorse video, corsi gratuiti ecc.)
  • migliori script di automazione delle attività in python (script di origine online e raccoglierli in un unico posto , dai credito agli autori originali)
  • panoramica di diversi database (istruisci le persone su database famosi come MySQL, MongoDB, SQL Server, Oracle ecc. Spiega loro perché dovrebbero selezionarne uno piuttosto che un altro.)
  • o qualsiasi cosa che pensi possa essere educativa per tutta Internet

Se ti piace ReactJS, sentiti libero di contribuire al mio repository GitHub: UnnitMetaliya / 99-reactjs-project-ideas

Sto lavorando per fornire 99 semplici idee per progetti che le persone possono sviluppare usando la libreria ReactJS. Hai unidea? Grande. Fork il mio repository. Crea una cartella per la tua idea seguendo la stessa struttura della cartella # 001. Spingilo nel repository che hai biforcato. Fai una richiesta pull al mio ramo principale. Ed è tutto.

tl; dr >> Contribuire allopen source su GitHub non richiede necessariamente la scrittura di codice. Esistono centinaia di modi diversi per contribuire allopen source oltre alla scrittura di codice.

Risposta

In primo luogo, il software open source è un software che può essere utilizzato liberamente, cambiato e condiviso (in una forma modificata o non modificata) da chiunque.

Essendo il significato teorico di ciò che è open source, il significato più profondo si allinea con la visione di mantenere le cose trasparenti per lutente in modo che il lutente capisce perfettamente cosa sta succedendo e quindi ha la possibilità di fare la differenza aggiungendo la funzionalità che desidera di più dal particolare software / hardware.

Il primo passo nellopen source è identificare lorganizzazione che ti piace o la cui visione è in linea con ciò che vuoi veramente restituire al mondo. Ognuna di queste organizzazioni ha la propria visione e missione per restituire qualcosa alle persone, contribuisco a Mozilla per la loro visione e la loro missione in cui credo davvero, per dare alle persone un Internet senza confini e per mantenere il web libero.

La nostra missione è promuovere lapertura, linnovazione e le opportunità sul Web.

In Mozilla, siamo una comunità globale di tecnologi, pensatori e costruttori che lavorano insieme per mantenere vivo e accessibile, in modo che le persone in tutto il mondo possano essere collaboratori e creatori informati del Web. Crediamo che questo atto di collaborazione umana attraverso una piattaforma aperta sia essenziale per la crescita individuale e il nostro futuro collettivo.

Ci sono anche molte altre organizzazioni, come Fedora, Ubuntu, GCC, Python, OpenCV, KDE. Molte persone che fanno parte di queste organizzazioni lavorano esclusivamente perché la missione / visione è in linea con il loro pensiero o come credono sarebbe il migliore da restituire alla società in generale.

Dopo aver scelto lorganizzazione, ci sarà più progetti disponibili tra cui scegliere o ai quali contribuire, Firefox è uno dei principali progetti di Mozilla, ci sono anche molti altri progetti come MDN (Mozilla Developer Network), Firefox OS, Persona ecc .., Lorganizzazione di la tua scelta potrebbe avere una pagina web / pagina wiki dedicata a come iniziare a contribuire, In Mozilla abbiamo qualcosa chiamato Cosa posso fare per Mozilla [1]. Aiuta a portare chiaramente le persone ai loro interessi in base al linguaggio di programmazione di loro scelta ecc., Quindi cerca qualcosa di simile che possa aiutarti a iniziare, il passo successivo è cercare alcuni bug, prendere il codice sorgente richiesto e costruire il sistema sulla tua particolare macchina di sviluppo e infine inviare una patch.

La principale differenza Tra il lavoro con la base di codice di unorganizzazione open source e la base di codice utilizzata durante le strutture dati delluniversità o corsi simili cè la dimensione della base di codice. Scoprire dove si trova il contenuto e quale segmento di codice fa la sfida principale. Inizialmente potrebbe anche essere difficile capire la base del codice anche se potresti conoscere il linguaggio di programmazione, ma ne vale la pena. Avrai persone straordinarie che ti aiuteranno durante il processo che potrebbero prendersi un po del loro tempo libero per aiutarti se “stai andando nella giusta direzione e sai cosa stai facendo”.

Sì, contribuire a progetti open source richiede che tu abbia una solida conoscenza di almeno un linguaggio di programmazione nel caso tu sia disposto a saltare per contribuire alla sua base di codice. Oltre a questo, abbastanza buona capacità di lettura e pazienza per leggere la documentazione di ogni progetto, comprendendo uno dei tanti sistemi di controllo delle versioni, sia esso git, mercurial o svn

Per quanto ne so, lì ” Non è niente chiamato un approccio “corretto”, a volte il contributo open source da parte di un individuo arriva perché usa il particolare software e la sua vita diventa più facile integrando una caratteristica specifica in questo software, quindi la integrano e la contribuiscono al codice originale base, persone diverse hanno requisiti diversi e personalizzano il software in base alle loro necessità, alcuni contribuiscono con le loro modifiche sperando che aiutino qualcun altro, altri preferiscono considerarlo come un progetto separato autonomo. Il modo migliore per iniziare è scegliere il progetto ed esserne appassionati.

es.Tor browser è un progetto derivato da Firefox, è stato personalizzato per fornire lanonimato e convertito in un progetto autonomo.

Qualunque cosa tu scelga, deve essere qualcosa che usi in qualche modo, in quel modo che conosci quello che stai facendo e sai anche come funziona il software, quindi diventa più facile correlare il funzionamento del codice al suo effettivo funzionamento.

Alcuni suggerimenti da parte mia quando entri nel Il mondo del contributo open source sarebbe

  1. Inizia a utilizzare sistemi basati su Linux / Unix.
  2. Attaccati al terminale e divertiti a lavorare da lì.
  3. Conoscere le basi cose da riga di comando come, man, grep e per ogni altro comando hai un file man. (man file = manual, se vuoi sapere come usare un comando specifico dì grep, basta fare `man grep`)
  4. Un buon editor; vim v / s emacs war è sempre presente tra gli sviluppatori, ma potresti anche usare Sublime Text / Notepad ++

Contribuire allopen source è una sensazione straordinaria come sviluppatore perché sai che quei piccoli le righe di codice che hai riscritto hanno un impatto sulla vita di milioni di persone che utilizzano il software.

Unaltra cosa che verrà fuori in questi tempi sono i fan, condividerò unesperienza con te , essendo un collaboratore di Mozilla, la domanda che noi evangelisti [2] affrontiamo è che le persone testarde dicono “Io uso Chrome! Non mi piace Firefox”

Fantastico, non abbiamo assolutamente alcun problema con questo. Realizziamo Firefox solo perché ci piace e lo scopo principale qui non è quale browser utilizzi veramente, ci piacerebbe che usassi Firefox, ma lobiettivo principale è avere un web aperto.

Un web che è gratuito, aperto, sicuro, privato e soprattutto un web che è nostro.

Non vedo lora di vederti con la community di Mozilla.

[1] Cosa posso fare per Mozilla [2] Task force / Evangelism

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *