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

Digitalni marketing

Digitalna industrija je u ku*cu, ali Social Dilemma je jeftina Skynet drama koja to ne zna reći

Social Dilemma nije više #1 izbor na Netflixu, a mnogi su već dali svoje mišljenje neovisno o tome jesu ga gledali. Ovo je kritički osvrt na odlično vizualno ostvarenje dokumentarca koji otvara mnoga pitanja, ali i isceniranu dramu o zlim društvenim mrežama koja daje malo odgovora - često površnih.

Startupi i poslovanje

Mate Rimac transparentno o financijama, svojoj plaći, kampusu i uključivanju radnika kao suvlasnika Rimac Automobila

U izuzetno dobrodošlom primjeru transparentnosti koji rijetko viđamo u svjetskoj, a kamoli hrvatskoj tehnološkoj industriji, Mate Rimac je na YouTubeu objavio sat vremena dug pregled izvještaja Rimac Automobila za treći kvartal 2020. Izdvajamo neke od zanimljivijih informacija.

Startupi i poslovanje

Bivši investitor u 500 Startups savjetuje hrvatske startupe: Akvizirajte klijente i korisnike od kojih ćete učiti!

Marvin Liao već 10 godina ulaže u startupe u srednjoj i istočnoj Europi, u zemljama poput Srbije i Ukrajine. U razgovoru za Netokracija Podcast daje praktične savjete za hrvatske tehnološke poduzetnike u doba pandemije!

Što ste propustili

Najava

Kako ostvariti developersku karijeru u Osijeku – saznaj 30.11. uz domaće IT stručnjake!

Hrvatska IT scena ne gradi se samo u Zagrebu! Zato ova Digitalna karijera ide u Osijek. Kako razviti IT karijeru i u drugim gradovima Hrvatske saznat ćemo uz tvrtke koje upravo tamo traže pojačanje.

Startupi i poslovanje

Hrvatsko-slovenski Mercury PSI i danski Nets skupa kreću u digitalizaciju plaćanja diljem Europe

Biometrijske isprave, beskontaktna plaćanja i društvo bez gotovine: sve su ovo ideje koje nam dolaze iz danskog Netsa, a odnedavno ih razvijaju i domaći stručnjaci iz Nets CEE.

Novost

47.000 korisničkih računa s domene .hr je kompromitirano, provjerite jesu vaši među njima!

Određeni broj lozinki pojedinih korisnika nalazi se u čistom tekstualnom obliku i one nisu ni na koji način zaštićene te ih je moguće veoma jednostavno iskoristiti.

Novost

Amazon nije “ušao u Hrvatsku”, dostupan je godinama, novost je samo (možda) veća ponuda za Hrvate

Jučer i danas čitamo vijesti o trijumfalnom dolasku Amazona u Hrvatsku. Ništa nije potvrđeno, a čini se da smo samo dobili nešto bolju ponudu.

Vodič

Kupujete online? Prvo provjerite je li web trgovina sigurna – evo i kako!

Vaš prvi korak do proizvoda koji želite su web trgovine. Neke će vam biti manje jednostavne za korištenje, neke više - ali za svaku od njih trebate znati je li sigurna prije nego kliknete "Kupi". Donosimo par savjeta kako ih lako možete provjeriti...

Intervju

CTO Shoutema Tara Oroz Rajaković: Tata je “kriv” što sam upisala FER

"Mnogi se često čude tome da sam nakon jezične gimnazije završila na tehničkom fakultetu."