Na 16. rođendan Ruby on Railsa odgovaramo na pitanje: Je li mrtav, i u svijetu i u Hrvatskoj?

Na 16. rođendan Ruby on Railsa odgovaramo na pitanje: Je li mrtav, i u svijetu i u Hrvatskoj?

Početkom kolovoza slavimo 16 godina od prve pojave Ruby on Railsa, web development frameworka koji je “promijenio svijet”. S tom činjenicom volim početi ovu priču jer mislim da je ključna za odgovor na pitanje koje mi se često postavlja: Nije li Ruby on Rails mrtav?

Za mene je odgovor uvijek jedno kategoričko ne, ali moram priznati da sam nakon dugog niza godina u tim vodama i razvijanju poglavito na toj platformi vjerojatno malo pristran, pa sam se odlučio odvažiti i sabrati na jedno mjesto objektivne statistike i relevantne podatke kako bih mogao bolje na to odgovoriti. Ovo mi je zanimljivo s više strana, pogotovo zato što proteklih nekoliko mjeseci pokušavamo zaposliti Rails developera te istodobno pokušavamo shvatiti gdje je razlika između tržišta koje traži Rails developere i tržišta rada koje tih istih Rails developera nema.

Ruby on Rails inženjera ima dosta malo, to je nepobitna činjenica, a to nikako ne pridonosi poboljšanju statistike za Railse. Po anketi Tomislava Grubišića, provedenoj na uzorku od 3000 ljudi, samo 1,5% su Ruby developeri, što čini brojku od 45 na svakih 3000 developera.

Problemi nepopularnosti Rubyja kreću od kolijevke mnogih današnjih inženjera, a to je – fakultet. 

Kroz fakultet se vjerojatno nećete susresti s Railsom

Na fakultetima u Hrvatskoj, a i šire, u pravilu se ni ne spominje Ruby on Rails. Osoba koja cijeli svoj fakultet uči drugi jezik, vjerojatno neće imati doticaja s Railsom. Umjesto toga, učit će vas se Java ili .NET, možda čak nešto malo JavaScripta, ali u najvećem postotku ipak C/C++.

To je posljedica vjerojatno toga da je Ruby, a još više Rails, “nova tehnologija”. To je nešto s čime sam se prije djelomično slagao, a sada mislim da smo već na razini kada su paradigme, koje su dolazile s Railsom i drugim takvim jezicima i frameworcima, postale standard. Naravno, sve to ima neke svoje prednosti i mane, ali očito ostavlja trag na generalnoj populaciji developera, jer iz spomenute ankete možemo vidjeti kako je upravo programera koji rade u Javi ili .NET-u najviše. Mislim da stvar nije bolja, a ni puno drugačija, izvan granica Hrvatske, gdje je potražnja za Rails developerima još i veća.

S druge strane, Ruby on Rails se pozicionirao kao odličan alat za brzu izgradnju web aplikacija i web API-ja. Ako guglate popularnost frameworka za web, šansa je da ćete pronaći Ruby on Rails među prvim rezultatima, s ASP.NET Core, Djangom (Python), Laravelom (PHP), Springom (Java) i Expressom (JavaScript). 

Tehnologija iza sebe ima jaku zajednicu

Ono što vidimo na Google Trendsu je da zanimanje za Railsom sporo opada, što mislim da je normalan ciklus za neku tehnologiju. Rails se slobodno može već nazvati zrelom tehnologijom, pa, shodno tome, normalno je da interes opada s obzirom na hype koji je bio aktualan prije par godina. 

Zanimanje za Railsom opada, prema Google Trendsu, ali to je normalan ciklus za tehnologiju koja više nije toliko – nova.

Iako zanimanje za Rails nije u vrhuncu, iza sebe ima jako veliki community od firmi koje ga koriste ili su ga koristile (Basecamp, Shopify, Netflix, GitHub, Airbnb itd.), koji gura promjene i radi na gemovima za sve što je potrebno u modernom web developmentu. To daje jednu lakoću pristupa novim developerima, jer za sve postoji barem neki dio implementacije rješenja koji je potreban.

