Första semesterdagen

Den började för drygt 50 minuter sedan, min semester.

Större delen av söndagen spenderades på soffan, det var varmt, nästan outhärdligt. När det blev svalare framåt kvällen fixade vi lite i trädgården, jag klippte ned lite risiga buskar som skymde smultronen, nu kommer solen åt lite bättre och vi får förhoppningsvis lite fler smultron, sen att buskaget ser lite mindre risigt ut är en bonus.

Roade mig med att göra lite research på IPv6, mera validering av IPv6-adresser .. hittade några lämpliga kandidater och ett lass med testdata, med riktigt formaterade blandat med trasigt och ogiltigt formaterade data.

Candidate: A 448/25 of 473
Candidate: B 473/0 of 473
Candidate: C 437/36 of 473
Candidate: D 450/23 of 473
Candidate: E 317/156 of 473
Candidate: F 448/25 of 473
Candidate: G 450/23 of 473

Det ser ut som candidate ‘B’ vinner för den klarade alla tester efter lite tweakande av regeln;

^(\s{1,})?(?:(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){6})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:::(?:(?:(?:[0-9a-fA-F]{1,4})):){5})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){4})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,1}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){3})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,2}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:(?:[0-9a-fA-F]{1,4})):){2})(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,3}(?:(?:[0-9a-fA-F]{1,4})))?::(?:(?:[0-9a-fA-F]{1,4})):)(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,4}(?:(?:[0-9a-fA-F]{1,4})))?::)(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,5}(?:(?:[0-9a-fA-F]{1,4})))?::)(?:(?:[0-9a-fA-F]{1,4})))|(?:(?:(?:(?:(?:(?:[0-9a-fA-F]{1,4})):){0,6}(?:(?:[0-9a-fA-F]{1,4})))?::))))(\s{1,})?$

Resultatet av testerna kommer användas i MediaCreeper, då jag sett att fler och fler träffar med IPv6-adresser och i dagens läge klarar MediaCreeper endast av IPv4-adresser. Det känns inte som någon större brådska att implementera IPv6 riktigt än, de IPv6-besökare som förekommer utgör några få träffar om dagen, så de slipper undan en stund till. Vidare har jag även kikat på hur man skall definiera IPv6 ranges på ett fiffigt sätt, MySQL (v5.x) har vad jag förstått inga native funktioner för att konvertera IPv6-adresser till DECIMALs.

Nåja, känns som kvällens övningar vid datorn är färdiga. Nu skall jag nöta lite soffa med Älsket och stirra på dumburken en stund, kanske med en kall öl i näven — för i morrn har jag semester.

MediaCreeper: Samarbetet med Politometern nu släppt

Martina Lind släppte genom inlägget Politometern släpper widget! den widget som varit i pågående sedan i mars i år, då jag träffade Martina och Ted.

Politometern’s widget visar bloggar (med politisk färg) som ofta länkar aktuell blog med små snippets och även MediaCreeper längst ner i botten.

Det skall bli intressant att se hur detta utvecklar sig framöver, vi står ju inför ett val i höst.

MediaCreeper uppdateras löpande med små fixar och förbättringar, framöver väntar nya saker som en WordPress Plugin som just nu testas. MediaCreeper kommer även få ett API där man skall kunna hämta data i olika format, som JSON, XML, RSS, ATOM, OPML eller platt och enkel CSV, för att möjliggöra mashup-lösningar kring de data som MediaCreeper samlar.

Jag driver MediaCreeper med ett par enkla regler;
Öppet för alla för att inte utestänga någon, även sånt som går emot mina personliga uppfattningar har rätt att synas och höras.
Spam betraktas sådan information som vars enda syfte är att länka kommersiella produkter eller tjänster, hör inte hemma på MediaCreeper och blockeras snabbt.

Almuñécar

För några veckor sedan var jag med jobbet på konferens i Almuñécar med omnejd, riktigt trevligt. Hann få upp lite solbränna trots att jag oftast höll mig i skuggan, på dagarna var det sällan under 26C och ljumma nätter. Konferensbitarna hölls i hotellets AC-svala delar och senare andra aktiviteter som besök vid Torre de Cerro Gordo och de fantastiska grottorna Cueva de Nerja och den lilla byn som klängde på bergssidan, Frigiliana.
Mat och dryck i lagom mängder med kamrater, sol och nästan fri sikt till norra Afrika. Almuñecar är med på listan över ställen jag gärna skulle besöka igen, om och när tillfälle ges.

