Infobip Shift 2023: Kako pridonositi projektima otvorenog koda?

Infobip Shift 2023: Kako pridonositi projektima otvorenog koda?

Zadnje retke s Infobip Shift 2023 konferencije posvećujemo ljudima i inicijativama vezanima uz open source (otvoreni kod).

Ove godine, Shift je svoj program posebno obogatio temama iz područja umjetne inteligencije, za koje je rezervirana i cijela jedna pozornica. Prvi dan konferencije smo imali priliku čuti više o faktorima koji će dovesti do potrebe za novom ulogom inženjera koji mogu upravljati primjenom AI-ja u raznim industrijama.

Nastavno na to, pred kraj konferencije bilo je zanimljivo čuti predavanje od Aleksandre Sikore, developerice pri The Guild udruženju koje okuplja open source developere specijalizirane za GraphQL i API platforme. Aleksandra je predstavila trend prilagodljivih (malleable) aplikacija, fokusirajući se da objasni kako umjetna inteligencija (AI) čini pisanje i razvoj koda pristupačnijim krajnjim korisnicima.

Zašto bi samo profesionalci koristili AI?

Aleksandra smatra da će u skoroj budućnosti AI pomoći (i već pomaže) u premošćivanju jaza između tehničkih i netehničkih stručnjaka. Uz trenutna rješenja generativnog AI-ja potvrđuje se tako izjava poznatog AI istraživača i developera, Andreja Karpathyja koji navodi kako je najpopularniji novi programski jezik – engleski. Uz LLM-ove i GraphQL Aleksandra vidi da se sve više šire mogućnosti razvoja aplikacija koje nisu rigidne i fiksne.

Osim promjena korisničkog sučelja u izgledu i obliku, krajnji korisnik moći će mijenjati svrhu i mogućnosti aplikacija. Kao postojeći primjer za takvo što Aleksandra navodi poznatu platformu Notion, koja omogućuje korisniku da prilagodi virtualni radni prostor svom poslu, a za primjer daje i razne web ekstenzije, poput Wildcarda za Chrome.

Kao developerima, ne bi nam bilo prvi put da čujemo kako je neki kolega scrapeao neku web stranicu da bi lakše pregledao podatke, primjerice – oglase za nekretnine. Zašto slično ne bi mogao napraviti i običan korisnik koji pretražuje taj web?

Molimo da prihvatite sve kolačiće kako biste mogli vidjeti ovaj sadržaj

Taj trend fleksibilnih rješenja može se svesti pod zajednički nazivnik – spomenuti termin malleable koji je odavno poznat u programiranju, a koji označava sposobnost dinamične promjene veličine podataka i broja računalnih entiteta u aplikaciji. Aleksandra navodi kako ta prilagodljivost aplikacija danas može obuhvaćati mnogo više od podataka te da isto tako ona može biti za pojedine elemente manje ili više izražena. U konačnici, Aleksandra zaključuje kako će u budućnosti korisnici postati arhitekti vlastitih aplikacija, prilagođavajući ih svojim potrebama kako bi sami krojili svoje korisničko iskustvo.

A za sve one developere koji žele pomoći u tome i razvijati malleable aplikacije, upućuje na zajednice kao što su Malleable Systems Collective i Dynamicland.org

“Open source mi je pomogao da budem bolji inženjer”

Kad smo kod zaljubljenika u open source, jedno od zanimljivijih predavanja na glavnoj pozornici Shifta bilo je ono Eddieja Jaouda, pokretača open source (OS) zajednice EddieHub, koja se bavi promocijom i poticanjem razmjene najboljih praksi i znanja u području OS-a. Kao i mnogi OS entuzijasti, Eddie je ušao u to područje potpuno slučajno, kao hobist, no danas, 15 godina kasnije, zagovaranje OS-a mu je postalo svakodnevni posao.

