PočetnaSoftverKorisniCloud alati za programere

Cloud alati za programere


Ako ste programer, tada znate da postoji veliki broj cloud aplikacija upravo za tu skupinu ljudi, no pitanje je koji alati su dobri i vrijedni korištenja. Mi smo napravili presjek i našli 10 onih za koje biste svakako morali znati, a svakako i probati u bližoj budućnosti.

Ako pogledate unazad par godina, vidjeti ćete da broj programera, ili kako to ljepše zvuči – developera, konstantno raste. Sve više pojedinaca želi naučiti pisati programe/aplikacije i stoga je potreba za dobrim alatima veća nego ikad. Naravno, ne treba ni spominjati da mjesta za pogreške nema. Ljudi žele najbolje alate, žele ih sada i žele ih “u oblacima” kako bi im uvijek bili dostupni. To znači da su kompanije koje proizvode takve alate pred velikim izazovom jer moraju udovoljiti velikom broju programera, bez obzira koji programski jezik oni koriste, da li su junior ili senior programeri i kakvo iskustvo imaju. Cloud alati moraju biti pouzdani, brzi, konstantno dostupni i olakšavati što veći broj zadaća. Stoga smo mi isprobali za vas 10 alata koje bi svaki dobar programer trebao probati i koristiti u svojim svakodnevnim zadacima, a možda neke od njih već i koristite. Nismo ih svrstavali po određenim kategorijama jer je ovakve alate teško svrstati u samo jednu kategoriju. Sve su to programi koji olakšavaju programiranje i tako ih i treba gledati.

Piše: Boris Plavljanić

Eclipse Orion

Iako većina nas IDE (Integrated Development Environment) ima instaliran lokalno na računalo, sve se više programera odlučuje na cloud varijantu, što i nije loše kada pogledate što jedan takav IDE nudi. Ako ste upoznati sa Eclipse IDE-om, znate da je to moćan alat, no ta činjenica vam ne pomaže previše kada ste na poslu, a kôd koji ste napisali vam je doma na računalu. Zar ga ne bi bilo bolje imati u oblacima kako bi vam on uvijek bio dostupan? Eclipse Orion je idealno riješenje u tome slučaju. Riječ je o open source projektu koji vam donosi spomenute pogodnosti, a sve što vam treba je Internet konekcija i moderni web preglednik. Samo se logirate sa svojim korisničkim računom na službenim stranicama (www.eclipse.org/orion) i možete početi sa kodiranjem. Ako vam je to gnjavaža, možete preuzeti i klijent koji se instalira na računalo, a onda sa jednom tipkom taj isti kod spremate u oblake (korisno je svaki dan to raditi). Kada se spojite na svoj korisnički račun, prvo ćete ipak morati kreirati mape u koje ćete spremati kôd, zatim odabrati vrstu projekta (Java projekt, Android projekt…), te će zatim Orion sve pripremiti za vas. Par sekundi kasnije, naći ćete se u poznatom Eclipse okruženju. Da li ovakav IDE ima svojih nedostatak? Naravno da ima. Jedan od njih je nedostupnost projekata kada nemate Interneta, a želite programirati. Zato je korisno imati i lokalni klijent koji možete koristiti, a kada se spojite na mrežu, uploadati napravljeno. Nadalje, tu je uvijek pitanje sigurnosti i da li vam netko može ući na račun bez vašeg znanja. Ako imate neke povjerljive podatke, odnosno poslovni projekt, sigurno ne želite da netko drugi ima pristup tome i slično. Možda ovo nije idealno rješenje, no svakako je budućnost IDE-a i zasigurno će ovakak koncept naći puno korisnika koji će ovakve stvari rado koristiti. Za sada je Eclipse vodeći na ovom polju, no sve više kompanija radi na ovakvim rješenjima i u bližoj budućnosti možemo svašta očekivati.

GitHub/BitBucket

Drugi način za čuvanje vlastitog kôda je korištenje Gita. Vjerujemo da svi koji se bave programiranjem znaju što je Git, no ako ne znate, evo kratkog objašnjenja. Git je sustav koji dozvoljava da više ljudi (odnosno, tim ljudi) radi na istom projektu i da se točno zna tko je što napravio, kada je napravio i u kojoj datoteci projekta. Git je, formalno govoreći, DVC (engl. Distributed Version Control), no postoji još nekoliko različitih varijanti tog sustava. Git je razvio Linus Torvalds – čovjek koji je zaslužan za Linux. Njemu je Git trebao jer su doslovno tisuće ljudi radili na Linux jezgri i bilo je nemoguće pratiti tko što radi. Git je to ispravio i ljudi su ga objeručke prihvatili. Tj. ljudi u programerskoj zajednici.

Da bi Git radio, morate imati negdje pohranjen projekt. Odnosno, centralno mjesto gdje će se sve promijene zapisivati. Dva najpopularnija cloud servisa su definitivno GitHub i BitBucket. Koristili smo oba i nemamo zamjerke na njih. Neke sitne razlike među njima postoje (koliko privatnih repozitorija možete imati, koliko ljudi može raditi na jednom projektu itd.), no u velikom djelu se preklapaju, pitanje je samo što preferirate. Preporučamo da probate oba, pa se onda odlučite za jedan od njih. Ovi servisi su super jer ne ovise o programskom jeziku i lokaciji gdje se nalazite. Projekt se nalazi pohranjen na njihovim serverima, a onda svi programeri mogu taj projekt kopirati lokalno na računalo i raditi na njemu, a kada naprave promjene samo ih “commitati” i poslati na server. Zato smo i rekli da je Git distribuirani sustav koji omogućuje velikom broju ljudi da radi na njima. Naravno, postoji jedna ili više osoba koje moraju te promijene i prihvatiti (zamislite kakav bi to kaos bio da svi imaju sva prava i da mogu “pregaziti” projekt na serveru), no to je jedna od čari Gita. Svakako preporučamo da naučite koristiti Git, iako će vam u početku zadati glavobolje – pogotovo kada se susretnete sa pojmovima repozitorij, “pullanje”, “pushanje”, “commitanje”, konflikti…

Google Cloud Playground

Prelazak na novu platformu često može biti skup, a i mnogi programeri odbijaju promijene dok im je nešto dobro i dok su zadovoljni rješenjima koja koriste. No, ima i onih koji vole eksperimentirati. Ako se nalazite u ovoj drugoj skupini, tada svakako morate probati Google Cloud Playground. Riječ je o Cloud platformi s kojom Google želi ljudima približiti razvoj robusnih web aplikacija, a da pri tome ta platforma bude u oblacima kako bi Google mogao kontinuirano implementirati nove stvari.

