U povodu Dana programera, pitali smo ih zašto (ne)vole Rust, Ruby i Docker

Infobip ❤️ Netokracijašto akvizicija znači za vas - i nas?

U povodu Dana programera, pitali smo ih zašto (ne)vole Rust, Ruby i Docker

Žele naučiti Rust, Ruby ih više uopće ne zanima, a bez Dockera ne mogu više zamisliti svoj posao. Tako su u anketi Stack Overflowa rekli programeri iz 180 zemalja, a mi smo pitali njih trojicu koji svakodnevno rade s tim tehnologijama da nam kažu zašto.

Dragi programeri, sretan vam vaš dan! Dvjestopedeset šesti dan u godini, odnosno 13. rujna (12. kad je godina prestupna) proglašen je Svjetskim danom programera jer je to 256. dan u godini (što je dva na osmu). Na njihov dan programerima obično damo priliku da oni komentiraju trendove i smjer industrije, što im se u programiranju sviđa, a što ne, koje alate, vole, a koje ne vole…

Kao orijentir i ove godine uzmimamo anketu koju među programerima tradicionalno provodi Stack Overflow. S obzirom na to da da je ovogodišnje istraživanje Stack Overflow Developer Survey ispunilo 73.268 programera iz 180 zemalja, možemo ga smatrati pouzdanim izvorom informacija o programerskim preferencijama. Među ostalim, pitali su ih ne samo koje alate i tehnologije koriste, nego i koje od tih baš vole, koje ne vole ili koje ne koriste, a voljeli bi naučiti.

Među najpopularnijim tehnologijama, odnosno onima koje programeri u svojoj svakodnevici najviše koriste, nema puno iznenađenja – Javascript je najkorišteniji programski jezik (već desetu godinu!), PostgreSQL i MySQL najkorištenije baze, AWS najkorištenija cloud platforma, a od frameworka najviše se koriste Node.js i React.js.

“Rust je moderan i moćan, ali nije za početnike”

Međutim, uvijek je zanimljivije baciti pogled na popis tehnlogija i alata koji su Most Loved, Dreaded and Wanted, odnosno – u čemu je programerima užitak raditi, čega se groze, a što ne koriste, ali bi voljeli naučiti. Pa je tako Rust već sedam godina zaredom omiljeni programski jezik – iako nije među najkorištenijima (samo 8,8% ispitanih profesionalnih developera izjasnilo se da rade u Rustu), čak 87% onih koji ga koriste ga vole. Rust predvodi i ljestvicu jezika koje bi programeri voljeli naučiti – u tijesnoj borbi s Pythonom, Rust je zauzeo prvo mjesto sa 17,6 % u odnosu na Python kojega bi voljelo naučiti 17,59% profesionalnih developera koji rade u nekim drugim jezicima.

Erick Daniel Corona Garcia, inženjer za developersko iskustvo u Infobipu uskoro će na konferenciji Infobip Shift pričati upravo o tome zašto developeri toliko vole Rust:

Rust je moderan jezik koji je puno toga naučio iz ostalih jezika, posebno onih funkcionalnih. Ima lijepu sintaksu koja omogućuje programiranje kompleksnih stvari uz pisanje malo koda. Istovremeno je jezik niske razine koji proizvodi vrlo brze programe, poput programskih jezika C ili C++, ali bez mnogih bugova uobičajenih za njih.

Programiranje u Rustu primorava developere da vrlo dobro razmisle što rade i tako automatski primjenjuju najbolje prakse. Greške se hvataju tijekom programiranja i u vrijeme kompiliranja što dugoročno smanjuje vrijeme provedeno na otklanjanu grešaka i što znači više vremena posvećenog kreiranju, a manje popravljanju.

Erick Daniel dodaje i vrlo dobro napravljene i moderne alate koji okružuju Rust, a koji olakšavaju sve popratne zadatke programera poput testiranja, dokumentiranja, puštanja u produkciju ili upravljanja zavisnostima. Bez obzira na to, nije siguran bi li početnicima preporučio da počnu baš s Rustom jer je, kaže, to kompleksan jezik koji je možda lakše naučiti nakon što ste već dobro ovladali nekim drugim programskim jezikom:

Rekao bih da je bolje prvo naučiti jednostavniji jezik poput Pythona, a zatim se prebaciti na Rust. Rust se može činiti prilično teškim početniku, ali kad se privikneš na njega postaneš puno produktivniji.

