Komprimering

Nu är det äntligen dags att skriva om det som jag hade som tydligaste syfte med den här bloggen när jag startade den, nämligen programmering. Det har tyvärr inte blivit så mycket med det men nu är det alltså dags. Som inledning hade jag tänkte ta upp lite av det som jag läser om i skolan just nu och det är kodningsteori.

När man ska komprimera data på något sätt utan att förlora någon information, det vill säga förlustfri komprimering, används ofta Huffmankod som är en sorts prefixkod. Prefixkod bygger på att man kodar symboler med olika antal bitar beroende på hur ofta symbolen förekommer. Ju större sannolikhet ju färre bitar och tvärt om. Huffman utvecklade 1952 en algoritm för att beräkna den mest effektiva prefixkoden och algoritmen ersatte därmed Huffmans handledare, Robert Fanos algoritm för att beräkna prefixkoder men som inte alltid ger den mest effektiva. Fanos algoritm kallas också för Shannon-Fano eftersom Fano arbetade med Claude Shannon för att komma fram till algoritmen som helt och hållet baseras på Shannons arbete med informationsteori.

I många kända komprimeringstillämpningar används huffmankod, till exempel i zip, jpeg, och mpeg, naturligtvis i kombination med andra komprimeringsalgoritmer men huffmankod är fortfarande viktig för att generera prefixkod. Jag har gjort en implementation av Fano-kod som jag kommer att publicera här. Syftet är att även implementera Huffmankod och jämföra dessa två och se vilken som är bäst när det gäller effektivitet, komplexitet och resursutnyttjande.

Principen för Fanokod är följande:

Algorithm:

We have a sorted list of elements a1 to an with an associated probability p1 to pn. The list is sorted by probability in descending order.

  1. Divide the list in two parts so that the total probabilities are as close to being equal as possible.
  2. Assign the left sub list 1 and the right 0.
  3. Apply step 1 and 2 on each sub list until all lists have a length of one.
  4. Enter the accumulated sequence of ones and zeros into the element code attribute.
Fanokod


Bilbesiktning och mat

Emil på mcd

Lyckades få sista tiden på
bilprovningen för en hel månad framåt i dag. Tyvärr blev det bakläxa, vilken jag också antagit men det var lite värre en jag faktiskt hade trott. Båda spindellederna på ena hjulet måste bytas. Jag fattar inte vad det är som gör det för jag har bytt just dessa spindelleder två år i rad. Den ena är alltså bara ett år gammal och den andra är två medan de övriga sex är minst sex år gamla. Ska kanske byta verkstad?

Emil och jag passade på att äta lite lunch på stan och Emil hann med lite lek också.


Helgmat

Gräsänkling hela helgen och vad passar då bättre än pizza och öl? Jag kunde i alla fall inte tänka mig något bättre så det blev oxfilé, köttfärs, paprika och lökpizza. Mums.
Så kom Cissi hem och då blev det förstås grillpremiär. Gasolgrillen var upprustad efter vinterförvaring (nåja) och ny gasoltub var inköpt för sista slantarna innan löning. Det är sjukt dyrt med gasol. I alla fall om man tänker vid ett köptillfälle i slutet av studentmånaden fast med ett pris på 30 kr/kg (om man inte räknar inköpet av tuben som man bara behöver göra en gång) och att tuben räcker för JÄTTEmånga grillningar under minst två sommrar så är det kanske inte så dyrt. Eller jävligt billigt till och med.

Tyvärr blev det ingen bild på kalaset. Det är fortfarande för kallt att sitta ute och äta så jag lovar att när den dagen kommer så blir den en bild.
  • Grillad rostbiff med pommes strips, purjolöksröra, wookade grönsaker och en sallad.

Torsdag

Frukostkorv med kokt potatis och stuvade morötter.

Onsdag

Stekt fläskytterfilé med pommes frites, tzatziki och greksallad.

Emil på cykeltur

