Nadaljujemo serijo o različnih načinih, kako lahko spoznamo tehnične vidike Bitcoina, v tem članku se bomo osredotočili na dobra prva vprašanja v repozitoriju Bitcoin Core GitHub.

Bitcoin Core je splošno priznano kot referenčna izvedba za Bitcoin. Čeprav se ime “Bitcoin Core” ni uporabljalo do 2013, stranka lahko izsledi svoje korenine že do prve izdaje Satoshi Nakomoto leta 2009. Druge izvedbe Bitcoinov, kot so libbitcoin (C ++), bcoin (Javascript) in btcd (Go), so bile ustvarjene pozneje.

Spoznajte GitHub

Bitcoin Core je odprtokodni projekt. Kodo in dokumentacijo si lahko ogleda in prenese vsak, ki ima internetno povezavo. Bitcoin Core (in številni drugi programski projekti) uporabljajo odprtokodni in lastniški sistem za nadzor različic Git za sledenje spremembam v kodni bazi med razdeljenimi sodelavci.

Git je razvil ustvarjalec jedra Linux Linus Torvalds. Nasprotno pa GitHub (ki ga je nedavno kupil Microsoft) ponuja lastniško programsko opremo, ki ponuja priročna orodja in družbene funkcije okoli protokola Git. Bitcoin Core zaradi svojega stalnega preživetja ni odvisen od GitHub-a, čeprav bi bilo neprijetno in moteče, če bi projekt v prihodnosti nenadoma premaknili ali preprečili uporabo programske opreme GitHub.

V času Microsoftove pridobitve GitHub-a je bilo diskusija v skupnosti Bitcoin in drugih odprtokodnih projektih, ali naj se odmaknejo od kakršne koli prihodnje odvisnosti od GitHub-a. To stališče postaja vse bolj priljubljeno z večjim številom sodelavcev in potencialnih sodelujočih prepovedana uporabe programske opreme GitHub. Obstaja tudi možnost, da bi Microsoft naredil prvi korak in prepovedati celotne projekte če jih dojemajo kot politično sporne. Čas bo pokazal, ali Bitcoin Core in druge Bitcoin izvedbe še naprej uporabljajo GitHub-ove dodobra oblikovane in uporabniku prijazne funkcije v prihodnjih letih.

Poiščite “dobro prvo številko”

Ena od teh funkcij je izdaja GitHub, ki se uporablja za napovedovanje in sledenje napakam, izboljšavam in zahtevam. Vsak uporabnik GitHub lahko ustvari težavo, čeprav je priporočljivo, da jo odpre šele, ko jo razišče in pogovori z obstoječimi sodelavci na IRC. Za začetek dela na težavi vam ni treba zahtevati dovoljenja. Če pa to storite, vas prosimo, da to vprašanje komentirate, da spodbudite sodelovanje z drugimi sodelujočimi. Prav tako je dober način, da zaprosite za pomoč, če in ko jo potrebujete.

Namen “Dobra prva številka” Oznaka označuje, katere izdaje so primerne za novega sodelavca, ki morda globoko ne razume kode. Dobra prva številka ni namenjena začetnikom razvoja programske opreme. Potrebovali boste vsaj osnovno znanje Git in v idealnem primeru tudi znanje C ++ in / ali Pythona, glede na to, da je kodna baza Bitcoin Core napisana v teh jezikih.

Dobre prve izdaje za Bitcoin Core poudarjajo “koristne veščine” za reševanje te težave. Dobro je, če se za učenje prispevkov, povezanih s kodo, naučite jezika C ++ in / ali Pythona, če pa teh jezikov ne obvladate, se lahko odločite za začetek tako, da izboljšate dokumentacijo ali poiščete dobro prvo izdajo, ki skript lupine, Samodejno ali CMake izkušnje.

“Napačne napake” v primerjavi z “resničnimi” številkami