Onima koji bi ga voljeli isprobati preporučam besplatnu online knjigu Rust by Example ili da pogledaju Tour of Rust.

Rubyju godinama pada popularnost, ali nije mrtav

Za razliku od Rusta, Ruby je programski jezik kojem iz godine u godinu pada i popularnost i omiljenost – koristi ga 6,27% ispitanih profesionalnih developera, a tek 2,52% onih koji su počeli učiti programiranje. Nije skroz neomiljen, ali nije baš ni omiljen – otprilike pola onih koji programiraju u Rubyju su zadovoljni time, a polovica njih nije.

Martin Morava, inženjer i CEO tvrtke Devot koja je samo u posljednje dvije godine izgradila 60 Ruby developera, kaže da Ruby, suprotno površnom dojmu da nestaje, živi punim plućima i da će još dugo biti s nama.

Martin se s Rubyjem susreo još kao član studentske udruge BEST, u kojoj je član bio i Mislav Marohnić koji je jedan od core contributora frameworka Rails. Nakon studentskih dana profesionalni put je Martina vodio u Irsku gdje je u mnogim brzorastućim startupima radio u Rubyju pa je, logično, to odabrao kao tehnologiju i za vlastitu tvrtku.

Razlog pada popularnosti Rubyja vidi upravo u onome što ga je i proslavilo:

Prvo je to što se Ruby često poistovjećuje s frameworkom Rails. Autor Railsa  je David Heinemeier Hansson (DHH) koji je u zadnje vrijeme pokrenuo razne kontroverzne teme svojim tvitovima i politikama unutar vlastite tvrtke 37signals. Zajednica nije baš odobravala te postupke, zbog čega su neki core contributori Railsa dali ostavke.

Iako će mnogi na prvu reći da je baš to glavni razlog pada popularnosti Railsa, ja se s tim ne slažem i uvjeren sam da je razlog pada popularnosti Rubyja dosta složeniji i zapravo je ekonomske prirode.

“Ruby je ispao jer nije bilo kadra pa su se tvrtke prebacile na druge tehnologije”

A kad kaže ekonomske prirode, Martin opisuje začarani krug u koji je Ruby upao jer je, kao jezik uz pomoć kojega se vrlo brzo mogu izgraditi web aplikacije i isporučivati nove značajke, prije desetak godina bio omiljen među CTO-ovima mladih startupa koji su, pritisnuti zahtjevima ulagača, morali brzo rasti i brzo lansirati i testirati nove feature. Neki od tih malih startupa su propali, ali neki su izrasli u jednoroge i korporacije i odjednom nisu više trebali desetine, nego stotine i tisuće developera. A na fakultetima se nije učio Ruby, nego PHP, Java ili Python pa kadra nije bilo:

Tvrtke koje su donedavno vodili tech ljudi, sad su vodili menadžeri s Wall Streeta koji su rekli “Ne možemo naći ljude koji rade u Rubyju, idemo probati što više stvari raditi u PHP-u ili Javi”, misleći da tako mogu puno lakše i jeftinije pronaći “dobre ljude”.

Tako da su, umjesto razvijanja dugoročne strategije koja bi se trebala temeljiti na suradnji s fakultetima i poticanjem educiranja studenata novim tehnologijama poput RubyonRailsa, oni natjerali svoje tehničke odjele da koriste tehnologije koje se uče na fakultetima i za koje je mnogo lakše pronaći ljude.

Docker: Novi alat bez kojega se ne može biti developer

A kad već spominjemo (ne)popularne tehnologije i alate iz Stack Overflowove ankete, za kraj ne možemo ne spomenuti da je git svrgnut s trona alata koji se smatra “fundamentalnim alatom bez kojega se ne može biti devloper”. Ove godine to je Docker, za kojega je čak 69% profesionalnih developera reklo da ga koristi. Kontejnerizacija je, očito, postala sastavni dio developerskog posla, a Docker je jedan od najzastupljenijih i najpopularnijih alata koji im pomažu u radu s kontejnerima.

Neven Vučinić, DevOps inženjer i suosnivač tvrtke NVTEH, objašnjava zašto:

Jednostavnost pakiranja, lokalno developersko iskustvo, lokalno testiranje, ali i u dev okolini, produkciji ili CI/CD alatima nikad nisu bili lakši i to ponajviše zahvaljujući ideji kontejnerizacije te implementaciji tih ideja kroz Docker.