Creeper API

Igår satte jag igång med CreeperFramework API på allvar. Att börja med en ping-funktion, för att möjliggöra server-server kommunikation för att kringgå blockering av domän/ip. Enkelt och lightweight, enligt KISS (Keep It Simple Stupid).

Börjat skissa på andra smör-och-bröd-funktioner, för att dynamiskt hämta information on-demand. Är öppen för idéer angående vilka funktioner som kan tänkas behövas, kommentera!

Några av grundtankarna är att kunna servera resultat i Atom, RSS, XML, JSON, OPML och CSV. Missat något?

API’t kommer vara versionerat för att inte bryta kompabilitet, siktar på att försöka hålla tre versioner bakåt när det blir dags. Alla skriv-funktioner kommer kräva username/password medan läs-funktioner blir öppna, som även cache’as och fördröjs med 15 sekunder upp till 5 minuter beroende på funktion.

Jag har fått synpunkter på tidszonen jag använder, GMT+0000, det är ett genomtänkt beslut och ingen slump. Framöver kommer MediaCreeper lanseras internationellt och GMT-standard tid känns mest “rätt”.

Eventuellt kommer jag sätta upp en blog på MediaCreeper för att samla allt relaterat material på ett och samma ställe med engelska som språk att kommunicera på.

Hälsokontroll

Så dagen kom som jag bävat lite för, hälsokontrollen, ryktet visade sig stämma – det skulle cyklas.
Det gick bra, oväntat bra, alla mina värden var väl inom gränserna och sköterskan konstaterade att mitt BMI var lite högt, jag är lite för kort för min vikt… Men jag kan ju träna och försöka få av några kilon.
Konditionen bar riktigt bra, vid 125 watt var pulsen aldrig över 121, vilket tydligen var riktigt bra.

Jag är betydligt lättad för jag har nog gått och omedvetet haft stress sedan jag fick veta att vi skulle kollas.

På tåget hem nu, känner mig full av sprall men ändå trött efter en lång dag, kommer nog somna ovaggad ikväll.

Mer SMS från Telia

Grattis! Vi har nu höjt hastigheten och datamängden från 5 GB till 10 GB så nu kan du surfa snabbare och dubbelt så mycket i det mobilnätet för samma fasta kostnad! På länken http://m.telia.se/mobilsurf kan du läs mer. Hälsningar Telia

Yay!

Flattr på MediaCreeper

Japp, MediaCreeper har fått Flattr så nu är det fritt fram för de som har Flattr-konto att … eh… flattra?

Nåja, hittills har 5 (i skrivande stund) klickat och jag har enligt transaktionerna tjänat €0.93 i maj månad .. undrar vad Skatteverket säger om dessa mikrobetalningar, då de ligger utanför deras juridistik, pengarna ligger ju på Paypal.. i USA. Efter skatt på en sån slant är det inte mycket kvar, tror jag struntar i det… knappt 6 spänn svart, under bordet.

Snickarn kommer imorrn

Ringde snickaren nu ikväll, rekommenderad av vänner, för att få ett prisförslag på vad det kan tänkas kosta att få en ny veranda. Den som finns idag är svajjig och bevuxen med alger och rutten här och där.
Ny veranda med tak, så man kan nyttja utrymmet även under sub-optimala dagar när det kanske regnar.

Det blir absolut ingen pensionärs-kuvös, inglasning, det går fetbort.

Så, imorrn kommer han hit för att ta sig en titt, 19m² med insynsskydd och och tak. Hoppas min budget håller, har inte riktigt tid att ta tag i det hela själv.

Update 2010-05-19: Snickarn var och kikade och skulle återkomma med två olika prisförslag på två olika utföranden, i slutet av veckan.

Update 2010-06-06: Tackade nej förra veckan innan jag drog till Almuñécar med jobbet, det kändes lite väl dyrt. Skall försöka få en ny offert den kommande veckan.

iPhone, de första intrycken

I eftermiddags fick jag min tjänste-iphone (svart 3GS 16Gb), eftersom vi ska ta bort de flesta ångtelefonerna på kontoret. Installerade iTunes och pillade in SIM-kortet, aktiverade luren.