Emil cyklar

Nu är det vår på riktigt!

Om Rickard Nilsson

rickard_ram
På den här sidan kommer min livshistoria berättas och uppdateras så snart något nytt och spännande händer mig.

Om ni vill kontakta mig kan ni kommentera den här sidan
eller skicka ett mail (ersätt at med @).




2007: Färdig Civilingenjör Informationsteknologi (M.Sc.) 180p. Började anställning som konsult på NinetechGruppen AB.

2006: Tvillingarna Oscar och Olle föddes fem veckor för tidigt och vi fick spendera en vecka på Karlstads centralsjukhus. Lagom till Jul och nyår fick vi komma hem. 160 högskolepoäng avklarade. Började blogga...

2002: Började på Civilingenjörsprogrammet (IT) vid Karlstads universitet. I december flyttade familjen till vår nuvarande fyra.

2001: Min son föds. Vi bytte till en trea på samma område. Jag började jobba för Calands och via dem gjorde jag min första av många sommrar som vikarie hos Berendsen.

2000: Muckade efter 10 månaders skjutande och matrielvårdande med höga betyg. Jag började jobba som Black Jack-dealer på numera nerlagda krogen Jäger i Karlstad samtidigt som jag blev sambo och vi flyttade in hos hennes pappa. Strax före årsskiftet flyttade vi in i en egen tvåa.

1999: Tog studenten med en naturvetenskaplig examen med datainriktning. På hösten ryckte jag in för militärtjänstgöring som skyttegruppbefäl på IB2 i Kristinehamn.

1997: Valde att läsa om andra året för att komma i kapp i kemi. Jag träffade min nuvarande sambo.

1996: Började läsa datainriktningen på NV-programmet och de ämnen som var dataorienterade gick mycket bra.

1995: Började gymnasiet och det naturvetenskapliga programmet. Jag valde Sundsta- Älvkullegymnasiet eftersom jag redan tagit sikte på datainriktningen de nyligen startat.

1989: Familjen flyttade till Värmland under sommaren och skolan tog en annan vändning.

1979: Jag föddes på Visby lasarett och sen var det full fart. Samma år flyttade vi ut till Endre och det nybyggda huset.

Tisdag

Tacos: Tortillias, Mini-taco tubs, köttfärs och grönsaker. Serveras med tacosås och ost.

SM GULD!

Jörgen JönssonFärjestad avgör SM-guldet med 5 - 3 mot Frölunda i sjätte finalspelsmatchen hemma i Lövbergs Lila Arena.

Färjestad dominerade hela matchen från början till slut och Frölunda lyckades aldrig bjuda på något riktigt motstånd. Det var en tämligen tam insats från Frölunda som gjorde att den sjätte och, visade det sig, avgörande finalspelsmatchen blev en ganska tråkigt och allt annat än spännande tillställning. Färjestad bjöd på snygga mål efter mål och i slutändan var det bara Tomi Salo som ensam räddade Frölunda från förnedring.



Hockey-SM

Strax sparkar femte slutspelsmatchen i hockey-SM mellan Färjestad och Frölunda i gång. Som värmlänning håller jag självklart på Färjestad men det var med blandade känslor jag såg den fjärde matchen annandag påsk. Det började med målet som inte var något mål och hela cirkusen som satte fart med färjestadsspelare som hoppade och skrek, viftande måldomare uppe under taket, Ledin som gjorde bort sig, igen, och TV4 som blåste upp och försärkte alltihop. Själv tyckte jag direkt att det inte gick att se om pucken var över linjen eller inte och i och med det måste det vara upp till måldomaren. Mycket riktigt åkte domare Lehti för att ringa efter avblåsningen. Det som faller mig mycket märkligt är hur "måldomaren" kan vara en funktionär. Borde inte någon som ska avgöra hurvida det är mål eller inte vara en opartisk domare, vilket ju naturligtvis inte kan vara fallet eftersom funktionären är avlönad/frivillig Frölundasupporter. Detta gäller självklart inte bara i Frölundaborg utan generellt i alla arenor (hur der fungerar under landskamper vet jag inte).

