søndag 21. oktober 2012

Store programmerere

I dette opptaket hører man Paul Grahams tankevekkende perspektiv på hva som kjennetegner flinke programmerere (eller hackere).

søndag 2. september 2012

Ruby Koans

Jeg holder på å lære meg litt Ruby og i den forbindelse kom jeg over "Ruby Koans".

Det er en forfriskende måte å lære seg ett nytt programmeringsspråk på. Man starter en "unit-test" og Koan skriptet sjekker om du har klart alle testene. Om du har gjort feil, stopper skriptet opp og man må gå inn å rette feilen. I terminalen får man oversikt over progressjonen og hvilken fil og linje feilen oppstod på.

Reglene er enkle. I de fleste oppgavene bytter man ut to underscores "__" med riktig verdi, eller man bytter ut tre underscores "___" dersom man skal fylle inn unntaksfeil. På noen oppgaver må man skrive koden selv, som vist i skjermbildet. Hele tiden får man progresjon fra lett mot vanskeligere.

Nå tilbake til Ruby Koans.. har ennå noen tester igjen å fullføre. ^__^

søndag 15. juli 2012

Hvordan installere Linux på Debian

Jeg har bare installert Linux kjernen manuelt en gang tidligere, og da forstod jeg ikke stegene. Det har ført til at jeg alltid har tenkt at å installere ny kjerne er ett ork.

For noen uker siden gikk jeg over til Debian Squeeze (aka Debian stable eller Debian 6). Distribusjonen er meget stabil og fungerer utmerket på min to år gamle bærbare. Jeg må legge til NVIDIA driveren, men det er ikke så vanskelig. Da jeg gikk over til Debian igjen kom jeg over kapittelet i Debian dokumentasjonen som heter "8.6. Compiling a New Kernel". Dette forklarer kort og konsist hva man behøver å gjøre for å kompilere selv, visst man skal gjøre det etter "Debian metoden".

Under har jeg notert meg stegene. Jeg rotet litt og kjørte make menuconfig før jeg hadde valgt v3.4.4 taggen i Git (stod på v3.4), men det spilte visst ikke noen rolle heldigvis. Merk at det tar lang tid å klone hele Git treet slik jeg gjør her. Alternativt kan man laste ned ett ferdig bilde av Linux fra Kernel.org.

$ mkdir git
$ cd git/
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
$ cd linux-stable
$ git checkout v3.4.4
$ make menuconfig
$ make-kpkg clean
$ fakeroot make-kpkg --initrd --revision=dellbox.v3.4.4 kernel_image
$ sudo dpkg -i ../linux-image-3.4.4_dellbox.v3.4.4_amd64.deb

Etterpå gjorde jeg en omstart. NVIDIA driveren var ikke tilgjengelig, slik at jeg ble møtt med kommandoshell. Jeg er litt usikker på dette steget, men jeg kjørte installasjonsprogrammet til NVIDIA sin driver på nytt og tok en ny omstart. Etter dette fungerte alt som det skulle. Det finnes kanskje en bedre metode.
For tiden bruker jeg NVIDIA-Linux-x86_64-295.59.run som jeg heldigvis hadde liggende i nedlastingsmappen min. :)

Dette gikk over all forventning.

Bilde er forresten lånt fra Wikipedia.

mandag 2. juli 2012

Oppdatering av Adobe Flash

Adobe Flash på Debian kan oppdateres med update-flashplugin-nonfree iflg. Debian sin offisielle Wiki.

Jeg har derfor lagt til oppdaterings-kommandoen i crontab til root brukeren. Bruker "verbose" ettersom jeg er litt usikker på kommandoen skriver noe til skjermen/loggen om jeg ikke benytter denne oppsjonen. Det er jo greit å vite om Flash faktisk ble oppdatert.

# Adobe flash oppdatering
@weekly (ping -c 1 -w 1 fpdownload.macromedia.com > /dev/null 2>&1 && /usr/sbin/update-flashplugin-nonfree --verbose --install)

Stair Rover

Det er egentlig en reklamefilm, men jeg tenkte ikke over det før andre gangen jeg så filmen. Meget imponerende balansegang mellom "indie" og reklame. Føler meg i målgruppen selv om jeg ikke har behov for ett skateboard.


Stair Rover by Po-Chih Lai at Show RCA 2012 from Dezeen on Vimeo.

mandag 28. mai 2012

Fedora 16 tips

Fedora er en Linux distribusjon som jeg alltid har hatt litt sansen for. Men Fedora er kjent for å ikke tillate codecs for å spille av patenterte eller lisensierte multimediaformater (som mp3 filer), og jeg synes personlig Fedora er litt agressive med å oppdatere pakkene. Her er ett par tips for å løse begge disse utfordringene.

Tips 1: Multimedia codecs

Fra ask.fedoraproject.org:

First, you need to set up the RPMFusion repos as explained http://rpmfusion.org.
Then, in a terminal run:
su -c 'yum install gstreamer-{ffmpeg,plugins-{good,ugly,bad{,-free,-nonfree}}}' Should do it.

Tips 2: Oppdateringer

Det føles ut som at hver gang man starter en PC med Fedora installert så venter det hundrevis av megabytes med oppdateringer, spesielt dersom man ikke har brukt maskinen på noen dager.

En løsning er å utsette oppdateringen til man har god tid og gode internettlinjer. En annen løsning er å bare legge inn sikkerhetsoppdateringene. Disse kommer ikke like hyppig og man slipper å laste ned så mye om gangen, og dessuten innbiller jeg meg at oppsettet blir mer forutsigbar om man ikke oppdaterer så mange pakker om gangen. Heller leve med en bug du kjenner, enn tre nye du ikke forventet. Først, installer sikkerhetsmodul til YUM:

su -c 'yum install yum-plugin-security'

(..Eventuelt sudo yum install yum-plugin-security dersom du bruker sudo)

Deretter bruk kommandoen su -c 'yum --security update' for å oppdatere systemet. Dette vil bare oppdatere pakker med sikkerhetsoppdateringer, det mest nødvendige med andre ord.