Svaku web stranicu danas pokreće nešto što se vrti u pozadini, nešto što nitko ne vidi, a to je sustav za upravljanje sadržajima, CMS ili Content Management System. Preplavljeni smo raznim open source CMS-ovima. Od malih koji su prilagođeni isključivo dizajnerima, naprednijih koji imaju moćnu podršku za gotovo sve zahtjevima pa i posebno izrađeni sistemi koji su prilagođeni isključivo potrebama pojedinog projekta.
Koji odabrati? Da li koristiti jedno od gotovih rješenja ili se upuštati u izradu vlastitog CMS-a kojeg ćemo možda moći iskoristiti i na drugim projektima? Je li vam vlastiti sustav za upravljanje sadržajem potreban?
Koji odabrati? Da li koristiti jedno od gotovih rješenja ili se upuštati u izradu vlastitog CMS-a kojeg ćemo možda moći iskoristiti i na drugim projektima? Je li vam vlastiti sustav za upravljanje sadržajem potreban?
Odgovor na ovo pitanje nije ni da, ni ne, već – po potrebi. Sjećate se kada je svaka bolja web agencija imala vlastito izrađeni CMS sustav prilagođen svojim potrebama? Nekima je to bilo pitanje prestiža. Neki se i danas tako ponašaju. Tada nam nije padalo na pamet da će postojati rješenja poput WordPressa, Expresion Enginea, Drupala, Codignitera, Cake PHP-a i drugih. Neki od spomenutih gotovih sustava su otvoreni odnosno open source.
Open source je software koji je licenciran od strane proizvođača na način da krajnjim korisnicima omogući pristup izvornom kodu i prava da slobodno uređuju i prilagođavaju strukturu i dizajn softvera. Ukratko – gotova rješenja koja možete koristiti. U slučaju Expression Enginea također imate pristup kodu, ali ne smijete ga distribuirati i morate platiti licencu.
Iako su i prije postojali neki open source CMS-ovi, rijetko su odgovarali zahtjevima programera tj. klijenata. Programeri su se koristili onim alatima koji su im bili dostupni, poput recimo PHP-a. Bilo je logično raditi vlastiti sustav za upravljanje sadržajima.To je trajalo i traje, jer je bilo potrebno održavati i unaprjeđivati sustav kako bi on odgovarao novim potrebama korisnika i bio tehnološki aktualan.
Danas imamo…
Znamo što su WordPress, Drupal i Expression Engine. WordPress, napravljen kao sustav za blogiranje, danas je unaprijeđen toliko da može pokretati i zahtjevnije web stranice. Drugi open source sustavi također su se razvijali. Korisnici su navikli na nested komentare, RSS kanale, integraciju sa društvenim mrežama, napredne galerije, text editore itd.
Sve te stvari bilo bi potrebno ugraditi u vaš budući CMS kako bi bili u koraku s tehnologijom i zahtjevima korisnika. Mislite da za to imate vremena? Svi spomenuti open source CMS-ovi i dalje unaprjeđuju i unose novitete kako se tehnologija razvija. Zašto onda jednostavno ne koristiti neko od ponuđenih gotovih rješenja? Bi li korištenje nekog open source CMS-a kao proizvod koji se isporučuje klijentu bilo neprofesionalno?
Prilagođeno svakom projektu?
U nekim slučajevima open source CMS jednostavno ne može podnijeti sav taj teret. Veliki projekti koji zahtijevaju veću sigurnost, fleksiblnost, kartično poslovanje i referral programe ne mogu biti napravljeni uz gotovo rješenje.
Planiranje takvih projekata, pa prema tome i sustava koji ih pogone, je dug i zahtjevan proces i ne postoji “gotovo” rješenje. U tom slučaju je potrebno pisati vlastiti CMS prilagođen isključivo tim potrebama. Onima koji su već radili vlastiti sustav za upravljanje sadržajem koristit će ga barem malo. Oni koji ga nemaju, a razmišljaju ga razviti preporučam da dobro razmisle.
Nakon nekoliko većih projekata imate napisano mnogo koda i gotovih modula pa vam padne na pamet da sve to ujedinite u jedan solidan CMS kako bi sebi olakšali daljnji rad. Možda se čini jednostavnim, ali imajte na umu da ćete morati održavati i unaprjeđivati sustav za sebe i klijente.
Teško ćete izaći na kraj na kraj s vlastitim sustav ako ste sami. Ako vas ima više, bit će vam nešto lakše. Međutim, od ukupnog rada koje ćete uložiti da bi poboljšali sustav, možda će 50 do 60 posto biti posvećeno zahtjevima klijenta ili projekta za što ćete biti plaćeni. Hoće li vam se isplatiti ulaganje ostalih 40 do 50 posto?
Vlastiti content management system – je li zaista potreban?
Prije nego što se odlučite krenuti u izradu vlastitog sustava za upravljanje sadržajem, pročitajte iskustva profesionalaca koji su proveli i do 10 godina radeći vlastite sustave:
Nikola Plejić, developer
Vlastiti CMS mi se pokazao apsolutno nepotreban. Iskorišten je na nekoliko projekata, dovoljno da financijski opravda investiciju. Ima dodanu vrijednost da sam na njemu ponešto i naučio, no mislim da bi to vrijeme bilo bolje utrošeno na učenje nečeg drugog. Ono što je jako pozitivno: iz CMS-a je izašao moj mali PHP framework kojeg sada koristim na većini PHP projekata ne-CMS tipa i koji mi jako dobro odgovara. Ulaganje je bilo minimalno jer su klijenti bili relativno nezahtjevni, ali recimo da nisam radio na tome “iz gušta”.
Bez vlastitog CMS-a bih mogao odgovarati zahtjevima klijenata, i zapravo već neko vrijeme odgovaram. Većinu poslova koji trebaju neki CMS danas odrađujem Drupalom ili (nešto rjeđe) WordPressom. Apsolutno ne smatram da je to neprofesionalno, naprotiv. Open source CMS-ovi su sve odreda prilično zreli projekti koji mi omogućuju da ne razvijam već sto puta razvijene stvari i u potpunosti se posvetim problemima specifičnim za klijenta. Iz toga slijedi da klijent dobije kvalitetniji i brže razvijen proizvod. U procesu se može i ispraviti poneki bug u CMS-u i pomoći drugim ljudima.
Naravno, sve to pada u vodu ako klijent ima neki posebno specifičan zahtjev koji jednostavno ne “paše” u neko gotovo rješenje – no to se onda i prikladno naplati.
Krešimir Katušić, developer, Twinkle Tap
Vlastiti CMS je bio potreban onoliko koliko je nama davao tada rješenje za platformu na kojoj možemo brzo izraditi neki sajt i da nam taj naš CMS sadržava 70 posto stvari s kojim smo se najčešće tada uocčavali u zahtjevima klijenata. Isplatio se na kroz desetak web stranica s kojima se bez problema nosio, ali onda su došle zahtjevnije stranice i ponovno smo trebali trošiti vrijeme za razvoj. Došlo je i vrijeme kada se to nije isplatilo.
Najveći dodatak je bio webshop i tu se potrošilo dosta vremena, što je za taj projekt bilo neisplativo. Isplatilo se u idućem projektu. Većina implementacija i jest išla radi potrebe klijenata. Pitao sam se gdje je tu kraj? Smiješno pitanje, jer kraja nema. Tko može držati ritam neka mu je sa srećom.
Oko 95 posto projekata se može napraviti s WordPressom ili Expression Enginom. Dosta programera misli da se ne može, ali ako poznaju neki CMS kao što mi kažemo u “dušu”, onda se i znaju ideje za rješavanje zahtjeva.
Korištenjem open source rješenja vaš sustav se konstantno ažurira. Imate newslettere koji vam javljaju sigurnosne propuste, imate se i kome obratiti za sigurnosni propust ili bilo koju drugu neispravnost u radu. Klijent ima nešto šta mu mogu održavati programeri diljem svijeta, znači klupko koje svatko raspetljava, a ne samo tvorac.
Tomislav Capan, developer, Muzika.hr
Što se konkretno našeg projekta tiče, danas bismo vjerojatno mogli bez vlastitog CMS-a, s nekim generičkim rješenjem, ali nam naš sustav omogućava lakše prilagodbe specifičnim zahtjevima i potrebama. S druge strane, 2003. godine kada smo portal upogonili CMS sustavom, nije bilo generičkog CMS-a koji je mogao odgovoriti potrebama news portala. Mi vlastiti sustav iskorištavamo jer je prilagođen našim potrebama. Generično rješenje bi također zahtijevalo ulaganje u razvoj specifičnih modula za naše potrebe, uz pripadni overhead u vremenu upoznavanja se sa tim sustavom i trošak izrade dodatnih modula za njega.
Prednost generičkog, open source rješenja nadograđenog vlastitim modulima bi bila ušteda u razvoju core CMS sustava kroz community, a mi bismo morali brinuti samo za naše module. Na izradu našeg sustava utrošilo se oko 9 mjeseci unazad 2 godine kad smo krenuli u unaprjeđenje. Razlozi – tehnološki i radi hvatanja koraka i radi ispravljanja nekih starih pogrešaka, ali jednako tako i radi naših potreba kao ‘naručitelja’, odnosno novih funkcionalnosti koje smo tijekom rada uočili da su potrebne. Bez vlastitog CMS-a? Mogao bih, ovisno o klijentima i zahtjevima.
Korištenje open source rješenja ne smatram neprofesionalnim, jer današnja open source rješenja mogu ponuditi odgovarajuću kvalitetu. No, potrebno je imati tim developera koji to rješenje dobro poznaju i razumiju kako bi mogli kvalitetno odraditi njegovu implementaciju. S druge strane, custom rješenja preporučam kad postoji opravdan razlog, bilo s tehničke, bilo s poslovne strane. Ponajviše ga vidim u razvoju vlastitih softverskih proizvoda i poslova gdje je softver jedan od ključnih elemenata, a manje u implementaciji pojedinačnih web rješenja za klijenta koja nisu nužno njegov core-business.
Goran Peuc, Nivas
Vlastiti CMS se krenuo raditi prije jedno 8 godina, jer na tržištu nije bilo ničega što je dobro radilo, ili barem ničega što smo mogli u tom trenu shvatiti. Tako smo krenuli raditi Vudu. Budući da ga koristimo na većini projekata Vudu se razvio. Dodatne module smo razvijali kada ih je neki klijent prvi puta trebao. Od payment gateway integracije, logike webshopa sa beskonačno varijacija objekta, do affiliate sustava korisnika (postotak, pozivanje korisnika u sustav), itd.
Rad na novim mogućnostima je u 60 posto slučajeva kada projekt traži nešto specifično, a oko 40 posto na našu ruku. Bolji text editor, jQuery Cropper slika da klijenti ne moraju imati Photoshop instaliran nego mogu croppati direktno u CMS-u, bolji security, itd.
Bez ovog CMS-a nema šanse da bi mogli odraditi većinu poslova, jer su zahtjevi klijenata takvi da je nemoguće naći gotovo rješenje. Čak i da je moguće, daljnji razvoj bi bio nemoguć. Primjer je recimo Kolektiva. Takav CMS ne možeš dobiti. U pozadini takve web stranice ima tisuću stvari koje korisnici ne vide. Čak i ako Kolektivu ti negdje možeš kupiti ili skinuti kao open source rješenje, što se događa kada klijent treba neku ludu mogućnost? Gubiš mogućnost patcheva u budućnosti, jer si ti toliko promijenio kod da bi ti patch vjerojatno pregazio pola koda kojeg si prilagodio.
Open source rješenja poput WordPressa ili Expression Engina su odlična, ali sve ima svoje mjesto i vrijeme. Ne možete napraviti Crosig na WordPressu. Među ostalim i zato što je zakonski propisano da web stranice financijskih institucija ne smiju biti na open source rješenjima, jer je open source podložan lakšem hakiranju budući i hakeri imaju uvid u kod).
Nespecifične stranice poput blogova ili medija svakako treba na open source. Štoviše, ne mora biti niti na open sourceu – može biti na nekom servisu! Tumblr je odličan za fotografe. Kupiš domenu, usmjeriš na neki Tumblr profil i imaš sajt. Gotovo. Zašto raditi vlastito tamo gdje je nepotrebno?
Branimir Šloser, developer, Emusoft
Pocčeo raditi dinamičke stranice prije 10 god. Tada je u modi bio PhpNuke CMS. Bio je revolucija i svi su ga hvalili… Ja sam malo prčkao po njemu i skužio da te dosta toga ograničava i napisao svoj. Bio je jadan, ali sam mogao apsolutno sve što zamislim (ili klijentu padne na pamet). Od tada ne koristim gotove CMS-ove.
Koncentrirao sam se na sustav kojim mogu izgenerirati bilo kakav back-end u vrlo kratkom vremenu. To je dosadan dio, a svaki gotovi CMS te tu ograničava. U tom slučaju se jako isplatio. Većinom naručitelja ne zanima što je iza dizajna… Dobio sam par upita koji su tražili izričito WordPress, ali takve odbijam ili šaljem dalje.
Bez vlastitog CMS-a? Sve ovisi o projektu… Teško mi se sjetiti projekta koji sam radio u zadnjih nekoliko godina koji bi se mogli (bez velikih muka i kopanja po kodu) izvesti na Wordpresu. Moj savjet je uložiti vrijeme i lovu u izradu dobrog frameworka na kojem ćete bazirati CMS. To će se isplatiti.
Iako nijedan od ovih pristupa nije loš, trebali bismo iskoristiti open source rješenja u situacijama i projektima koji nam to dopuštaju.