Litt om meg

Mitt navn er Espen Helgedagsrud, og jeg studerer for tiden informatikk ved Universitetet i Oslo. Helt spesifikt går jeg på profesjonsstudiet "Systemutvikling: modellering og programmering" (mest kjent som SUMP) og sikter på en mastergrad i feltet.
På privaten liker jeg å programmere, spille dataspill og annen generell nerding. Noen tech-trender jeg er glad i: Generell webteknologi (userjs, jquery, html5, semantisk web), høynivå RAD-programmering (spesielt i Python) og enkel spillprogrammering.
Ved spørsmål er det bare å ta kontakt. Jeg kan nås på epost espenoh[at]ifi.uio.no stort sett hele døgnet.
Fag jeg tar nå (Vår 2011):
- AST1010
- INF3190
- INF3510
Fag jeg har tatt tidligere:
- EXPHIL03
- INF1000
- INF1010
- INF1040
- INF1050
- INF1060
- INF1800
- INF2220
- INF2270
- INF3151
- INF3331
- INF3580
- MAT1001
- MAT1030
INF1010
Våren 2009 tok jeg emnet INF1010 som var et rimelig kjedelig og rett-fram påbygningskurs i Java. Det ble derimot arrangert en del interessante konkurranser i forbindelse med Oblig 3 (som omhandlet GUI-programmering), så her måtte jeg seff bidra litt:Starfield

Dette er en enkel starfield-effekt (ala den gamle skjermsparer'n i windows) med en sinescroller kjørende over. Begge effektene er ganske greie å implementere, og ser overraskende bra ut når de kjører i full hastighet på en moderne maskin. Det skal dog sies at selv om effektene er greie i teorien, er det å implementere dem i Swing ikke akkurat barnemat, og det gikk GANSKE mange timer med på å få ting til å kjøre i nogenlunde OK hastighet.
Og nei, jeg vant ingen av konkurransene, men jeg fikk en honorable mention og ble vist fram på storskjerm under premieutdelinga... :)
Se: Video (YouTube)
Last ned: Starfield.java - Zip med kildekode + eksempel
INF3151
Høsten 2010 tok jeg emnet INF3151, hvor jeg bygget mitt eget operativsystem fra bunnen av. Dessverre får vi ikke lov til å legge ut koden til selve OS-et vi lagde, men jeg snekret sammen noen morsomme småprogrammer til selve OS-et underveis i prosjektet, og disse kan fint legges ut.
NB: Merk at disse programmene er skrevet for vårt eget OS og kan/vil derfor kreve vesentlig modifikasjon for å kjøre andre steder
Sinescroller

Siden disse sinusscrollerne tydeligvis har blitt varemerket mitt hadde
jeg jo ikke noe valg når jeg først fikk litt dødtid mens jeg jobbet
med OS-implementeringa. Siden slik luksus som Sin()
seff ikke
funker når man jobber rett mot hardware måtte jeg trylle fram samma
funksjonen ved hjelp av litt inline assembly mot x87
FPU-en, men det fungerte
overraskende greit. Ellers er det lite å si om koden egentlig, den er
rimelig rett-fram og lite komplisert.
Se: Video (YouTube)
Last ned: scroller.c
Mandelbrot

Siden sinescollern gikk såpass enkelt, tenkte jeg at jeg måtte prøve å lage no litt mer avansert og fikk ideen om å lage en Mandelbrot-tegner. Siden vi bare har tilgang til en enkel 80x25 monokrom tekstmodus i OS-et vårt måtte det improviseres en hel del for å få fram et gjenkjennelig bilde, men med den endelige paletten synes jeg resultate ble helt knall. Algoritmen brukt er rippa rett fra pseudokoden på wikipedia og skrevet om til C, resten er småendringer for å få alt til å fungere riktig med OS-et.
Se: Video (YouTube)
Last ned: mandelbrot.c