Tvångsblogga

Pratade tidigare i veckan med en vän som försöker och säkert lyckas skriva ett eller flera bloggposter om dagen. Om jag skriver en snutt nu, så kanske det lossnar.

Jag hade en riktigt aktiv period, när FRA-lagar och annat trams var på väg att klubbas in … tyvärr så antogs ju FRA-lagen i alla fall. Många poster skrevs på rent irritation/ilska och en del av dem länkades och lästes flitigt. Det har gått något eller några år sedan dess och nu befinner sig bloggen i något slags bakvatten, helt beroende på att jag inte uppdaterar eller postar.

Jag brukar lägga märke till saker i min närhet som jag reagerar på, antingen genom att kommentera det när det händer .. eller gå och mentalt suga lite på karamellen, dra någon intressant vinkel och blogga om det. Det blixtrar till ibland och jag skriver två eller tre poster på någon timme, för att sedan vara inaktivt i någon vecka, veckor eller i värsta fall, månader.

DYF bloggar .. eller bloggade. Det var lite av och på, vilken status det har just nu vet jag inte men jag vet att det är mode-bloggar som konsumeras, vem och vilka? Ingen aning, inte min te-påse.

Kul saker har hänt på sistone i alla fall; Min medverkan i tidningen Scoop, där intervjun publicerades och när jag fick döda-träd-versionen i handen, visade sig innehålla ytterligare en artikel som nämnde mitt lilla projekt, MediaCreeper.com.

Annars flyter dagarna på, nytt jobb, nya visioner och snart ny arbetsplats.

November

Sexton dagar in i November, jag avskyr mörkret med hela kroppen. Mörkt när man åker hemifrån och mörkt när man kommer hem, det är en stund mitt på dagen på helgerna man har chansen att se “ägorna” i dagsljus.

Gnäll, gnäll, gnäll… jaja, idag fyller mitt lilla hobbyprojekt 2 år, MediaCreeper, har arbetat med det lite då och då, någon kväll här och där. De jag har träffat i bloggsfären har för det mesta uttryckt positiva tankar och åsikter om projektet, “aha, det är ju bra att man kan se om Aftonbladet eller Expressen varit inne och läst min blog, på ett enkelt sätt.” .. eller “Va!? Är det DU som driver MediaCreeper?!”.

Användarna är i stora drag bloggare, både politiskt neutrala och helt politiska, jag har även universitet, mjukvaruföretag och PR-bolag som använder tjänsten. Martina Linds Politometern har inkluderat MediaCreeper i sin fiffiga widget så det är många politiska bloggar som slinker in den vägen.

Men ändå, November… så jävla trist.

Jag kan tänka mig att gå i ide, som en björn, i mitten av oktober .. för att tinas fram i mitten av mars. Jag avskyr mörker, snö och kyla. Tänk om man kunde få bo vintermånaderna på motsvarande breddgrad på andra sidan ekvatorn, vet inte riktigt var man skulle hamna då men jag inbillar mig att det skulle vara bra mycket bättre än det svenska november-mörkret.

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.

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å.

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.

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.

En kort summering av helgen

Lördag, Älsket fyller år och hela släkten kommer på fika. Paketöppning, kaffe, bullar och några kalla öl. Mor, Far och Milton (senaste tillskottet, i form av liten hund) är med en stund.

Söndag, trött och lite mosig i huvudet (nej, inte bakfull). Masar mig ned till city för piratfika, lyssnar och tar in, bekantar mig med nytt folk, trevligt. Kommer hem och bygger klart uppdatering av MediaCreeper, mailar och läser feeds.

Trött och skäggig, mot ny vecka.

MediaCreeper: Ett år på nätet

Nu har MediaCreeper funnits ett år på nätet. Under småtimmarna den 16:e november 2008 släpptes MediaCreeper, tjänsten som “bevakar journalister” som det fått heta när just media rapporterat. Syftet är fortfarande att bevaka redaktioner och inte enskilda journalister/reportrar.

Tanken var att visa att media läser bloggar som skriver om ämnen som det borde rapporteras mer om, som FRA-lagen, IRPED, datalagrings-, telecom- och Stockholms-paket och andra tokigheter som politikerna försöker klubba igenom under bordet eller när vi inte tittar. Det har skrivits minst en ledare om MediaCreeper och flera notiser i några av medias och journalisters egna branch-organ.

I Facebookgruppen för MediaCreeper har jag samlat blogg-inlägg och artiklar som skriver om MediaCreeper och även Creeper, som jag använde som förlaga.

Jag vill än en gång tacka de som hjälpte till med glada tillrop, stöd, grafisk layout och lite juridiska frågor; Marie “Emma” Andersson / Opassande, Patrik Wallström, Mark Klamberg, Piotr och även alla som använder MediaCreeper på sina bloggar och forum, de är för många för att nämna dem alla här.

MediaCreeper: Ny funktion på gång

Efter några timmars hackande på en ny funktion, så är den nästan färdig för release, det återstår lite testande innan jag släpper den … förhoppningsvis imorgon kväll.

Jag bollade med en idé på tåget hem ikväll och tänkte att det kunde inte vara så klurigt, när jag kommit hem så satte jag mig och hade det nästan klart på någon timme.

Några uppdateringar gjordes igår

MediaCreeper har uppdaterats med några justeringar och tillägg, på mediacreeper/senaste har listning av länkar justerats så att de inkommande länkar som surfats genom Google-cache eller Google Translate får rätt “etikett”, det vill säga den sajt/blog som besökts genom tjänsterna i stället för Googles IP-nummer, länken pekar dock fortfarande på cache/translate.

En uppdatering av mer teknisk natur är att servern svarar nu med en HTTP-header som avslöjar när MediaCreeper senast uppdaterades; “X-Version: mediacreeper/2009-07-12-02” som kan förklaras som program-/applikations-namn och datum och allra sist uppdateringens serienummer som varje datum börjar på “01” och efter varje enskild uppdatering ökas med ett.