Dijeljenje aplikacija s ostalim kolegama u timu postalo je jednostavnije: dovoljan je push s vaše strane i pull s kolegine strane unaprijed pripremljenog Docker kontejnera i vaša aplikacija se vrti na koleginom računalu točno onako kako ste i zamislili.

Docker nam konačno omogućuje da ona stara dobra poštapalica “Ali na mom računalu radi!” vrijedi i za vlastito računalo i za produkciju!

S obzirom da je vaš dan, programeri, recite nam koje tehnologije i alate vi koristite, koje od tih su vam omiljene, koje malo manje volite, a koje biste voljeli naučiti? Koji alat je, po vama, onaj bez kojega se ne može biti developer?

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.

Komentari

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Intervju

Upoznajte Maria Ćendu, voditelja tima zaduženog za ICT sustav Disneyjevog kruzera kojim plovi 5500 ljudi

Pod utjecajem primorskog podneblja, u bespućima interneta, Mario Ćendo pronašao je zanimanje koje spaja za njega idealno: IT i pomorstvo. Od tada, više od 10 godina plovi i rješava tehnološke zavrzlame kruzera koji mogu smjestiti i po par tisuća ljudi. Prije nego je isplovio na još jednu 10 tjedana dugu rutu, s nama je podijelio detalje ovog nesvakidašnjeg posla.

Intervju

“Tata” Angulara o tome što bi danas napravio drugačije i kako instantno ubrzati web aplikacije

Nakon više od 15 godina u Googleu, gdje je inicijalizirao, osmislio i podigao temelje Angulara, jednog od najpoznatijih JavaScript frameworka, a potom usmjerio Googleovu kulturu prema test driven developmentu, Miško Hevery se otisnuo u samostalne vode...

Novost

The Ethereum Merge. Kripto svijetu slijedi promjena na koju se čekalo skoro 10 godina

Već dugi niz godina radi se na vjerojatno jednom od najkompleksnijih projekata koji se tiču blockchain tehnologije, a taj dugoiščekivani update za Ethereum blockchain trebao bi izaći sredinom ovog mjeseca.

Što ste propustili

Startupi i poslovanje

Project 3 Mobility kao Chief Business Officera doveo menadžera koji je vodio Lime i Uber

Alexander Graf von Piel u domaćem startupu će biti zadužen za rast i globalnu prepoznatljivost autonomnih sustava vožnje koji se razvijaju u Sv. Nedelji.

Izvještaj

Kako Infobipovci uče od incidenata – i internih istraživanja?

DevDaysi, sad već tradicionalno godišnje okupljanje Infobipovaca, i ove je godine okupilo inženjere, stručnjake za razvoj proizvoda i korporativnu sigurnost kako bi razmijenili znanja i prakse. Donosimo neke od lekcija koje mogu koristiti i drugima u industriji.

Digitalni mediji

Zašto sam dao otkaz u IT tvrtci da bih se posvetio newsletteru?

Kada pročitam naslov, dođe mi da se i ja zapitam, pogotovo jer sam radio u super kompaniji i industriji. No, iako se na prvu čini kao luda ideja, zapravo nije!

Sponzorirano

Male tajne za razvoj aplikacija koje neće pregaziti vrijeme – niti nova tehnologija

Koje su tajne razvoja "future-proof" aplikacije? Kako izgleda baza koda, kako su posloženi radni procesi te kako na kraju dobiti nešto što možemo skalirati? Donosimo vam detaljan pregled kako Superology planira napraviti Superbet aplikaciju otpornu na vrijeme.

Novost

Splitska udruga DUMP traži nove mlade nade: programere, marketingaše, dizajnere, fotografe…

Želiš naučiti programirati? Zanimaju te oglašavanje i digitalni marketing? Imaš umjetnički dar i voliš dizajnirati? San ti je postati vješt s fotoaparatom i hardverom? Želiš se povezati s mladom ekipom koja radi sve to?

Novost

Uz investiciju Invera Equity Partners Kompare.hr širi tim, ponudu i tržišta

Kompare, web servis za usporedbu cijena telekom usluga i polica osiguranja, nova je investicija Invera Equity Partnersa, privatnog dioničkog fonda fonda poznatog i po relativno nedavnom ulaganju u Muzej iluzija.