Att det inte var mål spelade dock inte någon roll när slutsignalen ljöd och Färjestad tog åter igen ledningen med 3-2 i matcher och har alltså chans att avgöra ikväll. Per Ledin spelar trots allt i kväll men har dömts att betala 20 000 kronor i skadestånd eftersom ett disiplinärende har inletts av hockeyförbundet. Som supporter är det naturligtvis pinsamt när ens lag företrädare uppförsig illa gång på gång men samtidigt är han en duktig hockeyspelare och gör ett jävla jobb på isen.

Färjestad har alltså två matchbollar på Frölunda och spänningen börjar redan stiga.

Påskdagen

Lamstek med gräddsås och hasselbackspotatis. Efterrätten bestod av whiskeyspetsad chokladmouse.

Påskbord

Senaps-, Vitlök och örter-, Curry- samt inlagd sill. Massor av kokt ägg, köttbullar och prinskorvar, olika sorters lax med olika såser och slutligen lufttorkad skinklindad sparris och Janssons frestelse. Till efterrätt blev det påskbakelse med persikohalva och jordgubbar.

Glad Påsk '06

Påsk '06


Skärtorsdag

Stekt rostbiff med pepparsås och klyftpotatis.

Caffé Latte

Caffé LatteIngrediencer:
  • 6 cl espresso eller starkt kaffe
  • 2 dl standardmjölk
Värm mjölken sakta på spisen och vispa t.ex. med mjölkskummare eller stavmixer. När mjölken börjar ånga och ett mjukt skum bildats är den klar. Häll upp nybryggt kaffe i ett glas och fyll upp med mjölken. Toppa ev. med kanel.

Vim

I dagarna har jag knackat lite C-kod igen. Det var inte så länge sen i och för sig och det börjar kännas bekvämt att arbeta i. Jag har äntligen, eller ska vi säga slutligen, insätt att för att programmera smidigt i Linux-miljö räcker det inte med att behärska programspråket. Man måste även kunna en hel del om miljön och olika verktyg som finns till hands för att underlätta arbetet. Linux innehåller ju en rad mängd verktyg som från början antagligen utformades för att fylla något behov i samband med programutveckling.

VimFör att slippa en massa fönster men också för att kunna arbeta smidigt via terminal bestämde jag mig för att fördjupa mig, eller rättare skrapa lite hårdare på ytan av Vim. Vim är en akronym för Vi improved, som för övrigt innehåller akronymen Vi som fått sitt namn efter kommandot visual i radeditorn ex. Ex i sin tur är en akronym för EXtended som också är en radeditor för Unix-system. Allihop härstammar de från editorn ed som var standardeditor i den första distributionen av BSD. Men tillbaka till Vim som alltså är en texteditor skriven redan 1991 med öppen källkod och finns för ett flertal operativsystem.

Precis som många andra verktyg i Unix-miljö är Vim inget undantag när det gäller användarvänligheten. Inlärningströskeln är mycket hög och många användare, jag inkluderad, har stora svårigheter i början när det gäller de mest basala funktioner som redigering av text eller att helt enkel avsluta editorn. Anledningen till detta är att många är vana vid de grafiska användargrännsnitten som inte alls var vanliga när VIm och dess föregångare skapades. Två kriterier för Vim var att kunna använda det via terminal och utan mus. Man införde därför ett antal modes, eller lägen, ett för kommandoinmatning, ett för textredigering med mera. När Vim startas hamnar man i kommandoläge, vilket många nya användare inte är vana vid. Man måste alltså läsa en hel del dokumentation för att överhuvud taget komma igång att mata in text i Vim. När den tröskeln är passerad öppnar sig en ocean av inställningar, funktionallitet och verktyg som är oumbärliga för programmerare.

