Osallistuminen avoimen lähdekoodin projektiin: Miten päästä alkuun

Avoimen lähdekoodin projektit ovat synnyttäneet joukon hyödyllisiä ohjelmistoja vuosien varrella. Monet nykypäivän hienoista tekniikoista syntyivät avoimen lähdekoodin kehityksestä! Android, Firefox, VLC-mediasoitin, MongoDB, Linux, Docker ja Python vain muutamia mainitakseni.

Jopa monet tekniikan jättiläisistä ymmärtävät edun ja antavat työntekijöilleen vapaapäivän ja omistavat aikansa avoimen lähdekoodin projekteihin. Itse asiassa monilla on itse avoimen lähdekoodin projekteja.

Suurin osa avoimen lähdekoodin projektien avustajista ei kuitenkaan toimi tekniikan jättiläisten parissa; kuka tahansa voi jättää jälkensä tärkeälle avoimen ohjelmiston kappaleelle tai luoda oman ”seuraavan suuren asian”. Osallistuminen avoimen lähdekoodin projektiin voi myös auttaa sinua parantamaan taitojasi, oppimaan jotain uutta, saada mentorointia tai muodostamaan elinikäisiä ystävyyssuhteita. Avoimen lähdekoodin hankkeisiin osallistumisen tulisi olla molemminpuolisesti hyödyllisiä sekä lyhyellä että pitkällä aikavälillä. Monet yritykset palkkaavat aktiivisesti kokopäiväisiä kehittäjiä niiltä, ​​jotka osallistuvat eniten projektiin, ja niin tekeminen voi olla hieno tapa osoittaa taitosi ja oppia uusia.

Tämä artikkeli yhdistää muutamia vinkkejä, jotka jaamme niiden kanssa, jotka haluavat olla mukana MindsDB: ssä, ja vaikka jokainen projekti on erilainen, toivottavasti nämä ideat auttavat sinua osallistumaan mihin tahansa avoimen lähdekoodin projektiin.

MindsDB: n GitHub-sivu

Ennen ensimmäisen panoksesi tekemistä

1. Arvioi itsesi:

Ensimmäinen askel on arvioida kaikki tekniset tai muut kuin tekniset taidot, joita sinulla on tai haluat parantaa. Kysy itseltäsi, mihin voin lisätä eniten lisäarvoa? Tämä voi auttaa suoraan koodin kirjoittamisessa, virheiden testaamisessa tai jopa auttaa parantamaan dokumentaatiota, jotta muut voivat käyttää ohjelmistoa tehokkaammin.

2. Tutustu GitHubiin

Lähes kaikki avoimen lähdekoodin projektit käyttivät versionhallintajärjestelmää, työkalua, joka auttaa uuden koodin sulauttamisessa projektiin (tärkein ”arkisto”). Tavallisesti yhteistyö keskittyy verkkosivustoon, joka isännöi keskitettyä arkistoa. Näihin verkkosivustoihin kuuluvat Github, Bitbucket ja Gitlab. Github ajatteli, että Github on ylivoimaisesti suosituin verkkosivusto ja jota käytämme täällä MindsDB: ssä.

Yleisesti ottaen versionhallintajärjestelmät antavat mahdollisuuden seurata kaikkia projektin muutoksia tallentamatta useita tiedostoja. Tee tili Githubissa, kirjaudu sisään ja tutustu verkkosivun yläosassa oleviin erilaisiin välilehtiin. Täältä löydät tietoa Githubista, kehitysoppaista, avoimen lähdekoodin projekteista, tapahtumista, konferensseista jne. Voit oppia kaiken GitHubin perusteista seuraamalla tätä opasta täällä.

3. Etsi merkityksellisiä projekteja ja liity yhteisöön

Etsi osuvia projekteja Githubista skil1si perusteella. Voit käyttää Github Explore -sovellusta tähän tarkoitukseen tai kirjautua Code Triage -sovellukseen saadaksesi sähköpostin erilaisesta numerosta joka päivä. Kun valitset aloitettavan projektin, etsi projekti, jota ylläpidetään aktiivisesti (paljon sitoutuneita) ja jolla on paljon asioita. Kun olet löytänyt asiaankuuluvat projektisi, Star & Fork-projekti, tilaa se postituslistalle ja löysälle kanavalle. Tämä on paras tapa saada apua, jos olet jumissa projektin perustamisessa tai ensimmäisen panoksesi tekemisessä.

Ensimmäisen panoksesi tekeminen

1. Pelaa ohjelmistolla: Löydä vikoja

Kokeile ensin ohjelmistoa, asenna se ja tee pelata, yritä rikkoa se, katso jos se tekee sen, mitä sanotaan laatikolla. Tämä on loistava paikka, jossa voit alkaa tuottaa lisäarvoa helposti ilmoittamalla löytämistäsi ongelmista. Jokaisella projektilla on todennäköisesti hiukan erilainen malli ongelmien ilmoittamiseen, mutta olennaisesti ne kaikki sisältävät samanlaisia ​​tietoja. (Löydät MindsDB: n kysymysmallin täältä)

2. Tutki olemassa olevia ongelmia

Kun olet selvittänyt projektin, johon haluat osallistua, tutustu sen Github-arkistoon, lue asiakirjat ja siirry aiheiden välilehteen. Täältä löydät kaikki avoimet kysymykset, joissa voit työskennellä. Nämä asiat voivat olla aloittelijatasolta eteenpäin. Jos arkistoa ylläpidetään asianmukaisesti, asiat merkitään merkinnöillä ”aloittelija”, “ensikertalaiset”, “apua etsivät” jne., Jotta voit työskennellä helpoimmissa tehtävissä saadaksesi luottamusta ja kokemusta projektista.

