Alltså, skyll fan inte på de som ändå försökte!

Fick ett mail från en i bekantskapskretsen som löd:

Betr Piratpartiet så har de varit i stort sett osynliga i valrörelsen. Jag såg någon enstaka affisch i <X-stad>, det var allt. Jo, jag vet det där med SVT, etc, men det gällde även FI och de har ändå synts väldigt mycket. Mycket fler affischer. annonser och även torgmöten. Men det är möjligt att PP hade torgmöten, bara att jag inte uppmärksammade detta.

Jag blev lite upprörd så jag skrev ett svar som uttrycker precis vad jag tycker om att det skulle vara PPs eget fel:


PP har tyvärr osynliggjorts mer eller mindre i system, tex i SVTs partiledardebatt med riksdagspartier(!) inför EU-valet så fick Schyman sitta med i försnacket trots att Fi varken sitter i riksdagen eller hade platser i EU men PP fick inte vara med vare sig i debatten eller försnacket trots närvaro i Bryssel. Många inom media har dessutom blandat ihop frågorna så det som debatterats har varit riksdagsfrågor, inte EU-frågor.

Emma har skrivit en mycket bra text om det.

SvD har också i princip helt ignorerat PP, trots att PP haft två MEPs på plats i Bryssel och där PP varit ett av de främsta partierna vad gäller att faktiskt driva de frågor de lovat att de skulle driva. De har också varit bäst på att kommunicera tillbaka till väljarna vad som pågår i Bryssel, både CE och Amelia har bloggat regelbundet och CEs ”högra hand”, HAX, har en av de mest produktiva politiska bloggarna i Sverige där han i princip dagligen skrivit om pågående ärenden etc i parlamentet. Inget av detta har fångats upp av media, utan de vänder sig till Stockholm när de vill ställa frågor om EU.

Nu EFTER valet vill tex SVT plötsligt ha en intervju med Anna Troberg (helt jävla otroligt, de borde skämmas!), men innan valet var hon i praktiken en Persona non grata. Och tro inte att hon suttit i ett glastorn och väntat på en inbjudan, hon har varit på SVT och verkligen slagits för att PP skulle granskas på samma villkor som övriga partier med representanter i Bryssel, men SVT (eller media generellt sett) har verkligen ansträngt sig för att slippa plocka in PP över huvud taget i debatten. Media över lag i Sverige har knappt skrivit om EU, det är som att media Sverige fortfarande inte fattat att vi är med i EU och att det är i EU som alla tunga beslut tas. Public service ska vara en oberoende motpol mot privatägna medier och borde DEFINITIVT ha på sin karta att granska makten i EU, men det vi har nu är ett skämt. Lägg ner skiten.

Så varför har inte PP synts så mycket? Tja, förutom ett kontinuerligt styvmoderligt hanterande av pressen (vilket jag inte begriper, pressen, om någon, borde väl kämpa för yttrandefrihet och offentlig insyn i politiken!?) så hade PP en valbudget på 1.5 miljoner, en bråkdel jämfört med de flesta andra partier. Feministiskt initiativ hade förmodligen en valbudget som var något lägre (har inte hittat siffror), men dels fick Fi, speciellt Schyman, mycket mer medial bevakning och de fick även gratis PR, tex genom massa stjärnor som tex släppte en samlingsskiva för Fi.

Kunde PP gjort en bättre valrörelse? Säkert, man kan alltid bli bättre, men det är svårt att motverka en massmedial frånvaro med affischer så fan vet om det hade gjort så stor skillnad och till syvende och sist är det, faktiskt, väljarens ansvar att ta reda på vilket parti som representerar denne bäst. Om medborgarna inte klarar av att göra medvetna val utan kräver att bli skedmatade med extrasötad politisk propaganda för att sen göra ett val baserat på floskler så är det ett samhällsproblem, inte ett partiproblem.

Så nej, det här är FAN inte PPs fel, för PP försökte verkligen och körde så det rykte ända in i kaklet! Valresultatet är pga att vi har ett så totalt värdelöst politiskt klimat i det här landet med:

  • Inkompetenta media som glömt bort att det är deras uppdrag att kritiskt granska våra politiker.
  • Storpartier som förlorade sin ideologi förra århundradet och som bara slåss för maktposition av princip snarare än för att man faktiskt har visioner.
  • Väljare som lägger mer tid på att läsa tester och jämförelser när de köper en ny mobiltelefon än de gör på att sätta sig in i politiska frågor.

Jag ser inte det här som en förlust för PP, jag ser det här som en demokratisk tragedi för Sverige och speciellt media förtjänar en klapp på ryggen för väl utfört arbete. En hård klapp på ryggen. Med ett järnrör, trademark SD.

Sverige har fått precis de representanter de förtjänar. Jag hoppas alla är jävligt nöjda med att SD och Fi nu tar plats i parlamentet.

Uppdatering: Enligt min humla är inne på samma tankar. Läsvärt.

Plötsligt besök i trädgården

En av de saker jag gillar med att bo på landet, långt från höghus och stadstrafik, är att naturen verkligen alltid är närvarande. Idag fick vi tex besök i trädgården.

