Bedste svar
Jeg tager dette.
Først af alt er jeg helt uenig i et svar (med 1K + opstemmer) i denne tråd sammen med linjerne, “ Hvis er du nybegynder, bidrager ikke til et open source-projekt på GitHub! Det er en blindgyde-venture, der fører til frustration og vrede !”
Hvis noget forårsagede frustration og vrede hos nogen, betyder det ikke, at den samme ting ville forårsage lignende reaktion i dig. Jeg er ked af det, men det var negativt potentielt.
Faktisk er at bidrage til open source noget, der adskiller dig fra nybegynder og mellemliggende eller erfaren. Det giver dig boost til at komme videre i din teknologi eller kodning. Selvfølgelig vil du ikke være begynder for evigt, gør du?
Jeg opfordrer stærkt begyndere til at bidrage til open source på GitHub og jeg Jeg viser nøjagtigt, hvordan du kan gøre det lige efter at have læst dette svar.
Mange tror, at bidrag til GitHub-projekter med open source nødvendigvis vil kræve, at de skriver en slags kode.
De får dette kunstige billede i tankerne, at et offentligt arkiv af et open source JavaScript-bibliotek eller en ramme ville have en slags problem eller fejl, og de bliver nødt til at rette den fejl, hvis de beslutter at bidrage.
Det er ikke sandt (hele tiden) .
Jeg plejede at få et lignende billede i mit sind, når jeg startede med at bidrage til open source på GitHub.
At bidrage til open source betyder ikke nødvendigvis at skrive kode.
- At give folk retningslinjer for at lære noget programmeringssprog kan også betragtes som open source-bidrag
- At vise mennesker sti til at blive front-end-udvikler kan også betragtes som open source-bidrag.
- Det faktum, at jeg skriver dette svar for at lære, hvad er ikke-traditionel måde at bidrage til open source-aktiviteter på GitHub kan også betragtes som mit bidrag til open source.
Nok af at tale. Lad mig give dig en idé om, hvordan du kan bidrage til open source lige nu.
Jeg begynder med at uddybe min personlige erfaring med at bidrage til et offentligt GitHub-arkiv.
Jeg er en del af nogle fora relateret til udviklerfællesskabet. Mange af dem. En dag var der denne fyr, der oprettede en tråd, der nævner:
“Jeg oprettede GitHub-lager med et mål om at levere 999 C-programmer til begyndere. Jeg oprettede 7 af dem. 992 mere at gå. “
Dette lød meget interessant for mig. Jeg klikkede hurtigt på hans repo-link og udforskede 7 programmer, han oprettede. De var virkelig begyndervenlige og tilpassede sig perfekt til hans mål at hjælpe folk, der begynder med C-programmering.
Jeg gaffede hurtigt hans GitHub-lager. Klonede den repo i min lokale maskine. Og oprettede et nybegyndervenligt C-program med løsning efter formatet og strukturen, som fyren fulgte for andre 7 programmer. Skubbet ændringerne til det forked arkiv. Lavede en pull-anmodning (PR) til den fyrs originale lager med en besked “tilføjet et andet begyndervenligt C-program med løsning”. Den fyr godkendte min PR-anmodning og flettede ændringer til sin mastergren. Næste dag gjorde jeg det samme med endnu et program.
Der går det. Mit open source bidrag. Ja. Jeg havde brug for at skrive kode til dette bidrag. Det var dog helt andet end det, jeg forestillede mig før. Jeg løste ikke noget avanceret niveau fejl eller problem i et eller andet berømt bibliotek eller en ramme. Jeg tænkte bare på et nybegyndervenligt program, som vi lærte på universitetet, gav løsningen til det, og det er det.
Du kan oprette GitHub-arkiv på din egen profil baseret på disse ideer:
- bedste ressourcer til at lære front-end udvikling (nævne artikellinks, bøger, videoressourcer, gratis kurser osv.)
- bedste automatiseringsskripter til opgave i python (kildeskripter online og saml dem ét sted , give kredit til originale forfattere)
- oversigt over forskellige databaser (uddanne folk i berømte databaser som MySQL, MongoDB, SQL Server, Oracle osv. Fortæl dem, hvorfor de skal vælge hinanden.)
- eller noget, du tror ville være lærerigt for hele internettet
Hvis du er interesseret i ReactJS, er du velkommen til at bidrage til mit GitHub-arkiv: UnnitMetaliya / 99-reactjs-projekt-ideer
Jeg arbejder på at levere 99 enkle projektideer, som folk kan udvikle ved hjælp af ReactJS-biblioteket. Har du en idé? Store. Gaffel mit lager. Opret mappe til din idé efter samme struktur som mappe # 001. Skub det til det lager, du gaffede. Lav en anmodning om træk til min mesterfilial. Og det er det.
tl; dr >> At bidrage til open source på GitHub kræver ikke nødvendigvis at skrive kode. Der er hundredvis af forskellige måder at bidrage til open source, bortset fra at skrive kode.
Svar
For det første er Open source-software en software, der kan bruges frit, ændret og delt (i en modificeret eller en ikke-modificeret form) af nogen.
At det er den teoretiske betydning af hvad open source er, den dybere betydning er i overensstemmelse med visionen om at holde tingene gennemsigtige for brugeren, så brugeren forstår fuldstændigt, hvad der foregår, og har derfor en chance for at gøre en forskel ved at tilføje den funktion, han / hun ønsker mere fra den bestemte software / hardware.
Det første trin i open source er at identificere den organisation, som du kan lide, eller hvis vision stemmer overens med det, du virkelig vil give verden tilbage. Hver af disse organisationer har deres egen vision og mission om at give noget tilbage til mennesker, jeg bidrager til Mozilla på grund af deres vision og deres mission, som jeg virkelig tror på, at give folk et internet uden grænser og holde nettet gratis.
Vores mission er at fremme åbenhed, innovation og muligheder på Internettet.
Hos Mozilla er vi et globalt samfund af teknologer, tænkere og bygherrer, der arbejder sammen om at holde Internettet i live og tilgængelig, så mennesker over hele verden kan informeres bidragydere og skabere af Internettet. Vi mener, at denne handling af menneskeligt samarbejde på tværs af en åben platform er afgørende for individuel vækst og vores kollektive fremtid.
Der er også mange andre organisationer som Fedora, Ubuntu, GCC, Python, OpenCV, KDE. Mange mennesker, der er i disse organisationer, arbejder udelukkende fordi missionen / visionen stemmer overens med deres tænkning, eller hvordan de tror, ville være den bedste til at give tilbage til samfundet som helhed.
Efter at have valgt organisationen, vil der være flere projekter, der er tilgængelige for dig at vælge imellem eller bidrage til, da Firefox er et af Mozillas store projekter, er der også mange andre projekter som MDN (Mozilla Developer Network), Firefox OS, Persona osv .., Organisationen af dit valg kan have en webside / wiki-side dedikeret til, hvordan du kommer i gang med at bidrage. Hos Mozilla har vi noget, der hedder Hvad kan jeg gøre for Mozilla [1]. Det hjælper med at tydeligt tage folk til deres interesser baseret på programmeringssprog efter eget valg osv., Så se efter noget lignende, der kan komme i gang, det næste trin er at kigge efter et par fejl, tage den krævede kildekode og bygge systemet på din specifikke udviklingsmaskine og endelig sende en patch.
Hovedforskellen imellem arbejde med kodebasen for en open source-organisation og kodebasen, der bruges under universitetet, er datastrukturer eller lignende kurser størrelsen på kodebasen. At finde ud af, hvilket indhold der er placeret, og hvilket kodesegment gør hvad er den største udfordring. Oprindeligt kunne det også være udfordrende at forstå kodebasen, selvom du måske kender programmeringssproget, men den smerten, der er taget, er det værd. Du vil have fantastiske mennesker til at hjælpe dig undervejs i processen, der måske tager lidt af deres fri for at hjælpe dig, hvis du går i den rigtige retning og ved, hvad du lige laver.
Ja, at bidrage til open source-projekter kræver, at du har en god viden om mindst et programmeringssprog, hvis du er villig til at springe for at bidrage til dets kodebase. Bortset fra dette, ret god læsefærdighed og tålmodighed til at læse gennem dokumentationen til hvert projekt, forstå et af de mange versionskontrolsystemer, det være sig git eller mercurial eller svn
Så vidt jeg ved, er der ” s intet kaldes en “korrekt” tilgang, undertiden kommer open source-bidrag fra et individ ind, fordi de bruger den bestemte software, og deres liv bliver lettere ved at integrere en bestemt funktion i denne software, så de integrerer den og bidrager den tilbage til den oprindelige kode base, forskellige mennesker har forskellige krav og tilpasser softwaren efter deres behov, nogle bidrager med deres ændringer tilbage i håb om, at det vil hjælpe en anden, nogle foretrækker at tage det op som et enkeltstående separat projekt. Den bedste måde at komme i gang på er at vælge projektet og være lidenskabelig for det.
f.eks.Tor-browseren er et projekt, der stammer fra Firefox, det er tilpasset til at give anonymitet og konverteres til et enkeltstående projekt.
Uanset hvad du vælger, skal det være noget, du bruger på en eller anden måde, på den måde ved du hvad du laver, og du ved også, hvordan softwaren fungerer, så det bliver lettere at korrelere kodenes funktion til dens faktiske funktion.
Et par forslag fra min side, når du går ind i open source-bidrag verden ville være
- Begynd at bruge Linux / Unix-baserede systemer.
- Hold dig til terminalen og nyd at arbejde derfra.
- Kend grundlæggende kommandolinjeartikler som man, grep og for enhver anden kommando har du en mandfil. (man file = manual, hvis du vil vide, hvordan du bruger en bestemt kommando, sig grep, skal du bare gøre `man grep )
- En god editor; vim v / s emacs-krig er altid der mellem udviklere, men du kan også gå med Sublime Text / Notepad ++
At bidrage til open source er en fantastisk følelse som udvikler, fordi du ved, at de små kodelinjer, du har skrevet, er derude, der påvirker livet for millioner af mennesker, der bruger softwaren.
En anden ting, der vil komme op i disse tider, er fanboys, jeg vil dele en oplevelse med dig Da vi bidrager til Mozilla, er spørgsmålet, som vi som evangelister [2] står overfor, stædige mennesker, der siger “Jeg bruger Chrome! Jeg kan ikke lide Firefox”
Cool, vi har absolut ikke noget problem med det. Vi bygger kun Firefox, fordi vi elsker det, og hovedformålet her handler ikke om hvilken browser du virkelig bruger, vi ville elske det, hvis du brugte Firefox, men det primære mål er at have et åbent web.
Et web, der er gratis, åbent, sikkert, privat og mest af alt, et web, der er vores.
Ser frem til at se dig sammen med Mozilla Community.
[1] Hvad kan jeg gøre for Mozilla [2] Task force / Evangelism