Ako to usporedimo s drugim tehnologijama, dobit ćemo sljedeće:

Railsova “sporost” tek rijetke sprječava da na njemu grade brzo i efikasno

Ono što Rails definitivno nije, i s čime se jednostavno moramo pomiriti, a to je najbrži na svijetu – niti to pokušava biti. Daleko od toga da je spor ili prespor – često je to do developera, a ne do tehnologije.

Ruby mi je jedan jako drag jezik u kojemu se može napraviti stvarno sve. Nešto što se možda i ne bi trebalo moći napraviti, u Rubyju je to vrlo vjerojatno moguće. To je ljepota Rubyja i često Railsa, ali je ujedno nešto što se treba poštivati, a ne zloupotrebljavati.

Njegova “sporost” tek će rijetke sprječavati da izgrade to što trebaju brzo i efikasno, a kada netko kaže da Rails ne skalira, možda najbolji odgovor na to bio bi onaj koji je dao Nick Quaranto, kreator RubyGemsa:

Važnost verzije Rails 4

Ako pogledamo neke statistike s RubyGemsa, glavnog repozitorija gemova (biblioteki za Ruby), vidjet ćemo da se Rails i svi njegovi dijelovi i biblioteke itekako koriste. Rails 6 očekivano ima niske brojeve jer je još relativno nov, ali ono što je zamjetno kada ga usporedimo s grafom iz Google Trendsa jest da je Rails svoj vrhunac proživio kroz verziju 4, a verzija 5 već je indikativnija prema tome kakav je trend ovog frameworka.

Veliki broj contributora za Ruby i za Rails i sve njegove gemove dolazi iz jedne zdrave zajednice koja se uspjela stvoriti baš oko Rails verzije 4. Uz to, arhitekturu uz koju je gemove jednostavno pisati i objaviti, dobar i relativno stabilni API samog jezika i dobar package management sustav poput Bundlera, nije ni čudo da upravo Rails i Ruby imaju takvu zajednicu iza sebe.

Rails je tu da ostane

A tu je i jedno odlično godišnje istraživanje Stack Overflowa koje ima isto zanimljive rezultate. Jasno pokazuje da Ruby on Rails nije najpopularniji jezik odnosno framework, ali je svejedno puno korišten. Uz to, možemo vidjeti da su Rubyjaši pri vrhu ljestvice plaća, kako globalno, tako i na našim prostorima.

S trenutnom situacijom web developmenta, gdje se nije pojavila nijedna nova platforma za razvoj koja je privukla toliko pažnje, jedno je sigurno: Rails je tu da ostane – svojih klijenata, kao i cijelog communityja, ima i sigurno će imati i još više. Inženjera koji ga znaju konstantno nedostaje, a vjerujem da će nedostajati još i više jer, osim razvoja novih aplikacija, sve platforme koje su izgrađene za vrijeme Rails baby booma trebat će održavati.

Za one koji bi htjeli krenuti s Railsom, evo nekoliko smjernica:

  1. Prvo prouči Ruby, a onda tek Rails.
    Ovo je korak koji su mnogi, uključujući mene preskočili, i većina nas vjerojatno je bar djelomično to požalila. Bez znanja jezika, već s prvim problemom će se biti jako teško suočiti, tako da barem nekakvo znanje Rubyja velik je plus.
  2. Pohvataj poznate koncepte kao što je objektno orijentirano programiranjes Rubyjem.
  3. Uči od početka.
    Rails je napravljen s jednim jednostavnim principom – konvencija prije konfiguracije. Dok drugi jezici i frameworci mogu izgledati kako god, što se tiče strukture direktorija i fileova, Rails je tu dosta “stroži”, a sve radi toga da svi Rails developeri mogu čitati napravljeno, ne samo osoba koja na tome radi zadnjih 15 godina. Sve se može, ali dok ne shvaćaš zašto je nešto napravljeno na određeni način, vjerojatno to ne bi trebao/la dirati. Prepusti se i uživaj u učenju u magiji koju ti Rails donosi! Napravi blog, napravi kopiju Twittera (koji je bio isprva napisan na Railsu) i onda, kad poznaješ osnove, kreni se igrati kroz sve te fileove i konfiguracije.

