Möt Fredrik som är konsult sen 20 år tillbaka, och konsult för Techlove och har arbetat med oss ett flertal gånger. Det blir ett samtal om både IT boomen och konkreta tips på hur man ska tänka vid starten av produktionen av en ny webbsida.
Fredriks historia tar sin början 1984 i källaren sittandes framför sina äldre bröders Commodore 64.
– Jag var 6 år gammal, och jag älskade den datorn, fast den inte var min. På den tiden var det ju mest spel. Men efter det, hade vi tidigt PC hemma och jag började att programmera på en 286:a, operativsystemet var MS-DOS. Mitt första program skrev jag nog i Turbo Pascal. Men jag skrev även i Turbo Assembler och BASIC. Det var roliga språk men det var inte så mycket internetutveckling på den tiden. Då skrev man mest program som körde lokalt utan grafiska gränssnitt. Och som hade en smalare målgrupp.
Dessutom tyckte alla andra att man var en nörd när man satt framför datorn. Det va ju inte coolt alls!
Hur visste du vad programmering var innan internet?
– Mina brödrar läste programmering i högstadiet, och Turbo Pascal fanns på datorn. Så då var det egentligen bara en fråga att titta på vad de gjorde och sen förstå det och göra eget utifrån det. Jag minns även att en av min bröder fick en bok “Programmera din PC & PS2 av Peter Norton”. Jag brukade titta i den eftersom den hade en gedigen dokumentation över BIOS och DOS interrupt och dessutom med exempel i Assembler.
Jag kan tänka mig att det var rätt inspirerande för dig när internet blev mer lättillgängligt?
– Jag växte själv upp med en bror som hade dator tidigt och sysslade med programmering. Han hade eget modem och ringde alltid upp på det sent på kvällen för att hålla räkningen nere.
– Jag hade hållit på rätt länge med BBS:er, man kan säga att det var en sorts webbsidor men för att läsa de var man tvungen att låta sin dator koppla upp sig mot de via telenätet och ett modem. I mitten av 90 talet så började teleoperatörerna erbjuda att man kunde ringa upp deras modempooler och koppla upp sig mot först egna tjänster tex First Class och därefter direkt mot internet. Jag och mina kompisar brukade sitta rätt mycket på IRC och chatta för på själva webben fanns ännu inte så mycket.
Webben tog fart typ 1996 och just då arbetade jag på mitt första jobb som systemutvecklare på en stor datoråterförsäljare. Efter ett par år kom IT boomen.
Ja, jag tror att de flesta har minnen från denna tiden. Själv hade jag arbete på en byrå som AD-assistent och den ena veckan lovade företaget mig guld och gröna skogar. För att sen den veckan säga de att det inte gick, sen fick typ alla gå. Galet.
– Ja verkligen! Alla insåg helt plötsligt värdet med att ha en egen webbsida, men det slog över och värderingen, (kanske inte just på hemsidan) blev kraftigt överskattat. Jag arbetade på en av de större riktigt ikoniska företagen och när jag började va vi 300 st, och ett halvår senare 4000 pers. Det gick fort! Och nästan vem som helst som sa att de kunde något inom IT anställdes för att öka värderingen. Det var en jättekul tid men när kraschen kom så fortsatte nog bara vi som var verkligt intresserade.
Men efter det så mognade branschen och många små, andra seriösa företag knoppade upp. Och gör fortfarande idag. Det känns som att en webbsida nu mer är ett medel än ett självändamål som det var då.
Kan du inte berätta lite om hur sättet att programmera ändrat sig över den här tiden?
– Det har definitivt flyttat sig från att ha varit hårdvarunära till att inte alls handla om hårdvara. Och nästan all utveckling man gör så är internet med på ett eller annat sätt. Språken idag C#, Javascript, PHP, Swift, Java är på många sätt lättare men även mycket bredare och erbjuder mycket mer möjligheter än tidigare. Utvecklingsprocessen är snabbare och ofta är det snabbare uppdateringar än tidigare. Dessutom så förändras utvecklingsmiljöerna och språken i en rasande takt, och om man vill sitta på det tåget då är det, det enda man hinner göra.
Jag tror att det är viktigt att stanna upp ibland och fundera på om “den här nya saken eller uppdateringen” bara är en teknisk landvinning, eller faktiskt tillför något affärsvärde till min kund.
I början på 10-talet så blev det vanligare med smartphones och helt plötsligt skulle allt vara responsivt. Det vill säga baserat på hur stor skärm man har, så ska layouten anpassas. Det var förstås en stor utmaning att konvertera icke responsiva webbsidor, men ett måste, för idag är det fler besökare som använder sin smartphone än sin dator.
Jag kommer även ihåg när alla helt plötsligt ville att jag skulle göra rörlig grafik i Flash. Vad hände egentligen med Flash? Det var ju hur stort som helst ett tag, det var ju många som pluggade renodlat bara Flash.
– Flash ägdes av Macromedia och senare Adobe, och var ett plugin till webbläsaren. Många hade dock inte uppdaterat sina plugins och det gjorde Flash väldigt sårbart. Dessutom var det ingen öppen standard och när webbläsarna blev mer kapabla så dog det ut. Det gick plötsligt att göra allt som gått att göra i Flash direkt i HTML, CSS och Javascript istället.
Okej, vi har pratat om IT-boomen men visst va vi även med om en app-boom?
– *Skratt* Ja, i den vevan så skulle ju alla också ha en egen app men mest som en accessoar och en snygg ikon än något affärsmässigt.
Nu bygger vi appar med klar kundnytta och som kompletterar t.ex. webbsidorna eller faktiskt är hela affärsidén.
Vi har pratat om IT och hur mycket det har förändrats på bara 40 år. Hur hänger man med i denna otroliga utvecklingen?
– Tekniskt så är det svårt att hänga med, för kanske 20 år sedan kunde man absorbera nästan allt och det kändes som man kunde behärska allt. Nu om man är borta i en månad så har det hänt massvis inom varje språk och plattform. Det finns lika många språk och evangelister som havrecappuccinos på Södermalm. Allas sätt är det bästa sättet och det ska hela tiden vara den senaste versionen av allt. Jag tror att tricket för webbutveckling är att förstå att det viktigaste av allt är affärsvärdet och inte plattformen.År 1998 så levererade vi också webbsidor precis som idag.
Känner du dig “gammal”?
– Ja. * skratt*
Vad tycker du var den bästa epoken: 90-talet, 00-talet, eller nu?
– Förra årtusendet, så gammal är jag.
Om vi ska prata lite trender, kan du se det i branschen?
– Absolut! Utvecklarskarorna följer det de stora drakarna säger att de ska göra. Sen om det finns ett affärsvärde i det är svårt att säga. Men visst helt plötsligt ska alla programmera i Angular, sen React, sen Vue eller köra ASP.NET, sen ASP.NET MVC, sen .NET Core osv. Så folk gillar att hänga med det senaste.
Vad för uppdrag får du oftast nu?
– Jag skriver mest webbsidor idag, med det sagt väldigt komplexa webbsidor, och jag tror att många utvecklare kan känna igen sig i att också göra både backend och frontend. Med databaser, servertillämpningar, integrationer, och kanske React eller Vue eller en egen frontend.
Det händer även att vi sätter upp någon sida i WordPress för att det är så vansinnigt produktivt och mycket finns färdigt.
Appar är fortfarande en rätt stor apparat. För att skriva native-appar är man hänvisad till Java eller Swift, och för att sen distribuera dem så är det en ribba att komma över att komma in på App Store och Google Play.
– Jag vet att du har ettor och nollor som ska skrivas :), så till sist. Vad är dina bästa råd till de som ska bygga nytt?
– Det absolut viktigaste är att ta tid att tänka först. Att skissa upp en grov idé på ett papper för att förankra med kunden eller projektledaren att man har förstått rätt. Sen tycker jag att det är bra att sätta sig in i kundens verksamhet i minst ett par timmar. Och fundera på vad som är viktigast med den nya lösningen, och kanske fråga dem om vad de tror de är om ett par år. Om man kan förstå uppdragsgivarens perspektiv och deras kunders perspektiv då kommer man att kunna leverera ett bra resultat. För uppdragsgivaren är det väldigt viktigt att utvecklarna förstår åtminstone grundkoncepten för att det ska bli bra.
Efter det, är det bra att diskutera med övriga i projektgruppen: projektledare, grafiker, andra utvecklare, copywriters, servertekniker m.fl. Så att man förstått likadant, och är eniga att förstå vad kunden vill ha och behöver.
Sen tycker jag alltid att det är bra att börja med lite skisser kanske sida för sida, lite olika case bara för att få en grov uppskattning om vilka sidor som ska produceras. Här startar oftast grafikerns arbete och ibland så kan man göra hela webbsidor utan någon som helst funktion – bara utseende – så att man snabbt kan klicka runt i den “färdiga produkten”.
Tekniskt sett så finns det en hel del val att göra: hosting, plattform, utvecklingsspråk, databastyp – allt beror väldigt mycket på kundens befintliga miljöer och vad som lämpar sig bäst för ändamålet. Om en kund t.ex. har mycket av sin infrastruktur i Microsoft Azure och kör ASP.NET på Windows servrar så kanske det är onödigt att skriva de nya sakerna i PHP och hosta hos Amazon osv. Det blir dyrt för kunden att i framtiden underhålla flera miljöer. När man har gjort dessa valen så tycker jag att ett arbete med frekventa avstämningar och demos för kunden är jätteviktigt, helst varje vecka. Det finns inget värre än att någon arbetar i fel riktning med fel saker i flera månader. Det blir bara slöseri med allas tid och andras pengar.
Utvecklarmässigt så försöker jag att hålla en stenhård struktur. Alla uppgifter jag får från kunden sparar jag på ett ställe, alla lösenord i en speciell lösenordsdatabas. När jag bygger så har allt sin plats. Mitt arbete är ofta iterativt – dvs jag bygger en början, och sen bygger jag på, tills jag når målet.
Men jag har alltid klart för mig innan jag börjar programmera, vilka de stora utmaningarna är på vägen, och börjar alltid med dem
Det är ingen idé att jag skriver massa kod som till slut hänger på något som inte går att göra. En sak om struktur är att, efter en tid blir all kod fragmenterad, men ju bättre struktur man håller från början, och förhåller sig till hädanefter desto längre håller resultatet.
Åh jag höll på att glömma att fråga dig, vad var det första programmet du skrev där nere i källaren?
– Masken *skratt*
Jag tackar Fredrik för en trevlig fika, det var verkligen roligt att prata nostalgi och få ta del av Fredriks syn på branschen.
10 snabba frågor
Drömprojekt?
– Ett äventyrsspel.
Mac eller PC?
– Mac och PC.
Android eller iPhone?
– iPhone.
Topp 3 bästa webbsidorna du vet för din bransch:
– Stackoverflow, Github och Google.
Topp 3 bästa webbsidorna du vet i övrigt
– Reddit, Imgur och YouTube.
Social media?
– Twitter.
Det sista du kollar på mobilen innan du ska sova?
– Vad klockan är.
Bästa med Techlove?
– Människorna! Alla är väldigt affärsorienterade, professionella och måna om att resultatet ska bli riktigt bra.
Vilken dator/telefon har du?
– Mac, iPhone och Android. Sen virtualiserar jag flera andra miljöer.