Om mig

Mer information kommer snart.

Matematikdelen

Mer information kommer snart.

Programmeringsdelen

Redan 1985 fick jag min första dator, ett exemplar av den populära modellen Commodore 64 som hade en inbyggd tolkare för programspråket BASIC. Ett par år senare fick jag åtkomst till en maskin med IBM's operativsystem PC-DOS, en sorts föregångare till dagens Windowsdatorer. Jag lärde mig då språken Pascal, COBOL och C (Pascal har jag inte använt sedan jag var tonåring).

I denna period fick jag även några av mina första "uppdrag" som programmerare, bland annat kan nämnas ett poesiprogram för utskrift av autogenererade dikter som konstruerades utifrån en algoritm till vilken Steen Krarup Jensen (min far) var upphovsman. Hösten 1989 var denna diktgenerator med på en stor konstutställning i Köpenhamn och fick en del uppmärksamhet i dåtidens analoga medier.

Ett annat av mina tidiga "projekt" var ett litet skript för att räkna ut falska personnummer. Strängt taget var det olagligt att använda skriptet, men denna ogärning har förhoppningsvis preskriberats, så här kommer historien:

På den tiden bodde jag i Aarhus och för att kunna åka med lokaltrafiken behövdes giltig biljett – och det fanns gott om fattiga studenter. Dyra biljetter var ett problem som måste lösas, ansåg jag. Det gick bra att kliva på bussen utan biljett, men biljettkontrollerna var frekventa och kontrollanterna hade en liten apparat med sig i vilken de kunde skriva in ett personnummer för att säkerställa att det var ett giltigt sådant. Detta var innan det mobila datanätet fanns, och kontrollanterna hade ingen uppkoppling, så någon direktförbindelse till ett personregister kunde inte etableras på plats.

Med mitt skript, som kunde köras på de flesta av dåtidens programmerbara miniräknare, var det enkelt att generera ett nytt personnummer som sedan memorerades, innan bussresan. Många använde sin vanliga födelsedag och bytte endast ut de sista fyra kontrollsiffrorna mot de nya "giltiga" siffrorna. När kontrollanterna dök upp behövde resenären bara meddela att ingen medhavd legitimation fanns och sedan uppge ett valfritt namn samt det memorerade "personnumret". Först efter kontrollanternas arbetspass blev det upptäckt att namn och personnummer inte stämde överens – och någon straffavgift kunde sålunda aldrig skickas till fuskaren.

Ett tag var det så många som använde denna metod att fenomenet nämndes i en av lokaltidningarna. Så småningom ändrade kontrollanterna strategi, och mitt bidrag till samhället (som jag med ungdomlig entusiasm kallade Gratis kollektivtrafik till studerande och andra behövande) slutade fungera.

Under början av 1990-talet utvecklade jag ett litet bortglömt strategispel. Jag fick även i uppdrag att bygga drivrutiner för diverse skrivare och andra externa enheter som på den tiden ofta drabbades av kompatibilitetsproblem. Rent pengamässigt gav det inte mycket, men lärorikt var det.

Sedan tog jag några års paus från all teknik och våren 1994 bosatte jag mig i en kolonistuga utan anslutning till elnätet. Jag installerade ett litet lokalt kraftverk bestående av ett lastbilsbatteri samt en bensindriven generator för laddning, backup samt diverse dammsugnings- och byggprojekt. Med gasoldrivna vitvaror i köket, och 12V-batteriet för lampor, tv och radio, fungerade vardagen hyfsat. I denna period fokuserade jag på musik och poesi samt de matematikkurser jag läste på Aarhus Universitet, och samtidigt reflekterade jag mycket över begrepp som informatik och cybernetik. Jag insåg att jag behövde mycket mer teori innan jag ens skulle kunna välja vad jag ville syssla med.