3. Auta parantamaan dokumentaatiota

Sinun ei kuitenkaan tarvitse koodata heti. Voit osallistua dokumentointiin, luoda kehittäjäoppaan, auttaa muita ihmisiä ratkaisemaan heidän ongelmansa jne. Lue ohjeet. Jos tunnet jotain puuttuvan, se voi olla loistava ensimmäinen paikka osallistua. Voit joko nostaa esiin ongelman tai, jos olet tarpeeksi luottavainen, voit lisätä puuttuvat osat itse. Voit katsoa MindsDB: n asiakirjoja täältä.

4. Ehdota uusia ominaisuuksia

Jos pidät projektista ja pidät sitä hyödyllisenä, voit myös alkaa pyytää uusia ominaisuuksia projektin parantamiseksi. (Löydät mallimme täältä) Tai vielä parempaa, voit yrittää lisätä ne itse.

Katedraali ja basaari

Klassinen kirja OSS: stä on katedraali ja basaari. Se tutkii basaari-tyylin kehitystä, alhaalta ylöspäin suuntautuvaa lähestymistapaa, joka antaa valtaa kehittäjille ja käyttäjille. Vertaamalla sitä katedraalityyliin, ylhäältä alas suuntautuva lähestymistapa, jossa valta on johtajilla ja tuoteomistajilla.

Juuri nämä ideat saivat aikaan lähestymistapoja, kuten kuvattiin ketterässä manifestissa. Mutta riippumatta siitä, kuinka monet yritykset ovat yrittäneet jäljitellä ”basaari” -lähestymistapaa kehitykseen, he eivät voi tehdä sitä niin hyvin kuin avoimen lähdekoodin projektit.

Yritysprojektien maailmassa arkkitehdit, johtajat ja tuoteomistajat johtavat tietä. Avoimen lähdekoodin maailmassa käyttäjät ja kehittäjät määrittelevät eritelmät.

Avoimen lähdekoodin ohjelmisto on hieno, koska se hyödyntää kehittäjiensä ja käyttäjiensä "kollektiivista älykkyyttä". Suurin osa avoimen lähdekoodin projektin kehittäjistä johtuu sen ydinkäyttäjäkokonaisuudesta, suurin osa avoimen lähdekoodin projektin “johtajista” on yksinkertaisesti kehittäjiä, jotka esittävät eniten ideoita ja koodia.

Tämä "basaari" -lähestymistapa ei ole välttämättä parempi kuin "katedraali" -lähestymistapa, mutta se on kokeilun arvoinen järjestelmä. Se voi antaa uudelle kehittäjälle paljon valtaa ohjelmiston suhteen riippumatta ulkoisista perusteista, kuten ikä tai ikä organisaatiossa. Ainoa vaihtomerkki on koodi, sitä arvokkaampi on panos, sitä enemmän vaikuttaa suunnitteluun.

Jos ei muuta, sinun on työskenneltävä joidenkin avoimen lähdekoodin projektien kanssa kokeaksesi tämä alhaalta ylöspäin suuntautuva ohjelmistosuunnittelutyyli.

Seuraavat tavoitteet avoimen lähdekoodin kehittäjänä

1. Osallistu konferensseihin

Avoimen lähdekoodin kehittäjänä voit osallistua koodaukseen ja tekniikkaan liittyviin konferensseihin ja tapahtumiin. Voit tutustua Github Explore -tapahtuman erilaisiin tapahtumiin ja yrittää osallistua läheisiin tapahtumiin. MindsDB järjestää kokouksia koko vuoden 2019 ajan; Jos haluat pysyä ajan tasalla kaikesta MIndsDB: stä, voit tilata postitusluettelomme täältä

2. Hanki palkka avoimen lähdekoodin kehittämisestä

Yleisesti ottaen sinulle ei makseta avoimen lähdekoodin kehittämisestä, koska suurin osa tehdystä työstä on vapaaehtoista. Jos sinulla ei ole varaa viettää palkatonta aikaa avoimen lähdekoodin kehittämiseen, voit joko keskustella työnantajasi kanssa ja esitellä idean projektista, joka voi kiinnostaa myös työnantajaasi, tai löytää projektin, joka maksaa avoimen lähdekoodin kehittäjälle. Voit oppia lisää Githubin oppaasta maksamaan avoimen lähdekoodin kehittämiseen. Monet yritykset (mukaan lukien MindsDB) myös palkkaavat tai maksavat parhaita avustajia työstään.

3. Loista CV: si, ole mentorina ja liity avoimen lähdekoodin kilpailuihin

Sinun tulisi mainita kaikki projektisi, joihin olet osallistunut, ansioluettelossasi tai lisätä linkki GitHub-tiliisi CV: hen tai saatekirjeeseen. Useimmat työnantajat ovat vaikuttuneita tällaisista tunnustuksista ja mieluummin tällaisia ​​ehdokkaita palkkaamaan.

Voit myös tulla mentoriksi ihmisille, jotka ovat uusia avoimen lähdekoodin kehittämiselle. On aika antaa takaisin yhteisölle ja antaa ohjeita niille, jotka ovat vasta alkamassa. On olemassa useita ohjelmia, joissa voit valita mentoriksi, esimerkiksi Google Summer of Code, Rails Girls Summer of Code, Outreachy jne. Tai auttamalla ihmisiä vain vastaamalla postituslistoihin tai StackOverflow-kyselyihin.

Adam Carrigan on MindsDB: n perustaja, helppokäyttöinen työkalu koneenoppimisen lisäämiseen projektiisi ja tietohaasteiden ratkaisemiseen. Seuraa minua Twitterissä

Voit myös seurata projektiamme GitHubissa ja Twitterissä