När sedan iTunes begär VISA-kort uppgifter för att släppa in mig, känns allt fel. Jag vill inte lämna ifrån mig kortuppgifter som de sparar permanent och vem vet hur länge. Jag backade ur och valde att inte registera mitt kort, det känns väldigt vanskligt.

Jag har arbetat med E-handel och med kortbetalningar på nätet, tumregeln har hela tiden varit att när man genomfört transaktionen skall inte fullständiga uppgifter sparas i någon databas, kortnummer maskas till endast de fyra sista siffrorna och Cvc/CVV2 skall över huvud taget aldrig “träffa disk” (sparas). iTunes frångår all vett och sans. Om/när sajten hackas/läcker, för det händer förr eller senare (mest förr) .. så ligger kortuppgifterna där med för- och efternamn, födelsedatum, kortnummer och cvc/cvv2 … klart att användas. Är kortet dessutom kopplat till ett lönekonto, eftersom de flesta av oss i Sverige inte handlar så mycket på kredit, så är vi i princip fucked. Någon, även indirekt Apple skulle i princip kunna tömma kontot.

Paranoia, är ett tillstånd av förhöjd uppmärksamhet

Nej, antingen struntar jag fullständigt i iTunes .. eller så skaffar jag återigen ett separat Visa-kort kopplat till ett konto som jag flyttar in precis rätt mängd pengar när det skall användas. Jag ska snacka med min bank, för jag upplever iTunes som osäkert.

Lite paranoia, är bara hälsosamt

Jag diskuterade detta med kollegorna på pendeltåget när jag åkte hemmåt tidigare idag, förklarade hur jag hanterat kortuppgifter tidigare och fick medhåll, det lät rimligt. När iTunes vill ligga på uppgifterna känns det mycket osäkert.

Det känns som jag knappast kan vara ensam om de här tankarna. Dessutom, de applikationerna jag är ute efter är “Free” och inte kostar något känns det hela väldigt onödigt, tyvärr kommer jag inte åt dem utan ett iTunes-konto och inget iTunes-konto utan VISA-kort.

Apple, get your act together and let free apps be installed without iTunes-accounts.

Update 2010-05-19: Jag föll till föga och registrerade mina kortuppgifter i alla fall, utan applikationer är iPhone lika skoj som en gråsten. Det var ändå under protest jag lämnade kortuppgifterna till Apple. Jag har beställt ett extra VISA-kort från banken, kopplat till ett speciellt konto som bara kommer innehålla pengar när jag skall beställa något på nätet.

Sms från Telia

Hej, vi håller nu på att höja hastigheten i mobilnätet så man kan surfa snabbare! Vi är klara med arbetet 30 maj 2010. Du kan behöva starta om mobilen för att få tillgång till högre hastighet. Hälsningar Telia

Låter trevligt, hoppas bara att de inte uppgraderar priserna på samma sätt.

Låt oss slippa SVT!

Jag läser artikeln Miljoner tittare kan bli utan SVT (Ex), Copyswede är ju givetvis ute och cyklar, “vidaresändning” kallar de det bara för att det trattas in i ett kabelnät.

Det jag hoppas på är att SVTs skall kodas i kabelnäten, så man skall få avgöra själv om man vill betala för smörjan — även att “tv-avgiften” tas bort och att Radiotjänst i Kiruna läggs ned. 1900-talet ringde och ville ha tillbaka sina omoderna avgifter och indrivningsbolag.

Please, please … snälla ComHem, gör SVT optional, jag vill inte ha skiten, jag ser inte på den och jag vill inte betala för den.

En ny sorts ping-tjänst

Medan jag stod och slipade trädgårdsmöbler tidigare idag kom jag att tänka på en ny sorts ping-tjänst… i och för sig är hyffsat nära relaterat till vad jag byggt; MediaCreeper.

Några gammelmedia har skaffat sig ett referrer-filter, vilket är helt ok. För att komma runt detta tänkte jag knåpa ihop ett WordPress-plugin som pingar MediaCreeper med relevanta uppgifter, som då kringgår besökares eventuella filter och/eller blockeringar av MediaCreeper på domän eller ip-nivå.

Det jag ska fundera mer på är själva protokollet, det skall vara enkelt och minimalt. Men jag ska först se mig om på nätet om det finns något liknande eller snarlikt, som kan användas direkt eller med lite modifikation.. eller som kan kan snegla på om man skapar det från scratch.

