Ž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:
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
random country generator
04. 10. 2022. u 12:07 am
Onako na prvu, Ruby izgleda krasno!