Om övervakning 2

bildt

Jag tror inte att det är en bra idé att utöka övervakningen precis här och nu. Man måste se bortom både fruktansvärda dåd  och misslyckade polisinsatser. Istället bör man titta bakåt och framåt längre än den politiska opinionen kan nå för tillfället. Här kommer några hållpunkter som kan vara bra att ladda in i det tänkande arbetsminnet, så att impulserna inte får enväldig makt över argumentationen.

För det första: datalagringsdirektivet. Eftersom detta förklarats ogiltigt av EU-domstolen så skulle man kunna tänka sig att det hänger löst även i Sverige. Men jag tror att det sitter ganska säkert. Dels misstänker jag att det inte kommer finnas någon som helst opinion för att riva i den svenska implementeringen (ingen politiker skulle våga). Men under ytan finns en viktigare aspekt.

Som avslöjades i ett SVT-reportage för två år sedan har man i princip automatiserat SÄPOs tillgång till datalagrade uppgifter. Det behövs alltså inga juridiska kontrollmekanismer för att data ska lämnas över, bara några knapptryckningar. När reportaget skrevs hade systemet bara införts delvis. Hur det funkar idag vet jag inte (länktips mottages gärna!). Men när ett system redan permanenterats som ett verktyg är det nog svårt att nedmontera det, även om det skulle vara ogiltigt på EU-nivå.

För det andra: frågan om ”statstrojaner”. Här råder det ju en förvirring eftersom många verkar tro att det handlar om att polisen ska få tillgång till exempelvis Skype. Men så är knappast fallet, tillgång till denna typer av tjänster får de redan som det är. När det kommer till de (i huvudsak amerikanska) nätjättarna så har man upparbetat rutiner för att snabbt få tillgång till informationen, som ju såklart är krypterad.

Med trojaner menas något annat. Det innebär att i de flesta fall att man köper mjukvara från ett skumt företag som Hacking Team, Finfisher eller Bluecoat (som Telecomix avslöjade), företag som inte har några skrupler att sälja samma produkter till vidriga diktaturer. Dessa mjukvaror kapar sedan den misstänktes dator eller telefon, på lite olika sätt beroende av hur bra produkten är. Man kan även tänka sig att man utvecklar en egen lösning, men det har troligtvis inte SÄPO resurser att göra. Fördelen med dessa är att de kräver någon form av eftertanke innan de används. De skalar inte upp på det sätt som datalagringen gör (fritt fram att extrahera hur mycket data som helst), utan man måste koncentrera sig till misstänkta individer. Däremot är dessa system ganska osäkra. När det började läcka om de företag (se bland annat Wikileaks Spyfiles och Hacking Teams läckta e-post) som sålde trojanska hästar så framkom det hur taffliga deras produkter var. Det innebär alltså en säkerhetsrisk bara att använda dem. Dels är går de att upptäcka, vilket genast gör den misstänkte medveten om att hen är övervakad. Dels öppnar man upp en IT-säkerhetslucka mot sig själv, eftersom programvaran ju ”ringer hem”.

Det är viktigt att både SÄPO och FRA har precis rätt verktyg och befogenheter som krävs för att försvara det öppna samhället utan att för den sakens skull upplösa det. Det är en mycket svår balansgång som man inte ska försöka vandra om det blåser kraftiga vindar.

Om övervakning

Jag skriver inte så ofta om övervakning längre, men i kölvattnet av den senaste tidens terrordåd skrev jag ändå en debattartikel i Expressen. Egentligen manar jag mest till eftertanke snarare än handlingskraft. Det är inte så genomtänkt att stifta övervakningslagar direkt efter ett dåd, något som historien visar.

När det kommer till diskussionen kring huruvida polisen ska få hacka sig in i folks datorer, vad man på tyska så vackert kallar för Staatstrojaner, så har jag blandade känslor. När denna typ av övervakning används av president Mubarak framkallas genast bilden av en mycket totalitär form av övervakning. Samtidigt utgör detta tillvägagångssätt en mycket riktad form av övervakning, alltså, motsatsen till ”massövervakning”. Vad säger ni?