Sigurno ćemo kroz nekoliko godina vidjeti još potrebe za Rails developerima, jer je to jedan zdrav i kompletan ekosustav, a samo zadovoljstvo njegovih korisnika (developera) relativno je visoko. Konkretno, u Flow & Formu smo odlučili da će nam to biti backend framework of choice, kao i još nekoliko drugih firmi na ovom području, i s trenutnim i budućim klijentima, sigurni smo da nećemo požaliti za tom odlukom.

Ako dijeliš moje mišljenje, a uz to te zanima što radimo ili si zainteresiran za suradnju, javi nam se! hi@flownform.com ili meni direktno filip@flownform.com.

P.S. Hoćeš početi odmah s učenjem? Evo još resursa:

Video/interaktivni tutorijali:

Knjige:

Učenje Rubyja kroz igru:

Komentari

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Društvene mreže

I porečki restoran i TikTok influencerica su u krivu

Iako je javnost brzo osudila influencericu Doris Stanković, s obje strane se pokazalo nepoznavanje profesionalne komunikacije, a i influencer marketinga.

Tehnologija

“Tata, jesi li baš morao kupiti električni auto?”

Napravio sam grešku: kupio sam električni automobil. Svi članci o električnim vozilima (EV) koje sam čitao na Hacker Newsu i Redditu nisu me pripremili za desetak EV infrastrukturnih problema u Hrvatskoj i okolici. Anegdote u nastavku objašnjavaju lekcije koje sam naučio na teži način.

Izrada web stranica

Da HTZ zna promovirati slavonski turizam u doba krize, ne bi pokrenuo Slavonia.travel

Slavonija je zanemarena već dugo, ali imamo što za ponuditi. Zašto onda reklamiramo samo kulen, rakiju i fiš?!

Što ste propustili

Tehnologija

Hrvatska kripto poštanska marka rasprodana je u nekoliko sati, ali što je to uopće

Uz pomoć Belme Gutlić iz tvrtke NodeFactory i Tina Galetovića iz tvrtke BitX te filatelista Emila Drkušića otkrivamo u čemu je stvar kod blockchain marke Hrvatske Pošte.

Startupi i poslovanje

Kakav dan: Nanobit se prodaje švedskom Stillfrontu za 148 milijuna dolara; spekulira se da Rimac Automobili preuzimaju Bugatti

Kad pratite tehnološki sektor, rijetko se kad dogodi da se dvije izvanredne vijesti dogode u istom danu. Danas je ipak takav dan.

Tehnologija

Facebook želi da gledate svijet kroz njegove uređaje, no želite li zbilja pametne – Ray Banke?

U pomalo iznenađujućem predstavljanju jučer, Facebookov Mark Zuckerberg najavio je dva nova proizvoda: Oculus Quest 2 i pametne naočale, a za Netokraciju ih komentira Darian Škarica, osnivač tvrtke Delta Reality.

Sponzorirano

5 najzanimljivih komentara hrvatskih stručnjaka o stanju Europske Unije!

Hrvatski stručnjaci na panel raspravi Digital Brunch jučer su komentirali stanje Europske unije: kako EU može dodatno pomoći poduzetnicima i demokratskim procesima te što može učiniti da ojača protok ljudi, dobara i kapitala, samo su neke od stavki kojih su se dotakli.

Tehnologija

Apple jučer nije najavio novi mobitel, ali njegovi proizvodi barem više nisu skupi kao prije

Novi rujan, novi Apple događaj. Ovoga puta, možda bez mobitela, ali i dalje zanimljiv.

Novost

Employer branding i marketing kroz esport: Naučite kako doći do novih talenata i kupaca uz drugi Good Game ebook!

Kao što smo prošlog tjedna najavili, Good Game ebook dolazi u dva dijela - danas je dostupan i drugi! Tvrtka ste koja brine kako pristupiti novim generacijama? Ovo je verzija za vas.