Han har legat där, mitt på vår gräsmatta, rätt länge nu. Det är väl mysigt att ligga i solen och gotta sig och tydligen tyckte han att han kände sig rätt trygg för han vågade tom ta sig en liten tupplur där han låg,

Landet. 🙂

Men jag behöver verkligen en ny kamera, jag får numera färgbrus i bilderna även när jag fotar i direkt solljus. Så dålig var den inte från början… 😦

Nå, jag ville inget viktigt egentligen, så ni kan återgå till att prata rasism, EU-politik, mellis eller vad ni nu pratade om innan jag störde. Carry on!

Update!

När bocken hade sovit färdigt ställde han sig upp och då såg vi att det inte var en, utan två bockar! Söta kompisar. Tyvärr fick jag bara bild på ena (den andra stod dold så man bara såg rumpan), men såhär vackra är de när de står upp:

Det här är mycket roligare än att skriva om trist politik. Jag kanske skulle börja skriva mer om vad som händer här hemma? Det är definitivt mer konstruktivt än vad de där tölparna sitter och beslutar i Stockholm i alla fall. 😛

En programmerares vardag…

…eller ”Eclipse borde förmodligen tas ut och skjutas på en bakgård en regnig natt och liket borde förses med blyvikter och dumpas i Marianergraven”

Jag skriver en hel del embeddedkod, det är sånt jag, av någon orsak, har en fallenhet för. Min målmiljö brukar handla om KB när resten av världen gärna slänger sig med MB, GB, TB eller tom (om man jobbar på Google i alla fall) EB. Ett A4 innehåller ca 1-2 KB och när jag programmerar pratar vi tex om RAM-storlekar som motsvarar några ark A4 när den dator du sitter vid just nu har RAM som motsvarar några tiotals bokhyllor med pärmar.

Det ställer en del krav på utvecklingsverktyg och en av de saker jag ofta använder är ett speciellt interface som gör att man kan ansluta sig rakt in på CPUn via en så kallad JTAG och se (eller i alla fall göra avancerade gissningar om) vad som händer i verkligheten när kod spårar ur. Alla som utvecklar på tillräckligt låg nivå måste i praktiken använda den här typen av verktyg, för även en vanlig PC/Mac har ett kort ögonblick i början när man slår på den (inte slår på den pga att den råkade formattera om hela ditt dokument utan slår till strömmen, alltså) då den är komplett ovetande om sin omgivning och inte vet hur man kommunicerar med hårddisken, nätverket, kan visa saker på skärmen eller ta tangentbordsdata.

När man är på de nivåerna måste man alltså ha specialverktyg och för att man ska kunna jobba effektivt kräver det att man inte bara har en JTAG utan även att allting samarbetar smidigt i en så kallad IDE (Integrated Development Environment) som hjälper dig att se exakt vilken rad kod CPUn exekverar och vad som går på tok. En sån utvecklingsmiljö är Eclipse. Jag ska berätta lite om Eclipse.

Eclipse är ett enormt monster skrivet i Java och en av de riktigt balla sakerna med Eclipse är att man kan använda sig av plugins för att utöka funktionaliteten. Det finns tex en plugin som gör det möjligt att ansluta till en GDB-server (Gnu DeBugger); ett fristående program som kommunicerar med din JTAG, så att man kan ladda ner ny kod i CPUn, köra den och spåra vad som händer. Problemet med Eclipse är att pluginsystemet har fler repositories (ställen att ladda ”pluggarna från”) än Beatrice Ask har ogenomtänkta idéer om nya lagförslag så att hitta rätt repo innebär ofta att man går googla tills man hittar en howto som beskriver precis hur man gör … om man kör en äldre version av Eclipse.

Alltså får man improvisera och experimentera tills man lyckas banka in de olika pluggarna tills de sitter fast hjälpligt. Det är lite som en action-scen i en tecknad film där det läcker vatten ur ett rör, så den tecknade figuren stoppar fingret i hålet och då börjar det läcka nån annanstans i stället. Då stoppar den tecknade figuren in ett finger i det hålet, varpå det kommer vatten någon annanstans! Då stoppar den tecknade figuren in en tå, varpå det läcker nån annanstans, ny del av figuren stoppas in nånstans varpå det läcker på ett nytt ställe och situationen upprepar sig tills den tecknade figuren står i en synnerligen absurt komisk ställning men det inte läcker någonstans alls. Tills det börjar spruta vatten ur öronen…

Lite så är det att installera plugins i Eclipse: Du installerar plugin A och B. Det funkar. Sen installerar du plugin C, då slutar plugin A att funka plus att Eclipse nukar dina inställningar, rakar din katt samt sprider rykten om att du är pedofil. För att råda bot på detta avinstallerar du plugin C, men då börjar plugin B att måla hakkors i badrummet och plugin A tipsar polisen om att du smugglar knark.

I ett desperat försök att få ordning på allting avinstallerar du plugin A och B samt återinstallerar dem igen, men då har de bumpat versionerna så att de inte längre är kompatibla och du måste installera om hela Eclipse, vilket får din dator att sjunga ”And aaaaiiiaaaa will always love yoouuuuuuuiioouuuuu….” samtidigt som den sätter eld på din hårddisk och skickar ett mail i ditt namn till Hells Angels där det ser ut som om du kallar dem för fjollor och bögar.

När du till slut får alla pluggar att funka som du vill (eller i alla fall tillräckligt bra för att du inte ska orka bråka mer) kommer nästa problem; att få Eclipse att fatta vilken kompilator du vill använda! Embedded är lite speciellt här eftersom det finns massor av olika arkitekturer (AVR, ARM, MIPS, PIC, SuperH etc etc etc) och varje arkitektur behöver (minst) en speciell uppsättning kompilatorer, länkare och andra verktyg. För att göra saken ännu roligare finns det GNU toolkit, IAR, Clang osv, så på nåt sätt måste du berätta för Eclipse vilken uppsättning av dessa verktyg du har. I Eclipse kan du välja mellan olika grundval (Cross GCC, Gnu autotool toolchain, Linux GCC, Cygwin GCC etc etc etc) och det är inte helt uppenbart vilket val som är rätt.

Ungefär såhär tenderar det att fungera:
– Jag: Ok, jag provar toolchainval A och pathen till verktygen är X.
– Eclipse: Jag hittar inte includefilerna.
– Jag: Includefilerna ligger på patharna Y och Z.
– Eclipse: Ok, jag kan inte bygga pga <reason 1>.
– Jag: Ok, då provar jag toolchainval B.
– Eclipse: Jag hittar inga verktyg.
– Jag: De ligger på pathen X.
– Eclipse: Jag hittar inte includefilerna.
– Jag: Includefilerna ligger på patharna Y och Z.
– Eclipse: Ok, jag kan inte bygga pga <reason 2>.
– Jag: Ok, då provar jag toolchainval C.
– Eclipse: Jag hittar inga verktyg.
– Jag: De ligger på pathen X.
– Eclipse: Jag hittar inte includefilerna och du får inte addera egna pathar. Pilutta dig!
– Jag: Ok, då provar jag toolchainval D.
– Eclipse: Jag hittar inga verktyg.
– Jag: De ligger på pathen X.
– Eclipse: Jag hittar inte includefilerna.
– Jag: Includefilerna ligger på patharna Y och Z.
– Eclipse: Ok, jag kan inte bygga pga <reason 3>.
Iterera in absurdum.

När du äntligen lyckats bygga koden och ansluta till JTAGgen kommer nästa problem; du måste få Eclipse och JTAGgen att snacka. Jag ska bespara er detaljerna, men låt oss säga att Eclipse numera klarar av att bygga koden korrekt, ladda ner binären via JTAG samt köra den! En gång. Sen uppstår massa roliga fel som slutar med att CPUn gör exception error (CPU-snack för ”Hörrö Gösta, det sket sig stor tid! Skärp dig!”) tills jag startar om GDB-servern. Detta måste jag göra varje fucking gång!

Så varför försöker jag inte fixa det då? Jo, för att just nu funkar allting och jag är livrädd för att om jag petar på nånting i inställningarna kommer Eclipse säga ”Hej. Du måste vara ny här. Vill du utveckla lite Java-kod med mig?”. Glömde jag nämna att Eclipse egentligen är en miljö för Javautveckling och att även möjligheten att utveckla i andra språk är plugins…? En annan sak Eclipse har plugins för är kopplingar till Subversion och GIT. Do you feel lucky, punk?

Jag fick allt det här att funka alldeles utmärkt förra året, den gången fick jag det tom att funka så bra att jag inte behövde starta om GDB-servern! Eftersom det funkade så bra så tänkte jag att jag skulle spara configgen så jag slapp göra om allting nästa gång. Eclipse lägger en mapp som heter ”.settings” i varje projektfolder där Eclipse sparar sin config, smidigt! Utom, då, för kompileringsverktyg, debuggerinställningar och alla de där andra sakerna som tar några dagar att reda ut för att Eclipse är så förbannat uppfuckad.

Exakt var Eclipse sparar den configgen vete fan men även om jag visste det skulle det nog inte hjälpa så mycket för när min dator gav upp (moderkortet kastade in handduken) och jag fick installera om allting (OS, Eclipse, you name it) så hade Eclipse ”utvecklats” så att ingenting längre såg ut som det gjorde tidigare, vilket gjorde att den howto jag följde förra gången inte längre var till någon som helst hjälp. Hade jag sparat configfilerna och försökt mata Eclipse med den hade Eclipse nog inte längre nöjt sig med att raka katten…

När Eclipse verkligen funkar är den guld, problemet är bara att sannolikheten att man får Eclipse att funka 100% perfekt på alla områden samtidigt är ungefär lika stor som att alla de som måste gå och prata i den vita porslinstelefonen hinner dit i tid samt att ingen missar målet när denne kaskadspyr våldsamt på en klassfest i gymnasiet där någon har en snäll morbror som försett festen med fri sprit i tillräcklig kvantitet för att alkoholförgifta en mindre håla i övre Norrland.

I nästa projekt ska jag prova en annan IDE. Jag har väldigt svårt att tänka mig att det kan bli sämre.