Hösten 1996 bytte jag universitet och flyttade till Göteborg. Då lämnade jag helt autodidaktiken och de pragmatiska metoder som tidigare hade präglat mitt arbetssätt. Istället blev jag intresserat av datalogiska problemställningar och sommaren 1997 påbörjade jag teoretiska studier i numeriska metoder, algoritmer och övriga ämnen med relevans till systemering. Samtidigt läste jag fysik, och mer matematik. I denna period programmerade jag primärt i C, C++, Fortran, MATLAB och Mathematica, men även Visual Basic och Prolog dök upp i arbetsflödet ibland.

Jag slutförde aldrig något program vid universitetet. Istället läste jag fristående kurser och valde inriktning enbart utifrån intresse, mer eller mindre slumpmässigt och utan mål. Samtidigt började jag jobba extra i ett företag med teknisk utveckling som affärsområde. Det gav mig en bra erfarenhet när det gäller att omsätta teori till praxis. Jag var bland annat involverad i konstruktionen av prototypen för en medicinsk apparat för detektering av hudcancer.

Strax innan vårterminen 2001 blev en av mina lärare vid universitetet färdig med sin avhandling och bytte jobb. Jag fick i uppdrag att ta över två kvällskurser i hårdvaruprogrammering inom området fysikalisk mätteknik. Detta var mitt första undervisningsuppdrag någonsin, och jag minns att jag under några intensiva veckor satt på Chalmers' bibliotek och grävde mig igenom hela C99-standarden.

Efter en termin utvidgades denna verksamhet och därefter hade jag hand om fyra kurser. Under åren 2001 till 2003 höll jag totalt 175 föreläsningar och lika många laborationer. I undervisningen byggde vi system för mätning och styrning, med fokus på laboratorieutrustning. Vi använde LabWindows/CVI (en utvecklingsmiljö som påminner om LabVIEW men med C som språk) tillsammans med ett tillägg till Visual Studio som heter Measurement Studio (så C++ kunde användas med det GUI som skapades med LabWindows/CVI).

Om jag minns rätt var det även 2003 som jag började undervisa i C++ en halv dag i veckan på Göteborgregionens Tekniska Gymnasium – ett uppdrag jag fortfarande har.

Runt 2004 bytte jag delvist spår och började alltmer syssla med webbutveckling. Jag lärde mig JavaScript (och självklart HTML och CSS) och jobbade ett tag som frilansande utvecklare på klientsidan (det som numera kallas frontend).

Hösten 2006 startade jag OffCircle som jag drev i 15 år. Under dessa år var jag involverad i ett femtiotal projekt som hade med programmering att göra. Utöver alla tidigare nämnda språk fick jag erfarenhet av Python, Java och C#.

En explosiv spridning av ramverket WordPress medförde att serverspråket PHP blev allt viktigare. Numera är detta språk en av mina främsta kompetenser, och jag har under årens lopp konstruerat och uppdaterat ett stort antal teman och tillägg till WordPress. Ytterligare en massa backend-arbete har gjort att jag idag betraktar mig som fullstack-webbutvecklare. Jag är även duktig på modellering och har erfarenhet av simuleringar (då är det oftast C eller C++ som gäller). Jag har även varit med i utvecklingen av flera mobilapplikationer.

I början av höstterminen 2019 utkom boken C++ på riktigt i vilken jag har samlat essensen av arton års undervisning i grundläggande programmering. Ett par gånger har jag även hållit kurser i Python, vilket har resulterat i e-häftet En ultrakort introduktion till Python som skrevs sommaren 2021.

Kunskap är en sak, noggrannhet en annan. Det finns många företag som erbjuder programmering, men särskilt inom webbprogrammering finns det även många som skapar saker som inte fungerar. Min specialitet har under årens lopp varit att utföra en noggrann granskning av det som krånglar, identifiera problemen och sedan lösa dem. Den sortens uppdrag har jag alltid tyckt mycket om.

Musikdelen

Mer information kommer snart.

Språkdelen

Mer information kommer snart.

Grafikdelen

Mer information kommer snart.

Kontaktuppgifter

E-post: information@simonjensen.com
English