Nekateri začnejo s popravljanjem osnovnih napak v imenih spremenljivk, komentarjih ali dokumentaciji. Jeremy Rubin je se pošalil da namerno pušča tipkarske napake v svojih prispevkih, tako da jih lahko novi sodelavci najdejo in popravijo. Čeprav je to en način, da začnete kot novi sodelavec, je bolje, da se osredotočite na dobra prva vprašanja, namesto da oddate zahteve za vlečenje (PR) za tipkarske napake.

Dobre prve izdaje so obstoječi sodelavci izpostavili kot nekaj, kar manjka in za projekt pomeni veliko vrednost. Ne bodo ustanovljeni za prepoznavanje napak pri napakah, obstoječi sodelavci in vzdrževalci pa bi svoj čas raje usmerili v pregledovanje in združevanje prednostna naloga za pregled povlecite zahteve. (Zahteve za vlečenje so predlagane spremembe sodelavcev, ki jih vzdrževalci združijo šele po pregledu in kadar je za to dovolj soglasja.) 

Zato bi bilo bolje, če bi napake napak popravili kot del bolj vsebinske zahteve za vlečenje. Kot smo že omenili, se je treba spomniti, da je pregled obstoječih PR na splošno bolj dragocen kot predložitev novih. John Newbery priporoča, da je dobro pravilo, da pregledate 5–15 PR-jev za vsak PR, ki ga oddate osebno. V času pisanja je približno 300 odprtih zahtev in 700 odprtih vprašanj, ki jih je treba preizkusiti in pregledati.

Veliko priložnosti za vadbo in učenje

Fabian Jahr, nedavni novi sodelavec Bitcoin Core, je ugotovil, da je glavna spretnost, ki jo pri novih sodelavcih pogosto primanjkuje, zadostno znanje Git, kot je sposobnost skvoš. Sodelujoči morajo v ukazno vrstico vnesti ukaze Git. Če ste začetnik ukazne vrstice in / ali Git-a, je najbolje, da opravite vaje in vadite na drugih projektih, za katere ne veljajo omejitve virov Bitcoin Core.

Veliko jih je Vadnice za Git na spletu (nekateri so brezplačni) in Justin Moon’s Mooniverziteta tečaj (plačan) vam bo pomagal tudi iz ukazne vrstice spoznati predpogoje za interakcijo z Bitcoin Core in prispevanje k njemu. Ne bojte se zaprositi za pomoč pri nedavnih novih sodelujočih v spletu ali na vašem lokalnem seminarju Socrat, če potrebujete nadaljnja navodila.

Prositi za pomoč

Eden od izzivov pri vključevanju novih sodelavcev je, da lahko naloge, ki bi zahtevale, da bo izkušen sodelavec opravil kratek čas, novemu sodelavcu vzamejo veliko daljše obdobje. To zahteva, da novi sodelavci vztrajajo, kadar se srečujejo z izzivi, in po potrebi prosijo za pomoč. Nedavni novi sodelavci v Bitcoin Core so lahko dobro prvo pristanišče, saj bodo morda lahko rešili vaš problem; v nasprotnem primeru bi vas morali usmeriti k ustreznemu dolgoročnemu sodelavcu. Lahko tudi komentirate težavo, s katero se ukvarjate, da označite, da potrebujete pomoč.

V intervjuju za Vlad Costea za revijo Bitcoin je inženir Chaincode Labs Carl Dong spomnil na ustanovitev IFTTT e-poštno opozorilo, ki bi opozorilo na vsako novo izdajo “dobre prve izdaje”, ki so jo objavili obstoječi sodelavci. To je bila ena izmed strategij, s katerimi je začel z razvojem Bitcoinov in določil nekaj mini projektov, za katere je imel znanje, s katerimi je lahko prispeval. Dong je od takrat ustvaril Twitter račun @GoodFirstIssues ki jih lahko vsakdo spremlja za obvestila o novih dobrih prvih številkah.

Hvala Jonu Atacku in Marcu Falkeju za prispevek k temu članku.