Eddie je stoga kroz svoje predavanje pokazao developerima zašto je i danas OS relevantan, kako im može pomoći u karijeri te što (ne) trebate raditi kako bi postali priznati i dobri contributori u OS zajednici.

Meni je mnogo pomoglo da napredujem kao inženjer, vjerujem da će i vama.

Međutim, odmah je istaknuo da nije sve u kodu, već u kolaboraciji – te da upravo zato morate biti svjesni, iako to često nije jasno na prvu – da jedna osoba može napraviti razliku svojim doprinosom. Ističe također koliko je njemu značilo biti dio OS zajednice koja vrvi izvrsnim developerima.

Imate priliku učiti od sjajnih mentora i dobiti iznimno iskustvo, dodao je objašnjavajući kako je to iskustvo tim bogatije jer vam stižu različite perspektive sa svih strana svijeta. Naravno, to je i prilika da proširite svoju networking mrežu i ubrzate karijeru.

Maraton, a ne sprint.

Eddie u početku ističe da OS zajednici onboarding nije jača strana, ali jednom kada ste odradili osnove već možete doprinijeti – nije bitno na kojoj ste razini, jer će vam uskakati stariji članovi. Bitno je samo od nekud početi. Zato je Eddie nekoliko puta isticao da je kod samo dio projekta, da je bitan kontekst rada i doprinosa. Neki od zadataka koji već čine razliku su verifikacija postojećih bugova, pregledavanja pull requestova, ali i otvaranje pitanja kad nešto ne radi.

Jedna od važnijih lekcija njegovog predavanja bila je ona oko toga koliko se potrebno angažirati da biste mogli reći da doprinosite. Usporedio je tada OS s pranjem zubi.

O pranju zubi više i ne razmišljate, ušlo vam je u naviku. Iako kratko traje, veoma je važno i radite to svakodnevno… Jednako tako je i s otvorenim kodom – sudjelujete malo i često, ali morate biti konzistentni.

Naravno, postoje neki izazovi koje treba adresirati, dodaje Eddie. Svjestan je da je novacima u zajednici teško pronaći projekte koji im odgovaraju – da se razvijaju brzinom koja im odgovara, da koriste tech stack koji poznaju, i uostalom da su legitimni i aktivni. Isto tako, primjećuje da se novaci često boje da će nešto zeznuti pa objašnjava:

Ako i nešto razvalite u kodu, svaka čast, vjerojatno ste našli bug i sad će ga netko riješiti.

Kako biti dobar contributor na projektima otvorenog koda?

Za početak, važno je odabrati dobar projekt. Eddie savjetuje da pregledate što radi ekipa vezana uz projekte ili alate s kojima ste se već susreli. Naravno, pretraživanje GitHuba će vam tu biti glavno, a kad smo kod toga, dodaje kako većina first-issue projekata nije dobar odabir za prvi projekt, no da pretragu možete rafinirati tražeći one s etiketom “good first issue”.

Uz to, dodaje kako možete naći dobar projekt i tako što se uključite u zajednice, to može biti zbog hobija, neke ideje ili tehnologije. No, napominje, bez obzira što odabrali, da se fokusirate na jedan projekt i jednu zajednicu.

Što paziti kod odabira projekta? Kao prvo, je li contributor friendly odnosno je li zajednica općenito prijateljski nastrojena. Provjerite imaju li postavljene smjernice za ponašanje i doprinos projektu te koliko ih se drže.

Dobar trik za to je da provjerite pull requestove i pogledate one prihvaćene i odbijene. Oni koji su zatvoreni, i nisu prihvaćeni – otvorite ih i vidite zašto su zatvoreni. Mnogo toga ćete saznati iz načina kako je netko odbijen: je li to učinjeno korektno, uljudno, i s obrazloženjem.

Kako doprinijeti? Pregledavajte, sudjelujte, automatizirajte. Uvijek postoji nešto što se može automatizirati u kodu, dodaje Eddie. Osim toga, drugi suradnici na projektu voljet će vas još više ako se uhvatite automatizacije testova.