Onsdag

Korvstroganof med ris.

Tisdag

Köttfärssås och spagetti med riven parmesanost på toppen.

Laboration

Hur tråkig får en labsal vara? Höga bord, fullt med gråa datorer och folk som sitter och pratar. Kan det finnas en sämre miljö att arbeta i? Tror inte det. Vi sitter med ett inte helt trivialt krypteringsproblem och måste få allt att rulla till deadline i morgon. Nej, jag orkar inte med det här oinspirerande miljön längre. Hemma har jag allt jag behöver inklusive arbetsro.

labsal

Vårtecken

I dag fick jag se vårens första, riktiga vårtecken. Myror i klassrummet. Varje vår när temperaturen börjar stiga kommer myrorna fram i skolan. Man kan se dem längs väggarna i långa rader på väg någonstans. Dagens myrstig var dock ganska gles och myrorna såg nyvakna och trötta ut.

Måndag

Rårakor med stekt fläsk och rårörda lingon.

Rårakor

Ingredienser:
[4 portioner]
  • 10 stora potatisar
  • 2 ägg
  • salt och peppar
  • smör till stekning
Riv potatisen. Blanda alla ingredienser och stek halvtunna kakor i smör tills kakan fått färg och är mjuk rätt igenom.

Servera med stekt, rimmat fläsk och lingon.

Söndagsfrukost

American Pancakes med upptinade jordgubbar, lönnsirap och kaffe.

American Pancakes

LönnsirapIngredienser: 
  • 1 ägg
  • 2 dl filmjölk
  • 3 dl vetemjöl
  • 2 tsk bakpulver
  • 1 msk socker
  • ½ tsk salt
  • 2 msk smält smör eller margarin
Blanda ägg och filmjölk i en bunke. Blanda alla torrvaror i en separat bunke. Blanda ner torrvarorna i filmjölken, lite i taget, och vispa tills smeten blir jämn. Ha i smöret.

Stek tjocka pancakes i plättlagg eller i en liten stekpanna. Servera med lönnsirap och färska eller upptinade bär.

Plugga eller inte?

Plugga eller inte plugga, det är frågan. Precis nu vid kursstarten är det ganska lungt och stressfritt. Man får lite tid över att lägga på sånt som man kanske försummat när studietrycket varit som värst, till exempel familjen och hemmet. Bloggen får lite extra omtanke och livet känns ganska bra i allmänhet. Samtidigt vet jag att stressen inte är långt borta. Bara för en vecka sedan satt vi och tentapluggade för fullt och runt hörnet väntar laborationer och tidsfrister.

Vändningen brukar komma mycket snabbt. Det är alltid en del dötid vid kursstarten i och med att böcker inte kommit in eller att laborationer inte har planerats klart och man inte riktigt fått kläm på vad man skall göra framöver. Men sen, när man lite lagom vant sig vid det lugna tempot, vänder det som om blixten slagit ner. Arbetsbördan ökar med flera hundra procent och tidfristerna duggar tätt. Nu finns det knappast tid för reflektioner och ofta inte ens tid för inläsning av kursmaterial. Uppgifterna äter upp hela tiden. Jag tänker ofta att jag ska försöka läsa in så mycket som möjligt i början och det lyckas väl så där. Mycket av det man läser är ju ändå borta till tentaläsningen men det är ändå viktigt. Repetition är mycket lättare än inläsning av ny information.

Än så länge är allt lungt. Men snart vänder det, och då gäller det att vara förberedd...

Söndag och 45-årskalas

Lättlunch med köttbullar och makaroner.

Till middag smörgåstårta.

Lördag

Kycklingfilé med sås på soltorkade tomater serverat med couscous och ugnsbakade grönsaker.