Det bör innehålla någon slags autentisering för att kunna knyta en “klient” till en ping, så att det blir enkelt att stävja abuse av olika sorter. Givetvis skulle det släppas en specifikation på protokollet som open source.

Jag antar att fler tjänster än MediaCreeper skulle kunna dra nytta av det, som gamla vanliga Creeper .. i ungefär samma syfte.

Ubuntu-brottning, skärmsläckaren from hell

Jag uppgraderade min Thinkpad R31 till Ubuntu 10.04 LTS igår kväll, började pilla runt lite med inställningar och blev irriterad på att skärmsläckaren låste väldigt fort, 10 minuter, så jag öppnade inställningar och klickade bort bocken för låsning (eftersom den står relativt skyddat och jag har inga känsliga saker på den) och råkade klicka på en annan skärmsläckare än default “blank screen”… då bestämde sig ubuntu för att sparka igång den i preview-läge, som genast fick skärmen att börja blinka. Efter några omstarter med varierande resultat, kom jag in och kunde läsa i syslog. OpenGL och i915 (grafik-chippet) trivs inte så bra ihop.
kernel: [12217.344055] [drm:i915_gem_idle] *ERROR* hardware wedged
kernel: [12219.207553] [drm:i915_gem_entervt_ioctl] *ERROR* Reenabling wedged hardware, good luck
kernel: [12219.680038] [drm:i915_hangcheck_elapsed] *ERROR* Hangcheck timer elapsed... GPU hung
kernel: [12219.680052] render error detected, EIR: 0x00000000
kernel: [12219.680094] [drm:i915_do_wait_request] *ERROR* i915_do_wait_request returns -5 (awaiting 111759 at 107507)
.. repeterar i det oändliga i syslog.

Googlade lite och hittade forumpostningar om samma fel, daterade augusti förra året.

Jag får trassla vidare med det när jag kommer hem imorrn, nu kan jag i alla fall rota runt i maskinen via ssh utan problem.

MediaCreeper, ny sajt

Nya MediaCreeper finns numera på http://mediacreeper.com/index .. Hela sajten är ombyggd och förbättrad för att klara större last och flera språk, ännu är inte språkstödet påslaget men det finns där, klart att användas.

Länkar till den gamla sajten (http://www.b19.se/mediacreeper/index) omdirigeras automatiskt till den nya och det hela bör inte märkas mer än att den nya adressen dyker upp i adress-raden. De hundratals bloggar och forum som länkar MediaCreeper-bannern får justera länkningen när de kan, får tid eller orkar, whichever comes first.

Det finns några små buggar kvar, dock inga show-stoppers, det saknas lite cache’ning här och där men i det stora hela så är sajten fullt fungerande. Det kommer justeras och fixas under de kommande veckorna.

I framtiden kommer MediaCreeper ha en lite mer internationell inriktning och jag söker därför några personer som kan tänka sig att översätta lite texter, mot creds och länkning på frontsidan. De språk jag i första hand tänker på är Tyska, Spanska, Italienska, Danska, Norska och Finska, den Engelska översättningen finns redan på plats och kan eventuellt utgöra mall för övriga nya språk. Något språk du tycker saknas? Maila eller kommentera! Jag kan inte erbjuda några ersättningar då sajten drivs på hobby-basis.

Rewrite av MediaCreeper

Det börjar närma sig, ikväll har jag kommit en bra bit på väg med de RSS-flöden som finns i MediaCreeper, tidigare var de olika typerna av flöden i den “gamla” MediaCreeper genererade i flera olika kodsnuttar som alla hade sina egna vinklar och vrår. Nu har jag samlat ihop, förenklat och förbättrat och förhoppningsvis snabbat upp det hela, det återstår att se när jag sätter det i produktion.

Jag har prickat av många punkter på todo-listan och det är färre kvar än avklarade.

Det som behövs göras när den nya versionen är tagen i produktion är att leta upp översättare, som kan ta sig an några enkla översättningar för Norska, Danska, Finska och Tyska. Senare tillkommer det nog fler men det löser sig säkert då.

Jag har löst några tidigare problem med förbrukning av bandbredd, validering och tweakat databasfrågor, nya MediaCreeper känns snappy och kvick att surfa runt på, skall bli spännande att lägga ut i produktion… några timmar/dagar kvar.