Kad je u pitanju pregledavanje pull requestova, Eddie upozorava da ih ne odobravate naslijepo, to je najbrži način da vas uklone s projekta. A kad smo kod stvari kojih se dobro držati, Eddie navodi par ključnih:

  1. Prije nego se uključite, pročitajte vodič za pridonositelje na projektu.
  2. Nikad ne koristite glavnu granu projekta i ne radite velike pull requestove.
  3. Pretražite postojeće probleme (issues) prije nego što postavite novi.
  4. Ne trebati DM-ati one koji održavaju projekt čim ste napravili pull request.
  5. Nemojte trčati za zelenim kvadratićima.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Mobilne aplikacije

ZET-ov štrajk iznjedrio nova digitalna rješenja za prijevoz po Zagrebu

Zagreb je jutros ostao bez redovitog tramvajskog i autobusnog prometa, no građani su brzo počeli tražiti alternativna rješenja. Uz organiziranje zajedničkih vožnji, pojavilo se i nekoliko digitalnih projekata koji pokušavaju povezati vozače i putnike.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Programiranje

Tim od šest developera, dva QA-a i jednog Product Ownera postaje prošlost

Florian Krause ima trideset godina iskustva u razvoju softvera, jedan propali startup i čvrsto mišljenje: tim od šest developera, dva QA-a i jednog product ownera postaje prošlost. Na The Geek Gatheringu u Osijeku objasnio je čime se takva postava zamjenjuje.

Što ste propustili

Pametni automobili

Napokon smo se provozali Verneovim robotaksijem!

Nakon što smo u Zagrebu bezuspješno pokušali uhvatiti Verneov robotaksi putem Uberove aplikacije, zvijezde su se posložile i mi smo dobili poziv koji se ne odbija.

Umjetna inteligencija

Tko zbog AI-ja i dalje ulaže u ljude, a tko otpušta 50% radne snage?

Dok neke tvrtke nastavljaju i zapošljavati i ulagati u AI, druge su odabrale samo potonje. Kako različite tvrtke pristupaju promjenama na tržištu, doznali smo na Automation Summitu.

Novost

Gamepires najavio otpuštanja, smanjuje tim koji radi na SCUM-u

Gamepires, koji stoji iza igre SCUM, smanjuje broj zaposlenih zbog zahtjevnih tržišnih uvjeta. Objava dolazi nekoliko mjeseci nakon što je studio preuzeo britanski Splash Damage.

Vodič

Imate pretplatu na AI alate? Evo što računovođe kažu o ispravnom evidentiranju

U novoj kolumni Bruno Cvitanović, direktor računovodstvenog i konzultantskog servisa Brojevi objašnjava kako računovodstveno tretirati AI alate, što vrijedi za poduzetnike izvan sustava PDV-a i na koje pogreške treba paziti.

Veliki intervjui

Ako AI može napraviti film ili igru, što ostaje kreativcima? Odgovara CEO Nanobita

Može li umjetna inteligencija promijeniti način na koji nastaju filmovi i igre, a da pritom ne žrtvujemo kvalitetu priče i kreativnu viziju? Nanobit već testira odgovor na to pitanje, razvijajući AI produkcijske procese koji otvaraju mogućnost stvaranja sadržaja velikom brzinom.

Netokracija Podcast

Dekan FER-a: AI ne može zamijeniti temeljno znanje inženjera

Umjetna inteligencija mijenja način na koji radimo, ali bez temeljnih znanja nema ni kvalitetnih inženjera ni ozbiljnog tehnološkog napretka. U razgovoru s dekanom FER-a otkrivamo zašto je važno ulagati u istraživanje i razvoj, kako povezati fakultete i industriju te gdje se otvaraju nove prilike za Hrvatsku – od robotike i fizičke umjetne inteligencije do razvoja visokotehnoloških proizvoda.