Zašto su mnogi tech giganti izabrali baš Rails i zašto bi trebalo i mi da uradimo isto?

Upravo ste se probudili i dobili ste sjajnu ideju za vaš novi startap — Ruby on Rails će vam pomoći da je ostvarite, a evo i kako.

Nikola Novaković - 11. Jul, 2016.

Upravo ste se probudili i dobili ste sjajnu ideju za vaš novi startap. Sledeći korak je da napravite prototip u najkraćem mogućem roku i istestiraste ga da bi ste potvrdili ili opovrgli hipotezu.

Ima puno opcija na tržištu, ali hajde da istražimo zašto je Rails vrlo pogodan za ovakve situacije.

Alat za vodeće startape

Rails je zvanično objavljen 2004. godine. Postao je poprilično popularan kada je David Heinemeier Hansson, poznatiji kao dhh, kreator Railsa i osnivač Basecampa, napravio video o tome kako da kreirate blog za veoma kratko vreme:

Posle tog videa, Ruby (programski jezik u kom je framework pisan) i Rails postaju neverovatno popularni. Između ostalog, za ovo je zaslužna jednostavnost Railsa, koji je izgrađen na ubeđenju da dobro programiranje treba da bude koncizno i samim tim učini programere srećnima. U jednom intervjuu dhh je izjavio:

Ruby vam na emotivno bliskom nivou pokazuje kako lepo nešto možete napisati.

U istom intervjuu je pojasnio razliku između Ruby-ja i Railsa:

Ruby je osnovni jezik, dok je Rails žanr ili forma koju taj jezik može da preuzme, kao triler. Ako želite da napišete ljubavnu priču, onda ćete verovatno koristiti drugi framework ili nešto potpuno drugačije. Ruby je odličan za obe stvari, dok je Rails alat koji je na vrhu Ruby-ja i čini ga odličnim za web development.

Na talasu popularnosti dosta poznatih kompanija je rešilo da im Rails bude platforma za razvoj. Među njima su Github, Shopify, Twitter, Soundcloud i Airbnb.

Brzo dođite do prototipa i iteracije

Kada počinjete sopstveni biznis jedna od najbitnijih stvari je da radite brze iteracije i da testirate ideju. Rails je mnogo dobar u tome. Zamislite Rails aplikaciju sada i već je možete izgraditi za par sati — postoji samo nekolicina frameworka koji ovo mogu da ostvare.

Razlog zašto je dhh mogao da napravi blog za tako kratko vreme je jer je dosta odluka već bilo donešeno za njega. Puno malih stvari kao što su imenovanje stvari u vašoj aplikaciji, lociranje fajlova, stavljanje aplikacije u promet itd.

Rails je zasnovan na programerskoj paradigmi “convention over configuration”, koja zagovara smanjivanje broja odluka koje developeri donose bez nužnog gubitka fleksibilnosti.

To znači da vi možete da se fokusirate na vašu biznis logiku i da ne morate da brinete o drugim stvarima, što je ključno za brzu iteraciju i pravljenje prototipa.

Kôd je otvorenog tipa

Kôd Railsa je 100% otvorenog tipa. To znači da možete da odete na Github i pogledate untrušnjost samog frameworka.

Postoji nekoliko važnih benefita otvorenog kôda:

Kvalitet: neki od brilijantih umova u industriji rade konstantno na tome da kôd frameworka bude što bolji i kvalitetniji;

Prilagodljivost: možete da “kopirate” ceo framework i da ne zavisite od njega, ali i da ga prilagodite svojim potrebama;

Podrška: kad god naletite na neki problem u toku razvoja postoji velika mugućnost da je već neko imao taj problem i rešio ga je.

Takođe, ako hoćete da doprinisete samom Railsu uvek možete to uraditi preko Githuba, što je prilično kul.

Širok spektar biblioteka

Ruby ima nešto što se zovu “gem-ovi”. To su eksterne biblioteke koje vam pomažu da radite različiti broj stvari sa vašom aplikacijom. Kako je Rails pisan u Ruby-ju on podržava “gem-ove”. Postoji širok spektar biblioteka: neke su za autentikaciju/autorizaciju, obezbeđivanje toga da vaše šifre budu sigurne, ili za taskove koji zahtevaju vreme i želite da ih smestite u pozadinu, kao što je slanje njuzletera velikom broju primalaca.

Kao što rekoh, ovo su samo neke od biblioteka, ali sve ostale “gem-ove” možete naći ovde. Ima već 9,047,516,051 skinutih!

Sigurnost. Ali stvarno.

Rails postavlja određene standarde za vas od početka. Sama činjenica da Rails ima kôd otvorenog tipa znači da se stalno dopunjava zaštitama od novih hakova. Ovde možete videti koliko se ozbiljno shvata bezbednost.

No, i pored toga što vam oni garantuju da ćete biti sigurni, uradite sve što je u vašoj moći da naučite da security feature Railsa koristite ispravno i poznajete njihova ograničenja.

Ogromna količina osetljivih informacija o svakome o nas nalazi se onlajn, a i vaš startap će verovatno zahtevati neke podatke korisnika: mejl, broj kreditne kartice, šifre, itd. Znati da čitava zajednica brine o ovome koliko i vi daće vam značajno ohrabrenje da izgradite što bolju i sigurniju aplikaciju za svoje korisnike.