Spionen i fickan

Den 13 oktober föreläser jag om ”Spionen i fickan” på Näckrostimmen.

Utöver vad som står i beskrivningen tänkte jag göra en utvikning som tangerar vad som händer i korsningen mellan ”övervakning” och ”skuldsättning”, med inspiration från Kina.

Klarna Faktura påverkar oss nog mer än både FRA och NSA sammanlagt (hypotes).

TID: 18.00-19.00
PLATS: Humanistiska biblioteket, Renströmsgatan 4 (Göteborg)
Fri entré

SOUernas geografi

Var är Sverige utrett? Oftast frågar man efter hur och så tänker man sig att svaret skulle vara av kvalitativ art. Men det finns en annan väg, givet att man vet exakt vilka platser som har skrivits ned i alla statliga offentliga utredningar. Rad för rad. I denna bloggpost och instruktion hade jag tänkt att försöka mig på att ta ett steg närmare en sådan empirisk datamängd.

En spännande teoretisk fråga man då kan ställa sig handlar om hur staten ”blir till” (performativt) genom att utreda ort för ort. På samma sätt som ett nätverk av ryska gasledningar kan göra anspråk på ett territorium, kan ett nätverk av utredningar sakta men säkert släppa på och av flöden av ”statsgas” som letar sig ända ut i skogarna och värmer (eller kyler) stugorna med en känsla av att tillhöra ”staten Sverige”.

Nationens gränser finns inte, de måste hela tiden (om)skapas.

Jag tänkte med denna bloggpost lägga ut steg för steg hur jag har lyckats extrahera alla ortnamn ur SOUer 1922–1996. Jag lägger ut all rådata och alla steg i bearbetningen. Det blir kanske inte så läsvänligt, men å andra sidan kan alla mina steg replikeras och kritiseras så att datan blir fullt användbar för vem som helst att använda eller publicera. Dessutom krävde det hela mycket datorkraft, så det är en miljöinsats att använda mina filer.

Med andra ord, det är alltså fritt fram att göra vad ni vill!

\\
Steg 1 – Extrahera ortsnamn
Detta tog en vecka. I skripten som Peter Krantz publicerade finns lista på ortsnamn som man kan matcha mot alla SOUer med hjälp av:


