Det finnes et programmeringsprinsipp som heter DRY eller Don’t Repeat Yourself. Om du koder det samme på flere steder, bør du finne en løsning hvor du kun trenger å programmere det en gang. Dette kan også utvides til det som på godt norsk heter “ikke finn opp hjulet på nytt”. Altså, ikke gjør det noen andre har gjort før igjen, med mindre du vet du kan gjøre det bedre, mer effektivt eller gjør det for å lære.
Da jeg starta å utvikle nettsider som jeg etterhvert håpet å kunne leve av, lagde jeg alt fra begynnelsen av, eller iallefall på toppen av rammeverket CakePHP. Dette gjorde at jeg måtte programmere alt selv, fra AJAX-kall, kommentarer, XML Site Map, sidevisninger, tags, database, caching og så videre. Jeg kunne skrevet et kapittel om hver av disse problemene, hvordan jeg gjorde det og hvordan jeg kunne ha gjort det bedre. Alt i alt en veldig god trening i programmering.
Nå har en del av disse sidene ligget brakk i nesten et år, f.eks. Snooze.no. En av de tingene jeg ikke rakk å gjøre ferdig før jeg igjen tok til med studiene på høsten, var å implementere Captcha-beskyttelse på kommentarer, noe som resulterte i at jeg nå har måttet slette 27 000 spam-kommentarer som har ligget på sidene mine. I tillegg har jeg en tips-side som jeg ikke en gang gidder å sjekke, siden de ikke blir lagt ut på sidene uansett. Jeg har nå implementert PHP-captcha (som jeg kanskje kan skrive en post om), men innså at jeg også måtte gjøre det samme for de andre sidene som har egen kode.
Dette gjør at jeg innser at den fasen hvor jeg trenger å bygge mine egne CMS er ferdig. Det er ingen grunn til at jeg skal gjøre det. Det var nyttig å gjøre det en gang, kanskje to ganger og tre ganger, for å lære språket, design og så videre, men ærlig talt er det ikke verdt det. Jeg bruker ti ganger så mye tid på å vedlikeholde en side som jeg selv har bygd, siden jeg må programmere all ny funksjonalitet selv, i forhold til å bruke et CMS som WordPress. Årsaken til at jeg utviklet et eget system for disse sidene er at det ikke er standard blogg/nyhets-sider. Nå har jeg derimot brukt WordPress som CMS så lenge at jeg innser at jeg kan gjøre akkurat det jeg vil med det. En post, kategori og side i WordPress kan inneholde akkurat det jeg selv ønsker, kan vises slik jeg selv vil. Fordelene er innlysende. Spesielt er det nyttig med et oversiktig administrasjonspanel, hundrevis av nyttige plug-ins for kommentarer, SEO, video og annonser. Jeg trenger ikke å lage dette selv. Jeg fokuserer på å markedsføre siden. Det er vondt for mitt programmeringshjerte å måtte ta denne avgjørelsen, da det er utviklingen av sidene jeg virkelig synes er mest moro, men når jeg ser på tiden som blir brukt i forhold til det jeg får ut av det, er det ikke verdt det. Jeg får trøste meg med at det blir uansett en del custom deler i prosjektene.
Jeg tenker jeg kommer tilbake med en ny post om hvordan det er å migrere en side med trafikk og mye innhold inn til WordPress. Det blir interessant å se hvordan jeg skal løse en del problemer med forskjellig innhold (kode, videoer, bilder) og hvordan det vil gå å endre perma-urler (og om jeg kan automatisere 301-redirecting). Firefox kræsjet når jeg skulle laste opp bildet til saken, noe som igjen illustrerte en fin finesse i WordPress, autolagring av utkast. Denne posten ville aldri kommet frem om jeg hadde mitt eget CMS på denne siden.