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:

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 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)
  • 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 (Hrvoje Lončar) ili barem ime i inicijala (Hrvoje L.) te pravu email adresu. Kako koristimo podatke koje tamo 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

Startupi i poslovanje

Dvije strane Porscheovog ulaganja u Greyp: Mali ulagači ljuti i nezadovoljni dok se Neufund hvali povijesnim exitom

Iza najave da Porsche preuzima većinski udio u Greyp Bikes krije se priča malih ulagača koji su 2019. u Greyp uložili kroz Equity Token Offering i sad se osjećaju - izigrano i izgurano.

Novost

Developeri, recite što doista želite: šareni ured, pivo petkom, veliku plaću, dobrog šefa….

Traženi, maženi, paženi i razmaženi. Tako mediji i društvo u zadnje vrijeme doživljavaju developere. Zagrebačka IT tvrtka odlučila je provjeriti jesu li doista takvi te pitati developere što oni doista žele.

Društvene mreže

Stiže Huuk. Nova globalna društvena mreža iz Rijeke?

Gradski autobus veselih boja s pitanjem "What the Huuk are we doing tonight" koji u zadnje vrijeme vozi Rijekom i obećanje da ćete od danas, 1. prosinca moći "Proširiti svoje pleme" najavili su lansiranje nove aplikacije u tom gradu. Kakve točno saznali smo u razgovoru sa suosnivačem Mateom Starčevićem Filipovićem.

Što ste propustili

Kultura 2.0

30 godina od prvog SMS-a: 6 stvari koji su obilježile način kako komuniciramo putem poruka

SMS je zagazio u svoju 30. godinu i kako nam se čini, neće još tako lako izumrijeti. Osim toga, svaki danom nas iznenađuju novi načini komuniciranja putem poruka. Tehnologija je divna, ali što je s korisnicma koji su ključni u definiranju "kulture dopisivanja". Postoji li "online bonton"?

Startupi i poslovanje

Jedan je po struci pravnik, drugi programer. Dijele ljubav prema računalnoj sigurnosti i – humoru

Evo priče o tome kako tehnologija povezuje različite ljude, kako se nose s izazovima koje pred njih tehnologija postavlja i što je presudno važno za uspješne projekte.

Startupi i poslovanje

1 dijete, 1 robot: CircuitMess i UBIK pokreću humanitarnu akciju za djecu u domovima

Humanitarna akcija traje do 22. prosinca, a trebala bi omogućiti da svako dijete u domovima za nezbrinutu djecu u Hrvatskoj dobije barem jednog robota.

Intervju

Može li Osijek zamijeniti Irsku? Siniši se dogodilo upravo to

Hrvatsku je zbog odlaska u inozemstvo radi potrage za (boljim) poslom napustio ogroman broj ljudi. Među njima je i nemali broj IT stručnjaka. Ipak, moguć je i drugačiji scenarij ako je prilika prava…

Startupi i poslovanje

Konzum je prvi trgovački lanac u Hrvatskoj u kojem se može plaćati kriptovalutama

Konzum je uz pomoć hrvatske tvrtke Electrocoin i njihovog sustava PayCek postao prvi trgovački lanac u Hrvatskoj u kojem možete plaćati kriptovalutama.

Startupi i poslovanje

Hrvatski BE-ON za pomoć blokiranim građanima osigurao 1,3 milijuna eura od Feelsgood fonda

Prema najnovijim dostupnim podacima u Hrvatskoj je preko 240.000 ovršenih potrošača. Hrvatski BE-ON želi im pomoći financijskim savjetovanjem.