Kuinka käyttää GitHub-merkkejä lopettaaksesi itsesi noobiksi

Impostor-oireyhtymä on todellinen, ja se vaivaa uusia kehittäjiä. Saamme läpi opetusohjelman, bootcampin tai jopa tutkinnon, mutta emme kuitenkaan välitä jakamasta koodiamme. Pelkäämme negatiivista palautetta koodisi laadusta. Kukaan ei kärsi tästä enemmän kuin itseoppineet kehittäjät. Koska meillä ei ole "todellista" tai "virallista" kokemusta tai koulutusta, katsomme koodimme olevan ala-arvoinen.

Olin siellä muutama kuukausi sitten. Työskentelin Harry Percivalin testikäyttöisen kehityksen kanssa Pythonin kanssa . E ven vaikka seurasin oikeus yhdessä opetusohjelman, olin itsetietoinen jakamisesta minun koodi. Vaikka sovellukseni toimisi odotetusti, en halunnut jakaa edistystäni. En halunnut jonkun soittavan minulle jostakin ilmeisestä virheestä, josta olin unohtanut. Halusin, että muut ihmiset nauttivat tuotteestani, mutta en halunnut heidän näkevän kuinka köyhä kehittäjä olin.

Kun pidin tauon omasta projektistani, aloin tarkastella joitain muita GitHubin projekteja. Löysin muutamia, joilla oli pieni kuva README-sivuillaan.

Koska olin noob, jonka olin, ajattelin, että tämä oli yksinkertaisesti kuva, jonka Linus Torvalds ojensi sinulle flash-asemalla, kun valmistuit ”Real Developer” -koulusta. Koskaan kerran ei tullut mieleeni napsauttaa sitä. Luulin, että se oli staattinen kuva, jota isännöitiin jossain arkistossa. Myöhemmin törmäsin projektiin, joka osoitti, että rakennus epäonnistui.

Miksi joku vie aikaa lisätä kuva, jonka mukaan heidän rakenteensa ei kulje? Miksi pyrkiä ottamaan toinen kuva alas, asettamaan tämä? Kuva, joka kertoo projektisi olevan rikki ja näyttää sen maailman nähtäväksi? Pelkästään uteliaisuudesta vedin READMEn raakamuodon. Näin tämän koodin:

[![Build Status](//travis-ci.com/username/projectname.svg?branch=master)](//travis-ci.com/username/projectname)

Olin tarpeeksi taitava markdownilla tunnistamaan, että tämä oli napsautettava linkki. Joten napsautin painiketta ja se vei minut Travis-CI: hen. Minulla oli järkevää kerralla. Tätä painiketta ei päivittänyt projektikehittäjä, Travis-CI päivitti sen. Se on dynaaminen painike.

Ensimmäinen merkki

Joten, kun sain selville rakennusmerkin Travis-CI: ltä, minulla oli oltava se projektissani. Loppujen lopuksi koko projektini oli kirjoittamista ja testien käyttöä. Joten miksi ei ole jotain, joka juoksi ne automaattisesti?

Joten asetin Travis-CI: n suorittamaan yksikkötestit, kun työnsin muutoksia GitHubiin. Aivan sen sivun yläosassa, jossa Travis-CI ajaa heitä, on merkki. Napsautin sitä ja sain merkinnän. Lisäsin sen README-tiedostooni. Navigoin projektisivulle GitHubissa ja VOILA! Oli ensimmäinen merkki. Olin koukussa!

Metsästys

Nautin siitä, että merkki oli selkeä merkki projektini nykytilasta. Halusin oppia lisää, joten lähdin etsimään muita merkkejä. Toinen yleinen merkki, jonka löysin, oli koodin kattavuus. Travis-CI voisi lähettää kattavuusraportin CodeCov-nimiselle työkalulle. Saatat saada kunniamerkin, joka kertoo testiesi kattavuuden, mikä korreloi sovelluksesi testaamiseen.

Löysin myös lisenssimerkit, ja lisenssimerkki oli järkevää saada vain, jos minulla oli lisenssi. Joten valitsin lisenssin ja lisäsin sen repoon. Sen saaminen vaati nopean Google-haun, ja löysin tämän pääsisällön kaikkien yleisten lisenssimerkkien kanssa.

Sotilaallisen turvallisuuden taustasta tiedän, että suurin osa haavoittuvuuksista johtuu vanhentuneista ohjelmistoista. Uutena kehittäjänä tiedän, että tämä pätee myös ohjelmistoihin, joista ohjelmistosi riippuu. Kuulin PyUpista Michael Kennedyn Talk Python to Me -podcastin kautta. Kun navigoin sivustolle, näin sanat, joita olin alkanut rakastaa nähdä, "Free For Open Source". Ollessani etsimässä uusia merkkejä, minulla oli onnea. Tosiaan, ne tarjoavat merkin, joten tietysti lisätään sen README-tiedostoon.

Lopuksi huomasin, että sinulla voi olla tyylimerkki. Olin aiemmin sekaisin Blackin kanssa, ja löysin esimerkin tyylimerkistä ja tiesin, että minun on oltava se. Oman rehellisyyden vuoksi halusin varmistaa, että koodini oli aina Blackin tyylin mukainen. Sain selville ennakkositoumukset, joita voisin käyttää koodauksen muotoiluun ennen edes sen tekemistä. Sukellettuani alas ennen sitoutunutta kanin reikää (joka myös ohjaa koodini rosvoa vastaan ​​turvallisuuden vuoksi ja lajittelee tuontini ja vaatimukset), tunsin olevani varma, että lisäsin mustan merkin README-tiedostooni.

Lopputulos

Ensimmäinen tulos metsästysmerkeistä on, että minulla on parempilaatuinen projekti . Lisäsin projektiin lisenssin, varmistin, että riippuvuuteni pysyivät ajan tasalla, ja pidin projektityylini yhteensopivana, koska halusin merkit.

Erityisesti olen luottavaisempi projektissani. Voin puhua siitä tietäen, ettei siinä ole aukkoja. Tiedän, että saan paljon vähemmän palautetta vastuuttomuksestani turvallisuudesta tai tyylini noudattamatta jättämisestä.

Yksinkertaisesti sanottuna tunnen paremmin koodistani, koska minulla on nuo GitHub-merkit.