Kurser

  • Exjobb - Investigating and Implementing a DNS Administration System
  • Nätverkssäkerhet
  • Kodningsteori
  • Perspektiv på datavetenskap
  • Datakommunikation II
  • Kompilatorkonstruktion
  • Objektorienterade designmetoder
  • Objektorienterad verksamhetsmodellering
  • Tillämpad datasäkerhet    
  • Avancerad programmering i C++    
  • Programspråk    
  • Logik för dataloger
  • Analys B1    
  • Tillämpat projektledarskap    
  • Software Metrics    
  • Software Engineering    
  • Operativsystem    
  • Objektorienterad programmering med Java    
  • Tillämpad systemkonstruktion
    • Datakommunikation I
    • Databasteknik
    • Statistik
    • Software Engineering (Extreme Programming)
    • Projektarbete
  • Ingenjörsvetenskapens grunder
    • Matematik motsv. Analys EA2 / B1
    • Elektroteknik
    • Fysik
    • Genusvetenskap
    • Projektledning
    • Projektarbete
  • Digitalteknik och mikrodatorteknik    
  • Analys EA1    
  • Datastrukturer och algoritmer    
  • Diskret Matematik    
  • Programutvecklingsmetodik    
  • Programmeringsteknik    
  • Algebra A
  • Introduktion för datavetare

Snygga bloggar

Här är en lista över snygga bloggar jag har hittat. Listan kommer att utökas och uppdateras kontinuerligt.

  1. kottke.org - home of fine hypertext products
  2. Moderskeppet - En blogg i färgrymden
  3. maria.just.as - roligare än så här blir det inte
  4. Legally Blonde - en blogg utöver det vanliga
  5. Luftslottet - utsikt en regnig kväll
  6. The Dilbert Blog av Scott Adams
  7. Justin Blanton - life. technology.

Snöabstinens

Jag är lite kluven till  det här med snön.  Alla beklagar sig över all snön och att det ska bli vår och så, men jag vet inte riktigt. Självklart har det varit en jäkligt lång vinter nu, den började lite trevande med grönt gräs och regn på julafton, men det ordnade upp sig och höll stadigt i sig. Hela "våren" har vi haft massor med snö och skottningen har tärt på ryggen. Man samtidigt vill jag inte riktigt att det ska ta slut. Jag har nämligen varit med om en renässans i år. Jag har nämligen tagit upp skidåkningen igen efter kanske tio år på bräda. Det började förra året när min son skulle börja lära sig åka slalom. För att kunna lära honom kan jag ju inte åka snowboard utan fick damma av mina gammla, raka, K2 som inte sätt en pist på drygt tio år.

Jag upptäckte snabbt att alla vintrarna i Branäs i tioårsåldern hade definitivt givit bestående färdigheter. De gamla takterna satt i, dock med en mognare och säkrare känsla. Den riktiga vändpunkten var dock när hela familjen med vänner åkte till Branäs under eftersäsongen och jag hyrde mig ett par carving-skidor. Vilken otrolig skillnad! Varför hade jag aldrig provat det här förut? Aldrig mer raka skidor utan jag måste köpa mig ett par carving så fort jag får råd.

Detta för oss tillbaka till snön. Mitt nya intresse är så att säga omöjligt att utöva utan snö och det har nästan blivit som en drog. Speciellt farten var det mest överväldigande. Jag kunde liksom riktigt känna adrenalinet i kroppen när jag stod på som värst. För att få åka skidor så här sent på säsongen måste man åka långt och det kostar tyvärr alldeles för mycket i tid och pengar. Min dröm är att åka till riksgränsen vid midsommar eller till nån soltäckt glaciär i sommar. Dessa drömmar kommer nog att förbli drömmar ett tag till men jag kommer att genomföra det någon gång, det är jag säker på.

glaciär



Fredagsmys

Laxgryta med kokt potatis och Ruccolasallad

Cissis önskelista

  • Löparskor storlek 38,5
  • Trådlös telefon med handsfree
  • Klänning
  • Orange blus

Min önskelista

Uppdateras kontinuerligt - Senast uppdaterad 27/4 2007