Ranten som inte blev en rant


By popular demand hade jag i det här inlägget planerat att ranta över något som gör mig upprörd. Hela grejen kändes rejält utmanande eftersom jag sällan eldar upp mig så pass att jag börjar veva vilt omkring mig. Efter många om och men hittade jag till slut ett ämne som passade uppgiften. Jag satte mig vid datorn, kavlade upp ärmarna och började skriva. Och nu när jag i efterhand skummar igenom utfallet konstaterar jag att det inte blev någon rant alls. På sin höjd kan man kalla texten en nostalgisk och småsur reflektion, men rant, nej, det är nog fel benämning. Bedöm själva.

Mina första stapplande steg inom programmering togs under slutet av 90-talet. Mitt metalband skulle ta över världen och finns man inte på webben så finns man som bekant inte alls. Så jag skaffade en domän åt bandet och började hacka HTML och Javascript som en tok. Inte för att jag fattade hur eller vad jag gjorde, men visst fick jag till något bestående av blinkande texter och animerade giffar. Det var inte lätt att få saker och ting att funka lika i olika webbläsare – i synnerhet Javascriptbitarna – men jag hackade på och om något gick fel var det ju bara att rätta till.

Ganska snabbt kom jag underfund med att det var jobbigt att underhålla statisk HTML. Tänk om bandmedlemmarna kunde hjälpa till med att lägga in nyheter på sidan så att jag fick mer tid över till att pilla navelludd? Och tänk om vi kunde få till en gästbok – det vore väldigt modernt! Men för att nå dit behövdes ett server-side språk och som hos många andra webhotell at the time var det PHP som gällde. Jag läste på, lärde mig av mina misstag och lyckades till slut producera något som gjorde jobbet. Vi kunde nu fördela arbetet med att underhålla bandets hemsida. Och jag prisade PHP – vilket språk! Det gick snabbt att få saker på plats, syntaxen var förlåtande och om något gick fel var det ju bara att rätta till – precis som med Javascript.

Några år passerade och i samband med mina studier på Linnéuniversitetet blev jag medlem i forskningscentret CeLeKT. En av de första grejerna jag fick som uppgift på forskningscentret var att ta över förvaltningen av ett system byggt i Java. Jag hade aldrig testat på Java tidigare och mina första intryck av språket var inte särkilt bra. Minsta avsteg från syntaxen ledde till att programmet inte ens kompilerade och den starka typningen kändes väldigt omständig. I Javascript och PHP behövde man minsann inte krångla med att casta saker hit och dit – det bara funkade!

Men var det verkligen något bra?

Mina studier fortsatte in i doktorandskap, jag undervisade i C# och hade möjlighet att sätta mig bättre in i Java under mitt arbete på forskningscentret. Och gradvis började jag se det fina med det jag tidigare såg som omständigt och krångligt. Strukturen och ramarna som till exempel C# och Java sätter är något betryggande att luta sig emot när man utvecklar – och något ovärderligt när man refaktorerar. Strukturen kan även ge det IDE man använder sig av grymma slutledningsförmågor som gör att programmering blir lite som att lägga ett pussel. Med PHP och Javascript upplevde jag att man kunde lägga sina pussel lite som man själv ville, typ som Melander gör i slutet av den här videon.

Det är nu 2014. Sedan mina första stapplande steg som systemutvecklare har det lobbats in features i PHP såsom namespaces och lite vettigare objektorientering för att staga upp språket. På serversidan har vi alltså en mängd språk som i deras utformning ger oss struktur för att hålla ordning och reda. Men vad det gäller Javascript verkar det numera vara vedertaget att man bör förlita sig på olika ramverk och bibliotek för att uppnå detta (eller för att man ska ha något hopp om att koden funkar i olika webbläsare).

Samtidigt hör jag att det börjar bli modernt med MVC-strukturer även på klientsidan och att vi i och med HTML5s antågande gärna kan göra klientdelarna lite fetare. Borde vi då inte ha något även på klientsidan som ger oss ordning och reda ”out of the box” som till exempel Java och C# gör på serversidan? Ska man verkligen behöva förlita sig på ramverk och bibliotek för att kunna bygga robusta klienter i webbapplikationer?

Det tycker inte jag att man ska behöva år 2014.


Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *