2010-01-30

Och så kristdemokraterna då

Så de vill förbjuda hjälm vid moppe-åkning också? Det är äckligt och man ser inte vem som döljer sig bakom visiret. Fan, vi förbjuder kläder! KD-arna kan glida runt nakna. Då kan vi snacka äckligt! Är det så ni vill ha det, va, va, va? Är det det?

Lite mer iPad orkar ni

Man kan läsa om iPad på pryl-sidor på internet. Kommentarerna är ofta av typen "jag vill inte ha den här grejen, och eftersom den inte är identisk med den grej jag vill ha så är den dålig och ingen kommer vilja ha den för den är värdelös lol".

Äh, vafan, jag behöver inte blogga själv, jag citerar en kommentar härifrån:

Every geeky complaint I've heard so far basically makes it sound like people are complaining that the iPad isn't a $10,000 multiprocessor PC running Linux. You can't reprogram it at a low level, you can't do heavy video editing, you can't run Photoshop, and so on. But 90% of people don't do any of that anyway. A classic "I am the world" fallacy from the hardcore geeks.

2010-01-27

iPaddan

Jag hade tänkt att Steve Jobs inte bara skulle presentera en platt dator utan tangentbord, utan dessutom övertyga mig om att jag vill ha en, eftersom den skulle tillfredsställa något behov som jag inte visste att jag hade. Det blev inte riktigt så, men jag tror att den kan funka ändå. Den riktar snarast in sig på netbook-marknaden: det är en liten, billig dator som är lätt att använda. Just det, inget Windows XP eller någon hemma-snickrad Linux, som man kör appar utvecklade för mycket mer kraftfulla maskiner på.

Och man kan köra iPhone-appar. Det kanske i och för sig inte känns så himla hett, men det gör i alla fall att det finns en massa lättillgängliga appar att installera om man känner för det. Typ iFart och Bejewelled. Och i och med att iWork finns för 10 dollar per app så blir det svårt att hävda att man inte kan vara "produktiv" för att man inte har MS Office. Eller Open Office. Eller något annat som skulle ta en minut att starta och har ett användargränssnitt som gör att själva innehållet knappt får plats på skärmen.

Sen är den en eboksläsare också. Mycket snyggare än en Kindle, antagligen med en mycket bättre integrerad ebokaffär och med ett utbud i samma storleksordning som Amazons. Och med coola animationer när man bläddrar i sin bok.

Hade den kostat uppåt 1000 dollar så hade den varit för dyr, men för 500 dollar funkar det. Då får man bara 16 GB diskutrymme och inget 3g, men det är okej i USA och på andra ställen där det finns wlan överallt. Och den blir väldigt mycket dyrare med mer diskutrymme och wlan, och många kommer slänga några hundra dollar till på den, så att Apple inte kommer tjäna så mycket pengar på den gör inte så mycket, för de kommer sälja massor av de dyrare modellerna också. 100 dollar extra för en dubbelt så stor disk, där snackar vi vinstmarginal.



Bilden föreställer en Fujitsu iPAD.

2010-01-26

Det här är mer som kvitter än blogg

Jag tyckte senaste xkcd var så fin på något sätt.

Jag är inte längre betrodd med vatten, jag kan inte gå på vatten

Hej!

Idag gjorde jag något jättetokigt: jag hällde ett glas vatten i min jobbdator, som är en så kallad Jobs-dator. Efter diverse uttorkning, analys etc. så visade det sig att datorjäveln var död. Steve Jobs borde uppfinna en vattentät dator.

Hejdå!

2010-01-23

Bas, tenor, sopran, baryton, basbaryton, mezzosopran, alt


Häj!

Jag såg en film som hette "In the Loop", som jag kan rekommendera. För att göra en väldigt dålig jämförelse så är det som en blandning mellan Canadian Bacon, The West Wing och Yes, mr. Prime Minister. Otroligt dålig jämförelse. De svär på roliga sätt väldigt ofta i filmen. Tony Soprano har uniform och (SPOILER-VARNING) kallar en snubbe för "Frodo" på ett roligt sätt precis på slutet. Och "I am the egg-man". Jätteroligt.

Idi i smotri, som man skulle ha sagt på ryska. Klart obehaglig film-referens. Det var inte meningen. Förlåt!

Häj då!

Finns det liv

När det rapporteras att twitter tappar användare så känns det som om det finns hopp för världen. Men hur är det med molnet?

Visst låter rubriken "Svenskar kommer att dödas" spännande? Byter man ut "svenskar" mot t.ex. "finnländare" så får den en ganska annorlunda klang.

Greven har muckat och snart släpper Burzum en ny skiva. Vad ska man tro om det?

2010-01-14

Konkret get

Tänkte bara berätta vad jag gillar med A Place to Bury Strangers:

1. De överdriver och låter lika illa som Flying Saucer Attack.
2. Namnet är bland de bästa.

Jag tror att den självbetitlade debuten är bättre än förra årets Exploding Head. De vräkte på mer på första. Recensenterna gillar den andra bättre för att den är bättre pop. Men måste man kompromissa för att vara bäst? Ibland behövs det att man överdriver. Och alla recensenter är fjantar. Per Bjurman kallar Oasis för rock'n'roll, bara en sådan sak. Och tycker att Rocket from the Crypt är hårda. Det kanske är länge sedan, men jag glömmer aldrig en oförätt.

2010-01-05

Konkret syntax från abstrakt syntax

Tittade lite på ast-modulen i Python, där ast står för Abstract Syntax Tree. Man kan använda den för att parsa Python-kod och analysera eller modifiera parse-trädet. Rätt coolt. Så här kan det se när en Python-n00b använder ast för att leta upp och skriva ut en funktion i en källkodsfil:


import ast

def find_last_line(func):
last_line = 0

for n in ast.walk(func):
if isinstance(n, ast.stmt) and n.lineno > last_line:
last_line = n.lineno

return last_line

def find_func(func_name, parse_tree):
for n in ast.iter_child_nodes(parse_tree):
if isinstance(n, ast.FunctionDef) and n.name == func_name:
return n

def read_file(filename):
f = open(filename, 'r')
text = f.read()
f.close()

return text

source = read_file('test_ast.py')
lines = source.split('\n')

p = ast.parse(source)

func_node = find_func('find_func', p)
last_line = find_last_line(func_node)

for l in lines[func_node.lineno-1:last_line]:
print l


Kanske inte världens mest solida kod, men vafan. Funkar det då? Ja, det är väl för i helvete klart att det funkar:


Olsson:testo linusakerlund$ python test_ast.py
def find_func(func_name, parse_tree):
for n in ast.iter_child_nodes(parse_tree):
if isinstance(n, ast.FunctionDef) and n.name == func_name:
return n
Olsson:testo linusakerlund$


Sensmoral: det är trevligt med högnivåspråk ibland.

Summa summarum

Vargjakten nu i helgen gick över förväntan. Det var sjukt kul att springa runt full i skogen och skjuta på allt som rörde sig! Några av vargarna vi sköt på träffade vi, det var skitkul! Några dog till och med, så får och taxar kan andas ut, och älgen kan gå säker tills vi klipper den i höst.

Vi började mornarna med skinkmacka och snaps. Väl ute i skogen är det viktigt att hålla värmen och vätskebalansen, så vi surplade Arboga 10,2 medan vi spanade efter vargen. Till lunch blev det korvgrillning och lådvin. Sen satt det fint med en konjak till kaffet.

På eftermiddagarna sov vi mest. Det är jobbigt att vara ute i skog och mark. Nästa vecka är det dags för valjakt, en annan av årets höjdpunkter!

2010-01-03

Om flödet och trädet

Jag tänker inte bara på Lars Leijonborg, ibland tänker jag också på objekt-orienterad programmering, hur den presenteras och vilka problemen är. Det jag tyckte redan från början, och det handlar om något så okontroversiellt som att bygga upp sitt program av en samling abstrakta datatyper, är att koden blir svår att följa. Det är svårt att förstå ett skeende. Läser man koden så kan man sätta sig in i en modul i taget, annars blir det bara ett hattande fram och tillbaka. Det illustreras ganska tydligt om man sätter en brytpunkt och tittar på callstacken: även i ett mindre komplext program innehåller den tiotals rader, med antalet moduler i samma storleksordning.

(Reenskaug och Coplien säger samma sak i DCI-artikeln. Objekt-orienterad programmering fångar inte beteendet.)

Objekt-orientering löser en del problem (inte alla, No Silver Bullet av Fred Brooks är väldigt grundläggande, men var nog bland det bästa jag gavs att läsa när jag pluggade), och skapar andra. Borde man inte kunna förbättra kodens läsbarhet genom att visualisera koden på ett bättre sätt? Måste den presenteras som en uppsättning textfiler bara för att den alltid har gjort det? De verktyg som finns för att visualisera kod verkar mest visa klass-hierarkier. Intressant i vissa fall, men det är inte datarepresentationen jag är ute efter, utan algoritmerna.

Det här är ett problem även i mindre, rent imperativa program. När man är uppe i ett 20-tal funktioner så representerar den linjära textfilen det som egentligen är ett träd (eller en graf, för att vara korrekt) på ett oöverskådligt sätt. Jag sorterar alltid funktionerna så att funktion B, som anropas av funktion A, står ovanför funktion A i källkodsfilen. Det hjälper till viss del, men det är en partiell ordning, så det finns en stor mängd korrekta linjära ordningar enligt det kriteriet. Jag kan inte se på funktion A var jag hittar funktion B.

Så om jag vill följa ett flöde genom koden så kan jag använda mitt IDE för att "Jump to definition" när jag ser ett anrop till en funktion som jag vill veta vad den gör. Det tar mig någon annanstans i samma fil eller till en helt annan fil. Därifrån kanske jag gör en "Jump to definition" någon annanstans, och snart har jag tappat bort mig.

Tänk om man kunde koppla loss det här från den ursprungliga textfilen och visa anropen grafiskt. Ungefär så här, fast med källkoden på plats, och inte allt på en gång, och med zoomning och möjlighet att surfa från låda till låda, Exposé-stylee. Fan vad awesome det vore. Inte för att det skulle lösa alltför många världsproblem, men det skulle hjälpa till med vissa.

En annan sak är naturligtvis att folk borde skriva bättre kod, genom att inte blanda alltför friskt med abstraktionsnivåer i en och samma funktion. Det är svårt, men eftersom många inte ens verkar känna till problemet så ser det ofta värre ut än vad det borde göra. Om man inte riktigt fattar poängen med funktionell abstraktion så drar man helt enkelt godtyckliga linjer genom koden och delar upp i funktioner efter dem, eftersom någon har sagt åt en att man ska skriva kortare funktioner. Det gör det svårt att få någon överblick genom att läsa koden, även om man skulle ha Awesome Turbo Code Surfer 3000.

2010-01-01

Bäst just då

00-talets 10 bästa skivor?

Agoraphobic Nosebleed: Frozen Corpse Stuffed with Dope (2002)

Grindcore sådär som grindcore måste vara för att man ska kunna lyssna på skiten: påhittig och störd. Gillar man inte det här så gillar man inte musik.

Anna Ternheim: Separation Road (2006)

Vet inte vad hon sysslar med på senaste skivan, men Separation Road är så fin så att jag ganska länge missade att låtarna på slutet egentligen är rätt kassa. Men det gör inget, jag har lyckats lyssna sönder dem också.

Apoteket Apan: Det är något med den där ödsligheten (2008)

Det blev bara bättre och bättre och så här bra blev det till slut. Väldigt smart och snyggt. Och bra.

Basia Bulat: Oh My Darling (2007)

Så gravt sönderlyssnad att jag bara inte orkar med den, men fan vad bra den är egentligen. Lite som Agoraphobic Nosebleed, fast pop. Eller vänta, borde jag använda uttrycket "singer/songwriter"? Nej, för det uttrycket ska man aldrig använda, inte ens om sina värsta fiender.

Bohren und der Club of Gore: Sunset Mission (2000)

Bohrens smått hotfulla ambient-jazz passar perfekt till alla chillout-tillfällen.

Drexciya: Grava 4 (2002)

Jag tycker att Drexciya kan bli lite väl monotona ibland, men här lämnar de plötsligt havsbotten och flyger ut i rymden, och lyckas faktiskt variera sig lite. Det är omisskänlig Drexciya-electro, men ändå annorlunda.

Erik de Vahl: Oh My Spine (2007)

Brusigt och avkopplande som de tidigare skivorna, fast här mycket mer påhittigt och tokroligt. Brdzola skulle kunna vara den bästa chip-låten som inte är en chip-låt. Och så lite stenhård göteborgsk kommunism på det. Som Khonnor, fast inte så jävla tråkigt.

Erik Enocksson: Farväl Falkenberg (2007)

Suverän musik från den inte riktigt lika bra filmen. Passar att koppla av till om man har spelat sönder Bohren und Der Club of Gore. Jag tror att ordet som beskriver den här skivan bäst är "fingertoppskänsla". Och kanske "minimalism". Och kanske typ "Enock måste vara världens roligaste namn". Eller jag vet inte.

The Field: From Here We Go Sublime (2007)

Egentligen ganska tråkigt på något sätt, men den kändes så förbaskat fräsch och härlig ett tag, så jag känner behov av att lyssna på den då och då.

Flaming Lips: Yoshimi Battles the Pink Robots (2002)

Sjukt bra skiva som jag bloggade om här för ett tag sedan, när jag återupptäckte den. Lagom oseriöst och väldigt fina låtar.

Goto80: Made on Internet (2007)

Enligt uppgifter från Statistiska Centralbyrån så har Goto80 släppt flera miljarder skivor (jag är inte fascist, så netlabel-releaser räknas också som skivor) under de senaste 10 åren, men jag väljer ut den här som den bästa. Kanske mest för att "Best of the West" är så jävla härlig, men det finns väldigt mycket annat godis här. Bra blandning liksom.

J. Arthur Keenes Band: Pamplemousse (2009)

Det är så att man kan sätta chipsen i halsen, det är liksom popmusik fast helt chippigt. Visst kan sången kännas lite enerverande i sin snygghet ibland, men låtarna och produktionen är så fina så att man nästan kan vilja gråta lite.

Jonas Lindgren: Lights Will Guide You Home (2006)

Drone med lite popinslag, som gör att den här skivan är något mer lättlyssnad än hans andra verk. En gitarr-loop, lite pling-plong, inte bara brus.

Konono No. 1: Congotronics 1 (2005)

Congo bongo! Fick reda på den här på en techno-mailinglista jag följde ett tag. Techno-gubbarna kände att de fick kontakt med sina rötter när de hörde det här oljudet. Kan bli lite monotont efter ett tag, men bara ljudet gör att jag kommer tillbaks till Konono igen och igen.

Kraftwerk: Tour de France Soundtracks (2003)

Okej, ska man vara hardcore så ska man väl hata det här, och de har naturligtvis förlorat ledningen, men det är fortfarande väldigt bra musik i en stil som ingen annan har lyckats kopiera. Funkar dessutom väldigt bra som bakgrundsmusik när man tittar på cykling på TV. Jag har testat. Skivan är alltså i någon mån per definition bra. Eller åtminstone ändamålsenlig. Och arpeggiona i "Vitamin" är väldigt fina.

M83: Dead Cities, Red Seas and Lost Ghosts (2003)

2009 var året då jag äntligen fick uppleva nöjet att ha på mig kläder från Nordkorea, men redan 2003 kunde man lyssna på M83s Nordkorea-synth. Det är på den här skivan de säger det bäst. Vad de säger vet jag inte riktigt, men det känns som om de pratar om något. Och så finns ju the creator of the universe med och berättar om dittan och dattan också. Som Simon sa: "M83 är den bästa franska elektronika-duon sedan Air. Fast bättre."

Majessic Dreams: Listen to the Moon (2005)

Drömsk popmusik med en produktion som då och då känns aningen hotfull, vilket gör att det inte känns så platt som det skulle kunna göra med en mer konventionell produktion.

Mortifera: Vatiia Tenebrd Mortifera (2004)

Väldigt konventionell black metal i Burzum-skolan, utan mycket som sticker ut. Men det som faktiskt sticker ut är att allt är så klockrent och helt enkelt skönt att lyssna på.

Omar-S: Just Ask the Lonely (2005)

Den galnaste och skitigaste housen. Jag hade hört folk ranta och ravea om hur bra Omar-S var, men när jag lyssnade på den här skivan så fattade jag först ingenting. Det kändes bara hafsigt och allmänt underligt. Men är inte hafsigt och underligt ändå det finaste man kan säga om musik? Om det görs rätt i alla fall. Här görs det så rätt. Han har släppt en massa andra bra skivor, men det är här alla de dummaste idéerna får ta plats. Hela paketet är genialiskt, inklusive omslagsbilden.

Pan Sonic: Aaltopiiri (2001)

Vansinniga finnar som hänger med Erkki Kurenniemi i skumma technobunkrar. Här har de lugnat ner sig och slutat mata toktechno, för att istället spela hotfull ambient. Det lite jobbiga och irriterande är det som gör den här skivan så bra, i kombination med de organiska, levande ljuden. Får mig att tänka på SPK. Den enda finska skivan på den här topp 10-listan!

Peste Noire: La Sanie des siècles - Panégyrique de la dégénérescence (2006)

Peste Noires första, lite ofarliga skiva. Okej, det är black metal, så det beror på varifrån man kommer, men det här är egentligen lite för snyggt för genren, lite för duktigt, välproducerat och ja, gitarrsolona. Det är inte konstigt att det här är deras mest populära skiva, för den är väldigt, väldigt bra.

Peste Noire: Folkfuck Folie (2007)

Peste Noire får givetvis ha flera skivor med på listan, i motsats till alla andra sopor. Här har de släppt sargen, vilket syns på titeln om inte annat. De snygga, lite episka låtstrukturerna är borta, de lugna bitarna, heavy metal-gitarrsolona. Här är det rens som gäller. Det är ett jävla drag från början till slut, med undantag från några sådana där irriterande icke-låtar. Jag kan inte heller låta bli att hata den här skivan lite grann, vilket väl säger en del om hur bra den är. Galna infall och sjukt drag, vad kan man mer begära?

Peste Noire: Ballade cuntre lo Anemi Francor (2009)

Peste Noire får givetvis ha med hur många skivor de vill på listan, men de har inte släppt så mycket mer än de här tre. Senaste skivan är helt jävla störd. Ännu en helt ny stil, men fortfarande väldigt bra. Jag saknar manglet, här börjar det nästan låta shoegaze om det, men det funkar. Kanske inte 00-talets allra bästa skiva, men skulle kunna vara den knasigaste.

Robert Hood: Rare Species (2002)

Robert Hood hade väl sin storhetstid i början av 90-talet, men den här mixen är ganska speciell. Han drar upp tempot till max och mixar mycket av sina egna låtar med andra likasinnades, så det är en timmes minimalistisk, synthig hysteri. Kanske världens bästa skiva att motionera till.

Sunn O)) and Boris: Altar (2006)

Inte riktigt vad man hade kunnat föreställa sig, men någonstans i närheten. Mörkt och doomigt, men överraskande även lite gothigt. Det är inte bara gitarrmuller. Jag tog nästan med Boris "Akuma No Uta" på listan, men struntade i den av någon anledning som jag knappt själv förstår. Den är ju skitbra. Varför har jag inte med den? Jag vet inte, jag kanske är dum i huvudet.

The Twilight Sad: Fourteen Autumns and Fifteen Winters (2007)

Det här är typ sådär som Glasvegas hade kunnat låta om de hade varit så bra som alla tyckte att de var förra året. Shoegaze med hård skotsk dialekt.

Willie Nelson: It Always Will Be (2004)

Kanske inte Willie Nelsons bästa platta, för han hade väl sin storhetstid för sådär 600 år sedan, men en fin liten skiva med musik att luta sig tillbaka till.

Okej, så det kanske blev lite fler än 10, men vad fan ska man göra?

Första januari

I Språkrådets nyordslista för 2009 kan man lära sig "fina ord": fiskpedikyr, fröbomba, fuldelning, grindstad, stuprörspolitik.

Farmor fyller 90.

Jag försöker fatta vad man egentligen ska göra åt att typisk objekt-orienterad design skapar farlige monster. DCI och COP är rätt abstrakt, men känns rätt. Jag går igenom en del kod jag har liggande och observerar 12 olika observer-implementationer i samma program. Jag har lärt mig att interfaces och mixins inte är samma sak.

Google Go verkar väldigt, väldigt vettigt, vilket kanske inte är så konstigt med tanke på upphovsmännen.