Da biste pokrenuli Cloud Playground trebaju vam doslovno dva klika mišem – morate posjetiti službenu web stranicu (https://cloud.google.com) i pritisnuti tipku “Try it now”. Nakon toga slijedi instaliranje različitih alata na lokalno računalo, te potrebni SDK, no nakon toga ste spremni za pisanje kôda. Pri tome vam Google daje na raspolaganje 3 servisa koji se nalaze u njihovom oblaku, a to su Google App Engine, Google Cloud Storage i Google Cloud SQL. Naravno, u budućnosti očekujemo nove servise i alate. Nije ipak ni sve idealno i ograničeni ste na jedan programski jezik – Python 2.7 – ali Google obećava da će se još ove godine mnoge stvari promijeniti. Čak i ako niste koristili Python, možete u par dana naučiti osnove i isprobati spomenute servise. Nama se čini kao dobra platforma, ali uz uvjet da ju Google doradi i dopusti programerima da eksperimentiraju sa njihovim servisima, te dopuste kolaboraciju programera na različitim projektima. Ako vam se ne sviđa ova ideja, uvijek možete na svoje računalo instalirati Eclipse i GWT (Google Web Toolkit) i imati mnogo veću slobodu, te koristiti Javu za razvoj web aplikacija. GWT je posebna priča i nećemo na nju trošiti vrijeme, no svakako zaslužuje vašu pažnju. Sve u svemu, drago nam je da se i Google uključio u razvoj Cloud platforme za developere.

Gliffy

Iako će vam stariji i iskusniji programeri reći da prilikom programiranja ne trebate ništa crtati niti skicirati, dobra je praksa da to ipak radite. Ne, ne mislimo da crtate dijagrame za for petlju i ispisivanje parnih brojeva do 100, nego da kod kompleksnijih programa ipak napravite različite dijagrame jer ćete tako lakše isprogramirati ono što želite, a i kada vidite nešto vizualno, puno je lakše razumjeti tok programa, nego samo čitati čisti kôd. Barem u većini slučajeva. Odlična web stranica za to je Gliffy. To je web stranica koja nije specijalizirana samo za programere, nego dozvoljava svima da crtaju one grafove koji njima trebaju. Ekipa koja stoji iza ove stranice se pobrinula za to i korisnicima ponudila široku lepezu predložaka, raznih oblika za crtanje dijagrama i slično. Da biste počeli koristiti ovu web stranicu čak i ne morate napraviti korisnički račun. Samo ju otvorite i počnite crtati. O spremanju ove datoteke brinite kasnije.

S lijeve strane ćete vidjeti hrpu alata, dok je većina ekrana površina za crtanje. Sučelje je vrlo jednostavno, već viđeno kod nekih drugih komercijalnih alata, no to nema nikakve veze. Zašto mijenjati ono što je provjereno i što korisnici vole?

Jedna napomena – primjetiti ćete da nema nigdje gumbića za modificiranje objekata koje ste “dovukli” na površinu za crtanje. Kada želite modificirati određeni objekt (veličinu, boju, tekst…), samo kursorom miša dođite na objekt i u desnom gornjem kutu će vam se pojaviti ikonica putem koje modificirate spomenute atribute.

Kada želite spremiti u oblake svoj crtež, morati ćete napraviti korisnički račun. Prvi mjesec ćete dobiri Pro verziju, a nakon toga vam se račun prebacuje na basic varijantu. Ako imate tu osnovnu razinu, na raspolaganju imate samo 2 MB za spremanje crteža, dok za 5 dolara mjesečno imate 200 MB, a za 10 dolara neograničeno prostora. Ako ste jedan od onih koji puno crtaju dijagrame, cijene će vam biti prihvatljive.
Čak i ako ne trebate ništa crtati trenutačno, ova web stranica je vrijedna spremanja jer će vam vjerojatno zatrebati. Stoga ju je puno bolje imati pri ruci, nego zaboraviti na nju, pa skidati razne alternative koje nisu ni upola dobre kao ova spomenuta.

Adobe Creative Cloud & Edge

U zadnjih par godina, Adobe je napravio ogroman korak unaprijed i donio neke stvarno odlične proizvode svojim korisnicima. Još prije par godina, Adobeov Creative Suite su koristili samo “odabrani” korisnici jer je bio prilično skup, a i mnogi ga jednostavno nisu imali potrebe učiti i koristiti. Eventualno su korisnici koristili jedan ili dva alata iz cijelog paketa. Nakon toga je Adobe napravio zaokret od 180 stupnjeva i ponudio Cloud usluge.
Složiti ćemo se da nema dobre web stranice bez dobrog dizajna i zato mislimo da bi programeri trebali znati barem osnove alata koji se koriste za dizajn i crtanje. I tu dolazimo do Creative Clouda. To je usluga (platforma) koja vam dopušta da lokalno koristite njihove alate, no sve što napravite pohranjujete u njihove oblake. Te pohranjenje datoteke možete zatim dijeliti sa svojim prijateljima, komentirati što ste napravili, dopustiti drugima da komentiraju vaše radove, daju vam savjete i slično. Kada kupite ovu uslugu, imati ćete pravo na sve njihove alate (Photoshop, Illustrator, InDesign, Dreamweaver…), no primjetiti ćete jednu razliku kada ih skinete – sve aplikacije završavaju na CC (npr. Photoshop CC). Tako znate da dotična aplikacija nije “stand-alone” aplikacija, nego je modificirana kako bi radila sa Creative Cloud uslugom. Naravno, možete aplikacije koristiti i kada nemate Interneta, ali čim se spojite, Adobe će napravljene promijene spremiti u oblake.

Uz ovaj Creative Cloud moramo spomenuti i Edge uslugu, a ona je malo više fokusirana na programere. Unutar te cloud usluge dobivate 6 alata za web dizajn (Edge Animate CC, Edge Inspect CC, Edge Web Fonts, PhoneGap Build, Edge Code CC i Edge ReFlow CC), a princip rada je isti. S time da Edge daje potpunu podršku za programiranje sa tehnologijama poput HTML-a, CSS-a i JavaScripta.

Mana ovih usluga? Cijena. 50 dolara mjesečno nije mali iznos novaca, no ako živite od korištenja ovih alata, vjerujemo da vam to i neće biti toliko veliki trošak, pogotovo kada se uzme u obzir da na ovaj način uvijek imate najnoviju verziju alata i ne morate stalno kupovati nove pakete. Jednostavno kontinuirano plaćate pretplatu, koja je u konačnici manja nego da kupujete stand-alone aplikacije.

New Relic

Razvili ste web stranicu, no to je tek početak u životnom ciklusu stranice. Korisnici će vjerojatno doći, no pitanje je koliko njih. Zamislite situaciju – razvili ste super zabavnu web stranicu i ona radi savršeno. Imate preko 1000 posjetitelja dnevno, polako raste broj korisnika koji se vraćaju, dobivate dobar feedback, no odjednom broj posjeta skoči na 2000 po satu. Ili više. I što sada? Web stranica se sve teže otvara, korisnici su frustrirani, loše kritike se pojavljuju na Facebooku i Twitteru. Kako riješiti taj problem? Tu dolazimo do New Relica. To je servis koji prati performanse vaše web stranice u realnom vremenu i on vam može riješiti mnoge probleme. Dovoljno je da napravite korisnički račun, “zakvačite” web stranicu koju želite pratiti i to je to. Servis je kompatibilan sa mnogim popularnim programskim jezicima, tako da s time nećete imati problema. Naravno da ovaj servis nije čarobnjak koji će sa jednim pokretom čarobnog štapića (ili još bolje – jednim klikom) riješiti problem, no može vam reći gdje je usko grlo web stranice. Da li je to ogromna količina slika koja se svaki put mora učitati, da li je to komuniciranje sa bazom podataka ili slično. Fantastičan servis sa mnoštvom korisnih alata. Čak je i user friendly pa ga mogu koristiti i one osobe koje nisu previše informatički potkovane. Dovoljno je da otvorite glavni meni ovog servisa i očitate parametre.

Koliko je ovaj servis dobar govori i činjenica da ga koriste, već spomenuti, GitHub, Mashable, Nike, Airbnb, Groupon i mnoge druge poznate web stranice. Ako ste web administrator ili imate popularnu web stranicu, ovo je svakako servis za vas. A kako je ovo servis, možete mu pristupiti sa bilo kojeg uređaja što jako olakšava situaciju.

Parse

Jeste li ikada razvijali kakvu web aplikaciju ili aplikaciju za mobitel? Ako jeste, onda znate kakva je to gnjavaža, a ako niste, onda vas to ili ne zanima ili znate da ima puno posla i niste se još s time spremni pozabaviti. U svakom slučaju, postoji backend platforma koja vam može prilično olakšati posao. Ime te platforme je Parse i nakon samo 2 dana korištenja, prilično smo oduševljeni njome. Parse je, po definiciji, cloud platforma za razvoj iOS, Android, JavaScript, Windows 8, WP 8 i OS X aplikacija. Odnosno, platforma koja se brine o tome da se vi što manje brinete o razvoju. Zvuči zanimljivo, zar ne? Stvar je u tome da se programeri moraju brinuti o 3 segmenta aplikacije. Frontend dijelu, odnosno grafičkom sučelju koje mora biti privlačno da bi ga korisnici prihvatili. Zatim o onom srednjem (logičkom) dijelu koji upravlja podacima i zapravo daje smisao aplikaciji, te o backend segmentu u koji možemo ubrojati skalabilnost, server, bazu podataka, povezivanje sa društvenim mrežama… Cilj Parsea je da ovaj zadnje spomenuti segment vi ne morate dirati, odnosno oni će se za to pobrinuti. Vi se brinite za svoje klijente i buduće korisnike. I tu leži smisao cijele ove platforme.

Kako to izgleda u praksi? Tako da vam ekipa iz Parsea da razne SDK-ove i libraryje sa gotovim rješenjima, a vi ih onda samo kopirate, odnosno implementirate u vaše aplikacije. Vjerujte nam – uštedjeti ćete sate i sate s ovim pristupom. Kratak primjer – trebate spojiti aplikaciju sa Facebookom i Twitterom, odnosno želite dopustiti aplikaciji da objavljuje određene stvari na spomenutim mrežama. Možete ili sami smišljati način, tražiti kôd po Stack Overflowu ili koristiti gotov kôd od Parsea i u svega par minuta riješiti se svih muka. Zbog par linija kôda ne želite gubiti dragocjeno vrijeme. No, nije stvar samo u društvenim mrežama. Tu je i povezivanje sa bazom podataka, izrada raznih kompliciranih upita, korištenje raznih cloud funkcije, izrada određenih klasa… Morate sami probati da biste uvidjeli što vam Parse nudi. Mi smo oduševljeni, a vjerujemo da ćete i vi biti.

Pidoco

Kao što programeri uz pomoć raznih dijagrama skiciraju kako će im izgledati tok programa, tako i grafički dizajneri trebaju neki alat s kojim će moći napraviti prototip grafičkog sučelja. A još bolje je ako je taj alat u oblacima i ako više ljudi ima pristup tom servisu. Pidoco je jedan od takvih servisa, ali daleko od toga da je jedini. Riječ je o fantastičnoj usluzi koja dopušta pojedincu da skicira web stranicu na jedan vrlo jednostavan način. Kada pokrenete ovaj servis (odnosno, logirate se na spomenutu web stranicu) dobivate “Dashboard” putem kojeg kreirate novi projekt. Kada ga kreirate, dobivate radnu površinu koja izgleda kao papir iz matematičke bilježnice gdje vi skicirate vaš UI. Naravno, imate sve elemente ponuđene s lijeve strane i samo ih povučete na tu radnu površinu. No, ne u klasičnom smislu. Ako ste, recimo, zamislili da u gornjem lijevom kutu stoji slika, nećete dovući sliku, nego element koji predstavlja sliku. U ovom slučaju kvadrat sa istaknutim dijagonalama. Kao što smo rekli, vi crtate koncept grafičkog sučelja, a ne samo sučelje. Ipak, možete napraviti da taj koncept bude interaktivan. Recimo napravite meni, a želite da se pritiskom na određeni element unutar tog menija, prebacite na novu stranicu. Nema problema – Pidoco će vas nakon pritiska na spomenuti element prebaciti na novu praznu stranicu gdje crtate koncept za tu stranicu. Shvaćate poantu? Pidoco u biti služi za izradu interaktivnog koncepta web stranice, s time da više ljudi može raditi na istome.

Zanimljivo je da već imate ugrađen veliki broj predložaka pa u kratkom roku možete napraviti prilično impresivno sučelje, a dobra praksa je da se sučelje radi na ovaj način. Prije nego ga (web) programeri počnu kodirati, dobro je da se svi usuglase oko izgleda. Ima li bolji način od ovoga? Sigurno ga nećete rukom crtati na papiru, a ako želite koristiti neke složenije alate tada će vam trebati i više vremena da skicirate isti. Nama je Pidoco omiljen alat ove vrste.

Windows Azure

Kada netko spomene Microsoft prva asocijacija su vam vjerojatno Windowsi. Druga asocijacija su vam možda odlični proizvodi. Treća bi vam uskoro mogla postati njihov proizvod Windows Azure. Riječ je o otvorenoj i fleksibilnoj cloud platformi koja vam dozvoljava da na njoj razvijete aplikaciju, a da pri tome koristite bilo koji jezik, alat ili framework. Sigurno će nekima biti čudno da možete koristiti, recimo Javu, sa Microsoft tehnologijom, ali i to je moguće. I to zahvaljujući REST protokolu (svakako pogledajte detaljnije o čemu je riječ). Nadalje, Windows Azure se brine oko gotovo svih kritičnih segmenata – infrastrukturi, upravljanju podacima, izradi sigurnosne kopije podataka, upravljanju samom aplikacijom, bazi podataka itd. Ova platforma će učiniti sve da što lakše i što brže razvijete aplikaciju, a da pri tome ne mislite na veliki broj stvari. Nešto slično spomenutom Parseu, no Microsoft nudi malo više. Ovdje nije riječ samo o backend podršci, nego podršci za razvoj kompletne aplikacije. Bez obzira da li je to web ili mobilna aplikacija i da li će ju koristiti 100 ili milijun ljudi. Vi samo morate razviti aplikaciju uz pomoć Microsoftovog servisa, a neka vas infrastruktura i skalabilnost ne brinu previše. Na Internetu smo našli nekoliko zanimljivih priča raznih blogera koji su rekli da su neke jednostavne mobilne aplikacije (npr. RSS čitač) razvili unutar par sati koristeći Azure. Ako isto to probate napraviti bez pomoći jednog ovakvog servisa, trebati će vam možda i nekoliko dana, uzimajući u obzir da imate iskustva s programiranjem.To vam govori dovoljno.

Cijena? Ovisi o tome što želite (koliko mjesta, kakav bandwidth, podršku…), no cijene su i više nego prihvatljive. Na službenim web stranicama imate kalkulator koji će vam točno u dolar izračunati koliko vas košta usluga. Palac gore za Microsoft i nadamo se da ćete uz pomoć ovog servisa razviti neku super aplikaciju.

Exceptional

I za kraj ostaje nam cloud servis Exceptional. Možda biste već po samom imenu mogli pretpostaviti o čemu se radi. Radi se o iznimkama (engl. exceptional = iznimka) u web aplikacijama. Osnovna svrha ovog servisa je praćenje rada vaše web aplikacije i prijavljivanje bilo kakve greške (iznimke) u kôdu ili radu same aplikacije. Servis je kompatibilan sa nekoliko popularnih jezika za izradu web aplikacija (Ruby on Rails, Ruby, Django, Rack, Sinatra, JavaScript, Php, Node.js, Heroku…).

Kako exceptional radi? Tako da ga povežete sa svojom aplikacijom, a on će skenirati vaš kôd, te ga testirati. Nakon toga ćete dobiti listu svega onoga što ne valja na web stranici, a to su greške koje vam mogu napraviti štetu ili mogu nanijeti štetu vašim korisnicima. Recimo da imate web stranicu gdje vaši klijenti mogu nešto spremiti u bazu podataka. Sigurno želite da ti podaci budu sigurni. Ako vi imate grešku u kôdu može postojati šansa da se ti podaci ne spreme i Exceptional će vas na to upozoriti. Na to, ali i na sve druge greške. Vi te greške možete pregledavati, filtrirati, ignorirati… Exceptional će vam za neke greške ponuditi rješenje, a za neke neće, no u svakom slučaju je dobro da znate da postoje. Čak vas može i SMS greškom obavijestiti kada je došlo do nekog problema (recimo, da vam je stranica “pala” i da je nedostupna). Sve u svemu, vrlo zanimljiva usluga koju bi trebali koristiti početnici programeri jer oni imaju najviše grešaka i te greške katkada mogu biti fatalne. Naravno, mogu i iskusniji programeri, ako ništa, čisto da se uvjere da im je kôd sasvim dobar i da nema nikakvih problema.


Prethodni članak
Sljedeći članak
RELATED ARTICLES

Komentiraj

Please enter your comment!
Please enter your name here

- Advertisment -

Most Popular