grep -owf features.txt data/30tal/*.txt > trettiotal.txt

Jag körde detta för varje katalog i åtta screens på en riktigt snabb server. I detta läge använder sig grep av Aho Corasick strängmatchning. Den letar alltså efter träffar från en (jättelång) lista av ord och så printar den ut dessa till en fil. Kanske hade jag kunnat distribuera processorlasten över alla 32 processorer i mitt system, men jag ville heller inte krascha maskinen som delas med andra. Den råa datamängden från detta kan laddas ned som:

Men dessa filer innehåller massvis av skräpdata och är bökiga att arbeta med statistiskt. Således måste de bearbetas.

\\

Formatera data

För att göra datamängden statistiskt läsbar började jag karva fram variablerna Årtal, SOU-Nummer och Ortnamn enligt följande trixande med reguljära uttryck (kommentera gärna om ni har smidigare lösningar).

Först gjorde jag en första grov extrahering av Årtal (\d{4}), Nummer (:\d{2}) och sedan Ortsnamen som kommer sist på varje rad (.*):


ag -o '\d{4}:\d{2}.*(?<=:\d{2}.txt:).*' SOU1922-1996.txt > 1.txt

Sedan gjorde jag två olika versioner. Den första filen (2.6Mb)inneåller År, Nummer, Ort och gjordes om till en kommaseparerad fil med ett enkelt perl-handgrepp:


perl -p -i -e 's/.txt:/, /g' 1.txt

Men, för enkelhets skull gjorde jag även (2.4Mb) en version med bara År och Ort ur ovanstående fil:


perl -p -i -e 's/:\d{2}//g' 1.txt

\\

Stoppord

Men nu framträder ytterligare ett problem. Ortnamn, speciellt svenska ortnamn, har ju ibland betydelser även i vardagsspråket. Staden Kista och en sådan där trälåda man läggs i när man dör, stavas likadant. Ännu värre blir det med orten ”Vi” eller ”Gran”. Jag började först med att bläddra igenom filerna induktivt och hittade själv följande lista:

Vi|Bet|När|Bön|Håll|Mark|Böj|Vad|Färjan|Kap|Så|Alla|Verksamheten|Vecka|Källa|Varmvattnet|Hallen|Bo|Gran|Björk|Viken

Men detta var väldigt tidsödande, så jag frågade runt i sociala medier och fick massvis av svar. Här är de jag samlade in i går kväll:

Lyckan|Önska|By|Ön|Holmen|Strand|Vara|Mannaminne|Ensamheten|Bor|Kärleken|Skara|Bro|Viken|Skruv|Tving|Råda|Torp|Näs|Berg|Lugnet|Torp|By|Sand|Slut

För att sortera ut dessa falska positiver använde jag mig av lite perl.


perl -p -i -e 's/^.*\b(Vi|Bet|När|Bön|Håll|Mark|Böj|Vad|Färjan|Kap|Så|Alla|Verksamheten|Vecka|Källa|Varmvattnet|Hallen|Bo|Gran|Björk|VikenLyckan|Önska|By|Ön|Holmen|Strand|Vara|Mannaminne|Ensamheten|Bor|Kärleken|Skara|Bro|Viken|Skruv|Tving|Råda|Torp|Näs|Berg|Lugnet|Torp|By|Sand|Slut|Mom)\b//g' test.txt

Detta tar bort alla rader som innehåller något av ovanstående ord. Däremot lämnar det kvar blanka rader som jag tar bort med:


perl -p -i -e 's/^(\s*|\r|\n)$//mg' test.txt

Av någon anledning fanns fortfarande orten ”Så” med, så jag fick köra en ny vända med:


perl -p -i -e 's/.*Så//g' test.txt

Och sedan ta bort blanka rader igen.

\\
Datamängden

Sedan är det bara att döpa om txt-filen till .csv. Och så har vi datamängden SOU1922-1996artal-ort-filtered.csv.zip (1.5Mb).

Denna kommaseparerade fil borde man kunna läsa in rakt i Excel om man vill. För att göra allt replikerbart har jag dock bara gjort lite enkel statistik i R. För att skapa en enkel lista över orter i SOUer (i fallande ordning), kör jag bara (byt ut sökväg):


mydata <- read.csv("/home/anon/Desktop/SOU1922-1996artal-ort-filtered.csv") sink("Platserfrekvens.txt") df <- as.data.frame(table(mydata$Place)) ; df[order(df$Freq, decreasing=T), ]

Här instruerar jag R att skriva ut hela resultatet till filen Platserfrekvens.txt vars topplista ser ut så här:

Stockholm 73039
Göteborg 28937
Uppsala 26130
Malmö 20032
Danmark 17324
Norrland 15245
Örebro 14191
Lund 14143
Kalmar 10821
Bohus 8124
Frankrike 7372
Umeå 6948
Gävle 6569
Norrköping 6013
Västerås 5777
Luleå 5389
Skåne 5249
Linköping 5125
Karlskrona 5015
Hälsingborg 4695
Växjö 4190
Os 4069

Jag antar att "Os" är ytterligare en sökanomali. Stoppordslistan måsta alltså uppdateras.

Men detta vara bara ett test och ett sätt att få ut datamängden så att ni andra kan börja tinka med den. Det borde vara enkelt att skapa fina grafer över tid, kanske ned till varje enskild rapport. Det skulle även vara helt magnifikt med en sverigekarta som över tid uppdaterades dynamiskt med en "prick" på kartan varje gång en SOU nämnde en ort. Då skulle man, precis som med tekniska nätverk, se precis var någonstans det finns "täckning" och var någonstans det finns "vita fläckar". Tänk en täckningskarta för mobiltelefoner.

Kommentera mer än gärna. Vad finns det mer för idéer?

Medborgarforskning som motstånd

Häromveckan publicerades min artikel ”Citizen Science as Resistance: Crossing the Boundary Between Reference and Representation” i första numret av Journal of Resistance Studies. Hela numret kan laddas ned i sin helhet från tidskriftens hemsida. Eller, om man vill gå direkt till artikeln, finns en postprint-pdfGUs hemsida.

Här använder jag mig av en rad exempel hur aktivistorienterad medborgarforskning använder sig av vetenskapliga metoder som motståndspraktik. Detta skapar ett problem som jag använder för att diskutera kärnan i Latours resonemang om separeringen mellan ”vetenskap” och ”politik”, dels som den kommer till uttryck i We have never been Modern, men framförallt så som problemet formuleras i An Inquiry into Modes of Existence.

En rad förarbeten till artikeln finns att läsa på bloggen under taggarna NET, POL, REF. Allt är således väldigt systematiskt.

Statens bruk av termerna ”lappar” och ”samer” – en arkivsökning i SOUer och ett metodförslag

På DN-debatt skriver ett antal forskare om Rasbiologiskt språkbruk i statens rättsprocess mot sameby. En central kritik består av att staten lutar sig mot ett rasbiologiskt och förlegat språkbruk:

Staten tar sig även rätten att omdefiniera samisk etnicitet och återinför dessutom den förlegade och nedvärderande benämningen ”lapp”.

”[D]et har ju talats om lappar förr i tiden och nu talas det om samer, men det där är inte riktigt samma sak, eftersom lappar det var nomaderna utan avseende på etnisk tillhörighet, medan samer är en etnisk grupp. […] vi tycker att det är viktigt att hålla isär dom här begreppen och kommer därför att försöka tala om lappar när det handlar om nomader och människor som levde av lappmannanäringar som var jakt, fiske och renskötsel.” (Gällivare Tingsrätt 2/6 2015)

Detta språkbruk skulle kunna vara hämtat från rasbiologins tid och vittnar om en förvånande okunskap om historiska förhållanden.

Den äldsta referensen hos författarna till artikeln är från 1976. Det är givetvis så att det är svårt att få plats med mera stoff i en debattartikel. Men eftersom vi numera har statens röst digitaliserad och sökbar är det enkelt att verifiera (eller falsifiera) författarnas påståenden (instruktion nedan).

Genom att söka på begreppen ‘lappar’ och ‘samer’ i alla Statens offentliga utredningar mellan 1922 och 1996 får vi två (massiva) sökresultat:

Givetvis får man manuellt sortera bort sökanomalier för ‘lappar’ när det betyder ”papperslappar”. Men redan här får man intressanta ledtrådar till ett historiskt ”språkbruk”.

Några exempel:

SOU 1928:17

(karies) påträffats hos eskimåer till en utbredning av ungefär 2 %\ hos australier 20.4 %; hos negrer 26..”) %; hos lappar 4.5 %.

SOU 1936:23

Med fullt duglig renvaktare förstås lapp, som besitter fullständig arbetsförmåga och har fyllt 18 år.

SOU 1950:22

vara avsedda för den nomadiserande lappbefolkningen men i mån av utrymmen även stå öppna för andra lappar som i levnadssätt och vanor kunde jämställas med de nomadiserande.

Ser man istället till användningen av ‘samer’ så förekommer detta uttryck först 1950.

Detta var bara ett exempel. Nedan följer några ingångar till den som vill söka vidare.

\\
Metod

För er som har laddat ned alls SOUer är det bara att ställa sig i katalogen och köra någon av följande alternativ (de gör ungefär samma sak men ag är snabbast):


ag ' lappar '

grep -Ei -r ' lappar ' .*

find . -exec cat {} + | perl -ne "print if / lappar /"

Byt ut ‘ lappar ‘ mot ‘ samer ‘. Lek sedan lite med reguljära uttryck för att precisera. När ni har en bra söksträng är det bara att lägga till > fil.txt så får man en behändig lista.

Relationer i SOUniversum

Att lägga ut sorlet från SOUer visade sig leda till intressanta uppslag. Bland annat har idé- och vetenskapshistorikern Gustav Holmberg gjort en inventering av amatörbegreppet genom hela SOU-korpuset, Copyriot har skrivit, och Peter Krantz på KB har gjort en graf av datamängden.

Väldigt roligt! Nu kommer en uppföljning som bitvis är teknisk, men som bör läsas mera som en humanvetenskaplig ingång som har råkat ta hjälp av några digitala verktyg.


Work in progress alltså! Det är inte vackert, men det kommer en bild på slutet!

Jag tänker att det finns två approacher till materialet; data och metadata. Att söka i innehållet (data) visar sig vara mycket kraftfullt, speciellt om man tillämpar sökverktyg som är snabbare än grep. Men här tänkte jag ge ett litet uppslag till hur man kan extrahera/skapa metadata ur SOUerna. Exakt vad det skulle vara användbart till vet jag inte riktigt ännu, men ibland måste data komma före frågorna för att man ska veta vad man ska fråga.

Inspirerad av Peter Krantz graf, började jag harva runt i SOUerna för att hitta regelbundenheter som går att ta som utgångspunkt för relationer mellan texterna. En sådan regelmässig konvention tycks vara hur man anger SOU som en källa: årtal kolon nummer, exempelvis 1945:68, eller 19\d{2}:\d{2} med reguljära uttryck.

Om jag nu ställer mig i katalogen för varje SOU som enskild fil (en sådan katalog skapas om man laddar ned och packar upp denna datamängd) så kan jag köra grep -r -Eo '19\d{2}:\d{2}' * för att söka efter detta mönster, som vi känner igen som en referens. Detta gör att datorn spottar ur sig ungefär:


20tal/Betänkande och förslag i fråga om kvinnors tillträde till statstjänster. - SOU 1923:22.txt:1923:11
20tal/Betänkande och förslag rörande understöd åt den civila luftfarten - SOU 1929:21.txt:1929:21
20tal/Betänkande om inkomst- och förmögenhetsskatt. - SOU 1923:70.txt:1923:41

Det fetade mönstret identifierar filnamnet för den SOU som vi läser ur och det kursiverade numret visar att datorn har hittat en referens till en SOU (inuti en SOU). Det är inte mera konstigt än att det finns referenser längst bak i en bok eller i en artikel. SOUer hänvisar till andra SOUer. Detta bildar ett litet SOUniversum som vi kan visualisera. Men vägen dit kräver att man processar detta brutala output till något som kan läsas av exempelvis Gephi. För att man ska få fina sociologiska monader måste man definiera vad som är noder och vad som är relationer i ett nätverk.

Det mest gångbara formatet för sociala nätverksdata är nog .gexf. Det är öppet, enkelt och läses av Gephi och Sigma.js.

Varje enskild SOU är en nod, och varje gång en SOU citerar en annan SOU har vi att göra med en ”relation”. Relationen som enskild händelse (haecceitet) kan vi inte veta så mycket om – någon eller några författare har skrivit en SOU och ”laddat ned” andra SOUer till sitt tänkande. Det enda spåret vi har bland de 166 miljoner rader (!) text som alla SOUer utgör är en ”referens”.

För att bygga om det output som vi fick ovan till .gexf-formatet så körde jag några ”hemmasnickrade” regex-sökningar. Jag tar inte alla detaljer utan skissar mest några exempel. På denna sträng:

20tal/Betänkande och förslag rörande understöd åt den civila luftfarten – SOU 1929:21.txt:1929:21

Kan vi ta allt före den första noden – 1929:21 – söka upp med ^(.*?)SOU som vi ersätter med source=". Sedan kan vi söka efter \.txt: och ersätta med " target=". Några vändor fram och tillbaka börjar vi närma oss relationer, som bör se ut ungefär så här:


source="1951:13" target="1948:42"
source="1951:13" target="1948:42"
source="1951:13" target="1948:42"
source="1951:13" target="1945:51"
source="1951:13" target="1945:51"
source="1950:21" target="1926:18"

Men, för att de ska begripas måste de numreras. Det går att lösa med ett enkelt pythonskript som ungefär lyder:


#!/usr/bin/python

items = [‘source=”1951:13″ target=”1948:42″‘, ‘source=”1950:21″ target=”1926:18″‘, ‘source=”1950:21″ target=”1926:18″‘, osv. alla edges efter varandra.]
number = 0
for item in items:
print(number, item)
number = number + 1

Skriptets output kör man sedan > fil.gexf, så har man en numrerad lista på alla relationer. Med detta gjort är det bara att fortsätta att sök-ersätta med reguljära uttryck tills man börjar få något i stil med:


edge id="0" source="1951:13" target="1948:42" /
edge id="1" source="1951:13" target="1948:42" /
edge id="2" source="1951:13" target="1948:42" /

Därefter tar man alla unika SOU-nummer och skapar en lista. Enklast är att ta filen man sparat med ovanstående information och bara suga ut varje enskild SOU med grep -Eo '19\d{2}:\d{2}' fil.gex > baranoderna.gexf. För att sedan spara lite plats kan man ta och radera duplikata nummer. Sedan kan man bygga noder som ser ut så här:

node id="1951:13"

Men för att det ska bli komplett ska varje nod ha en ”label”. För att göra labels till noderna kan man göra ungefär så här i en avancerad texteditor så som Textwrangler eller Notepad++ (glöm inte att slå på Grep).

Find

node id="(19\d{2}:\d{2})" /

Replace

node id="\1" label="\1" /

Så får man snyggt:


node id="1951:13" label="1951:13" /
node id="1948:42" label="1948:42" /
node id="1945:51" label="1945:51" /

(allt detta ska sedan vara inom < > i .gexf-filen)

Fint. Resten är bara en fråga om lite meta-uppmärkning och vi har oss en .gexf-fil som går att öppna i Gephi.

Pust. Det är nu jag tänker att någon som kan programmera kan göra allt detta så mycket fortare/smidigare. Men, skam den som ger sig!

Med lite modularitetsfilter för att lägga färger och ”degree” för att göra noderna större ju oftare de är citerade får vi en sån är liten bild:

50talet

SOU 1956:39 heter Offentliga byggnader och verkar vara den mest omtalade och citerade ”nätverkade” SOUn under 50-talet (Degree, dvs. både inkommande och utgående länkar) (jag begränsade min datamängd till 50-talet för detta test). Om vi visualiserar med raka relationslinjer ser vi tydligare riktningarna på citeringarna.

Detta var bara ett test och proof of concept. Kanske finns det något i detta som ger uppslag till tankar och funderingar på hur man kan forska vidare.

Manylines

Switch to full screen
I have started to experiment with Manylines from Sciences Po. I managed to install it on an Ubuntu server and it is now online here (Note: For testing only, don’t save your work here).

Manylines reads .gefx network files. Once you have uploaded a file, you can zoom in and create snapshots called ”views”. When you have a few views, you can begin writing a ”narrative” to tell a story about the network you are analyzing.

For the purpose of demonstration, I have made a brief presentation of some Web of Science data (above). It’s a small sample of keywords found in articles on ”Citizen Science”.

Monadologiska undersökningar – Hyphe + Gephi + Sigma.js

Zooma genom att skrolla. Klicka för att aktualisera varje enskild monads nätverk. Se även fullskärmsversion
I mellandagarna har jag experimenterat med några verktyg för datalandskapsforskning/journalistik/aktivism. Detta i syfte att analysera världen med en monadologisk ontologi utifrån Gabriel de Tarde. Här tänkte jag dela med mig av några metodologiska/mjukvarumässiga knep som jag har lärt mig (autodidaktiskt) över många koppar svart te.

För att kunna se datalandskapet för vad det är, måste vi använda oss av några instrument som förstärker och förtydligar den snåriga djungel som uppstår i datamatrisens bördiga jord. Här vandrar en mängd muterade arter och avarter omkring. Men primärt är vi inte intresserade av deras ”essens”, utan istället deras performativitet. Varje nod definieras av sitt nätverk samtidigt som nätverket definierar noderna.

Tack vare internet lämnar nästan alla aktiviteter efter sig digitala spår. Genom att skicka ut spindlar (crawlers) går det att sniffa upp dessa spår och sedan analysera dem. Datalandskapet är fyllt av sådana spår och tack vare att vi lämnar dem efter oss är det enkelt att bevaka och övervaka nätet.

Vi är alla flugor i arachnidernas fiberoptiska fångstapparat.

\\

Médialab vid Sciences Po tillhandahåller ett antal open-sourcade verktyg som utgår från en monadologisk ansats. För att samla in data måste en ha en vettig crawler som kan skrapa och indexera den information en vill åt. Hyphe (github) är en mycket lättanvänd sådan, som tyvärr ännu är i ett tidigt utvecklingsstadium och därför inte helt enkelt att installera 1.

Hyphe tillåter att man genomför en slags ”snöbollscrawling”. I exemplet ovan utgick jag från en populär hemsida bland svenska män, vilket gav följande resultat:

Skärmavbild 2015-01-05 kl. 09.26.56

När man väl har angett en startpunkt, hämtar sedan Hyphe fram de relevanta länkarna till andra noder i nätverket:

Skärmavbild 2015-01-05 kl. 09.31.55

Hyphe sätter sedan igång att crawla alla noder en väljer att inkludera i nätverket. Allt som allt skapade jag detta nätverk på cirka tio minuter, bara för att testa. Men har en mera tid kan en dels bygga ett större nätverk, och dels sortera och klassificera noderna så att en får en tydligare visualisering.

Hela tiden skapar hyphe automatiskt förhandsgranskningar av det nätverk man bygger ihop:

Skärmavbild 2015-01-05 kl. 09.33.52

Sedan är det enklast att exportera resultatet till .gephx-formatet och sedan fortsätta bearbetningen i Gephi.

För att sedan publicera en interaktiv visualisering kan man dels installera ett plugin som exporterar Gephi-nätverk till sigma.js eller installera sigma.js-biblioteket på en webserver och direkt låta det läsa in gephx-filen (om man inte orkar Gephi).

Då blir det lite enklare och roligare att visa upp visualiseringen utan att skapa en massa statiska bilder.

\\

Att kravla och skrapa webben ger givetvis en begränsad mängd data som är av en viss typ. Noderna utgörs av ”web-entiteter” och en web-entitet består sedan av ytterligare nätverk. Tänk <a href=”http://www.expressen.se/nyheter/expressen-avslojar/namn-pa-anonyma-anvandare-knackta/”>alla de som kommenterar på bloggarna och hemsidorna</a> i nätverket! Men för att komma åt den nivån måste en utvidga med att <a href=”http://www.christopherkullenberg.se/monader-sociala-natverk-och-facebookovervakning/”>skrapa exempelvis sociala medier</a>.

Imitationer.

Noder som imiterar andra noder.

Näthatet uppstår

i nätverken.

Notes:

  1. Jag lyckades med att få igång Hyphe på en Debianserver (Debian 7). Dock är installationsskriptet aningen trasigt och måste läsas igenom manuellt för att tillgodose alla dependencies. En måste även lägga till GPG-nycklar manuellt och sedan lyckas klura ut hur Apache2 gör Alias-pekningar. Jag rekommenderar även starkt att en prövar först på en virtuell maskin eller på en maskin som man inte använder till något annat, detta eftersom installationen av scrapy-motorn kommer att ersätta sysvinit, vilket är ganska så risky business. Hör gärna av er till mig om ni kör fast.

Monadologiska försök att kartlägga nätverk där [POL] korsar [REF] i fallet medborgarvetenskap

Under hösten har jag dykt ned i forskning om medborgarvetenskap i projektet Taking Science To the Crowd. Eftersom projektet är internationellt har jag inte skrivit så mycket om det här, utan istället bloggat på engelska eller lagt tentativa analyser i projektets wiki.

Men ibland kan det vara bra att skriva ut tankarna även på denna blogg. Ofta funderar jag nämligen på hur man skulle kunna navigera sig fram i det mångtydiga fältet Citizen Science med hjälp av nätverksanalyser i det ”datascape”datalandskapet – som uppstår när en börjar följa olika aktörer.

Några utgångspunkter: Medborgarvetenskap skapar vad Latour kallar för referens [REF]. Samtidigt bedrivs medborgarvetenskap ibland av aktivister som söker bilda opinion kring olika sakfrågor. De arbetar alltså med att frambringa politiska cirklar i syfte att skapa politisk representation.

Referens [REF] och representation [POL] är två helt skilda existensmodi. Det förra skapar referenskedjor med hjälp av inskriptioner som mobiliserar världen, vilket leder fram till vetenskapliga publikationer. Det senare skapar tillfälliga autonoma punkter av representation som mobiliserar massorna(s fantomer). Det förra är relativt beständigt, det senare är flyktigt och försvinner så fort det inte mobiliseras.

Det intressanta tycker jag är när dessa två existensformer korsar varandra. Alltså, när politik och aktivism bedrivs med vetenskap och vice versa. Då får vi exempelvis medborgarvetenskap som räddar fisk i Mekongfloden, gör motstånd mot oljebolagen i Louisiana eller tillverkar instrument för att mäta oljespill. Vissa talar till och med om Extreme Citizen Science som en helt ny form av aktivism, utrustad med vetenskapliga metoder snarare än plakat och banderoller.

Men, vad är det som händer egentligen när en bedriver politik med vetenskap och vetenskap med politiska forskningsfrågor? En modernist skulle genast få kalla fötter. En kan ju inte blanda samman vetenskap och politik! Då rasar den objektivitet som präglar riktig forskning. Men även politiken kollapsar; om vi tar ”genvägen” via vetenskapliga fakta får vi en ytterst odemokratisk politik, en teknokrati!

Latour är dock inte speciellt orolig. Det är precis i dessa korsningar, i dessa mellanrum, som det sker intressanta saker.

Korsningarna, tänker jag, borde gå att studera genom analyser av de nätverk som utgör infrastrukturen. Här kommer några ytterst tentativa analyser.

\\

När en följer nätverk finns det ingen given mittpunkt att börja i. För ett tag sedan tog jag utgångspunkt i den publicerade vetenskapliga litteraturen. Då får man en bild av de citeringsnätverk som präglar medborgarforskningen.

Men vetenskapliga publikationer är givetvis bara en sida av de ytterst heterogena nätverk som skapar medborgarforskning. Visualiseringen ovan är en inzoomning på det fält av miljövetenskap/ekologi som dominerar medborgarforskningen. Men en sådan bild döljer alla de projekt som inte publicerar sig i kollegiegranskade tidskrifter.

Så, en kan likaväl börja i en annan ände: ”blogosfären”. Med hjälp av Issuecrawler skrapade jag länkar från 12 meborgarvetenskapsbloggar.

Här ser vi hur samma ekologi/miljövetenskapliga kluster finns representerat i nedre vänstra hörnet. Men vi ser även hur olika medborgarforskningsprojekt hakar in i sociala mediers plattformar (inzoomning nedan) och i viss mån till mera traditionella medier (Guardian, Scientific American, Nature osv.). Men, vi ser även hur det finns starka länkar till olika statliga (amerikanska) institutioner (.gov).

Länken till amerikanska myndigheter och forskningsfinansiärer blir ännu tydligare in en mycket större analys jag gjorde på 522 forskningsprojekts hemsidor. Här ser vi en oerhörd dominans av amerikansk forskningspolitik (pdf för större bild):

Medborgarforskning kostar pengar, även om tusentals människor arbetar gratis med att genomföra observationer och klassifikationer av data. Men det är inte så enkelt att vi kan dra likhetstecken mellan de gröna noderna i nätverken (.gov) och ”kapitalflöden”. Så enkla är aldrig nätverken. Medborgarforskningen befinner sig i korsningen mellan [POL] och [REF]. En länk kan alltså även betyda att forskningsprojekten vänder sig emot en myndighet i syfte att påverka exempelvis ett visst beslut eller myndighetsutövande.

Se även pdf.

Analyserna ovan är bara preliminära och översiktliga. Helheten är alltid mindre än delarna. Nyckeln till att hitta kvalitéer i datalandskapet är att zooma in, länk efter länk. Det är först då som tröskeln blir uppenbar och visar sig empiriskt.