]> pere.pagekite.me Git - homepage.git/blobdiff - blog/index.html
Generated.
[homepage.git] / blog / index.html
index af7a6c306665f3e9dd62d8568ed93c547a77f5e8..08496a4432bf735bd39a338da0ac9dc714192824 100644 (file)
 
 
     
+    <div class="entry">
+      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Where_did_that_package_go___mdash__geolocated_IP_traceroute.html">Where did that package go? &mdash; geolocated IP traceroute</a></div>
+      <div class="date"> 9th January 2017</div>
+      <div class="body"><p>Did you ever wonder where the web trafic really flow to reach the
+web servers, and who own the network equipment it is flowing through?
+It is possible to get a glimpse of this from using traceroute, but it
+is hard to find all the details.  Many years ago, I wrote a system to
+map the Norwegian Internet (trying to figure out if our plans for a
+network game service would get low enough latency, and who we needed
+to talk to about setting up game servers close to the users.  Back
+then I used traceroute output from many locations (I asked my friends
+to run a script and send me their traceroute output) to create the
+graph and the map.  The output from traceroute typically look like
+this:
+
+<p><pre>
+traceroute to www.stortinget.no (85.88.67.10), 30 hops max, 60 byte packets
+ 1  uio-gw10.uio.no (129.240.202.1)  0.447 ms  0.486 ms  0.621 ms
+ 2  uio-gw8.uio.no (129.240.24.229)  0.467 ms  0.578 ms  0.675 ms
+ 3  oslo-gw1.uninett.no (128.39.65.17)  0.385 ms  0.373 ms  0.358 ms
+ 4  te3-1-2.br1.fn3.as2116.net (193.156.90.3)  1.174 ms  1.172 ms  1.153 ms
+ 5  he16-1-1.cr1.san110.as2116.net (195.0.244.234)  2.627 ms he16-1-1.cr2.oslosda310.as2116.net (195.0.244.48)  3.172 ms he16-1-1.cr1.san110.as2116.net (195.0.244.234)  2.857 ms
+ 6  ae1.ar8.oslosda310.as2116.net (195.0.242.39)  0.662 ms  0.637 ms ae0.ar8.oslosda310.as2116.net (195.0.242.23)  0.622 ms
+ 7  89.191.10.146 (89.191.10.146)  0.931 ms  0.917 ms  0.955 ms
+ 8  * * *
+ 9  * * *
+[...]
+</pre></p>
+
+<p>This show the DNS names and IP addresses of (at least some of the)
+network equipment involved in getting the data traffic from me to the
+www.stortinget.no server, and how long it took in milliseconds for a
+package to reach the equipment and return to me.  Three packages are
+sent, and some times the packages do not follow the same path.  This
+is shown for hop 5, where three different IP addresses replied to the
+traceroute request.</p>
+
+<p>There are many ways to measure trace routes.  Other good traceroute
+implementations I use are traceroute (using ICMP packages) mtr (can do
+both ICMP, UDP and TCP) and scapy (python library with ICMP, UDP, TCP
+traceroute and a lot of other capabilities).  All of them are easily
+available in <a href="https://www.debian.org/">Debian</a>.</p>
+
+<p>This time around, I wanted to know the geographic location of
+different route points, to visualize how visiting a web page spread
+information about the visit to a lot of servers around the globe.  The
+background is that a web site today often will ask the browser to get
+from many servers the parts (for example HTML, JSON, fonts,
+JavaScript, CSS, video) required to display the content.  This will
+leak information about the visit to those controlling these servers
+and anyone able to peek at the data traffic passing by (like your ISP,
+the ISPs backbone provider, FRA, GCHQ, NSA and others).</p>
+
+<p>Lets pick an example, the Norwegian parliament web site
+www.stortinget.no.  It is read daily by all members of parliament and
+their staff, as well as political journalists, activits and many other
+citizens of Norway.  A visit to the www.stortinget.no web site will
+ask your browser to contact 8 other servers: ajax.googleapis.com,
+insights.hotjar.com, script.hotjar.com, static.hotjar.com,
+stats.g.doubleclick.net, www.google-analytics.com,
+www.googletagmanager.com and www.netigate.se.  I extracted this by
+asking <a href="http://phantomjs.org/">PhantomJS</a> to visit the
+Stortinget web page and tell me all the URLs PhantomJS downloaded to
+render the page (in HAR format using
+<a href="https://github.com/ariya/phantomjs/blob/master/examples/netsniff.js">their
+netsniff example</a>.  I am very grateful to Gorm for showing me how
+to do this).  My goal is to visualize network traces to all IP
+addresses behind these DNS names, do show where visitors personal
+information is spread when visiting the page.</p>
+
+<p align="center"><a href="www.stortinget.no-geoip.kml"><img
+src="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geoip-small.png" alt="map of combined traces for URLs used by www.stortinget.no using GeoIP"/></a></p>
+
+<p>When I had a look around for options, I could not find any good
+free software tools to do this, and decided I needed my own traceroute
+wrapper outputting KML based on locations looked up using GeoIP.  KML
+is easy to work with and easy to generate, and understood by several
+of the GIS tools I have available.  I got good help from by NUUG
+colleague Anders Einar with this, and the result can be seen in
+<a href="https://github.com/petterreinholdtsen/kmltraceroute">my
+kmltraceroute git repository</a>.  Unfortunately, the quality of the
+free GeoIP databases I could find (and the for-pay databases my
+friends had access to) is not up to the task.  The IP addresses of
+central Internet infrastructure would typically be placed near the
+controlling companies main office, and not where the router is really
+located, as you can see from <a href="www.stortinget.no-geoip.kml">the
+KML file I created</a> using the GeoLite City dataset from MaxMind.
+
+<p align="center"><a href="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy.svg"><img
+src="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy-small.png" alt="scapy traceroute graph for URLs used by www.stortinget.no"/></a></p>
+
+<p>I also had a look at the visual traceroute graph created by
+<a href="http://www.secdev.org/projects/scapy/">the scrapy project</a>,
+showing IP network ownership (aka AS owner) for the IP address in
+question.
+<a href="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-scapy.svg">The
+graph display a lot of useful information about the traceroute in SVG
+format</a>, and give a good indication on who control the network
+equipment involved, but it do not include geolocation.  This graph
+make it possible to see the information is made available at least for
+UNINETT, Catchcom, Stortinget, Nordunet, Google, Amazon, Telia, Level
+3 Communications and NetDNA.</p>
+
+<p align="center"><a href="https://geotraceroute.com/index.php?node=4&host=www.stortinget.no"><img
+src="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-small.png" alt="example geotraceroute view for www.stortinget.no"/></a></p>
+
+<p>In the process, I came across the
+<a href="https://geotraceroute.com/">web service GeoTraceRoute</a> by
+Salim Gasmi.  Its methology of combining guesses based on DNS names,
+various location databases and finally use latecy times to rule out
+candidate locations seemed to do a very good job of guessing correct
+geolocation.  But it could only do one trace at the time, did not have
+a sensor in Norway and did not make the geolocations easily available
+for postprocessing.  So I contacted the developer and asked if he
+would be willing to share the code (he refused until he had time to
+clean it up), but he was interested in providing the geolocations in a
+machine readable format, and willing to set up a sensor in Norway.  So
+since yesterday, it is possible to run traces from Norway in this
+service thanks to a sensor node set up by
+<a href="https://www.nuug.no/">the NUUG assosiation</a>, and get the
+trace in KML format for further processing.</p>
+
+<p align="center"><a href="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-kml-join.kml"><img
+src="http://people.skolelinux.org/pere/blog/images/2017-01-09-www.stortinget.no-geotraceroute-kml-join.png" alt="map of combined traces for URLs used by www.stortinget.no using geotraceroute"/></a></p>
+
+<p>Here we can see a lot of trafic passes Sweden on its way to
+Denmark, Germany, Holland and Ireland.  Plenty of places where the
+Snowden confirmations verified the traffic is read by various actors
+without your best interest as their top priority.</p>
+
+<p>Combining KML files is trivial using a text editor, so I could loop
+over all the hosts behind the urls imported by www.stortinget.no and
+ask for the KML file from geotraceroute, and create a combined KML
+file with all the traces (unfortunately only one of the IP addresses
+behind the DNS name is traced this time.  To get them all, one would
+have to request traces using IP number instead of DNS names from
+geotraceroute).  That might be the next step in this project.</p>
+
+<p>Armed with these tools, I find it a lot easier to figure out where
+the IP traffic moves and who control the boxes involved in moving it.
+And every time the link crosses for example the Swedish border, we can
+be sure Swedish Signal Intelligence (FRA) is listening, as GCHQ do in
+Britain and NSA in USA and cables around the globe.  (Hm, what should
+we tell them? :) Keep that in mind if you ever send anything
+unencrypted over the Internet.</p>
+
+<p>PS: KML files are drawn using
+<a href="http://ivanrublev.me/kml/">the KML viewer from Ivan
+Rublev<a/>, as it was less cluttered than the local Linux application
+Marble.  There are heaps of other options too.</p>
+
+<p>As usual, if you use Bitcoin and want to show your support of my
+activities, please send Bitcoin donations to my address
+<b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
+</div>
+      <div class="tags">
+        
+        
+        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>. 
+        
+        
+      </div>
+    </div>
+    <div class="padding"></div>
+    
+    <div class="entry">
+      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Introducing_ical_archiver_to_split_out_old_iCalendar_entries.html">Introducing ical-archiver to split out old iCalendar entries</a></div>
+      <div class="date"> 4th January 2017</div>
+      <div class="body"><p>Do you have a large <a href="https://icalendar.org/">iCalendar</a>
+file with lots of old entries, and would like to archive them to save
+space and resources?  At least those of us using KOrganizer know that
+turning on and off an event set become slower and slower the more
+entries are in the set.  While working on migrating our calendars to a
+<a href="http://radicale.org/">Radicale CalDAV server</a> on our
+<a href="https://freedomboxfoundation.org/">Freedombox server</a/>, my
+loved one wondered if I could find a way to split up the calendar file
+she had in KOrganizer, and I set out to write a tool.  I spent a few
+days writing and polishing the system, and it is now ready for general
+consumption.  The
+<a href="https://github.com/petterreinholdtsen/ical-archiver">code for
+ical-archiver</a> is publicly available from a git repository on
+github.  The system is written in Python and depend on
+<a href="http://eventable.github.io/vobject/">the vobject Python
+module</a>.</p>
+
+<p>To use it, locate the iCalendar file you want to operate on and
+give it as an argument to the ical-archiver script.  This will
+generate a set of new files, one file per component type per year for
+all components expiring more than two years in the past.  The vevent,
+vtodo and vjournal entries are handled by the script.  The remaining
+entries are stored in a 'remaining' file.</p>
+
+<p>This is what a test run can look like:
+
+<p><pre>
+% ical-archiver t/2004-2016.ics 
+Found 3612 vevents
+Found 6 vtodos
+Found 2 vjournals
+Writing t/2004-2016.ics-subset-vevent-2004.ics
+Writing t/2004-2016.ics-subset-vevent-2005.ics
+Writing t/2004-2016.ics-subset-vevent-2006.ics
+Writing t/2004-2016.ics-subset-vevent-2007.ics
+Writing t/2004-2016.ics-subset-vevent-2008.ics
+Writing t/2004-2016.ics-subset-vevent-2009.ics
+Writing t/2004-2016.ics-subset-vevent-2010.ics
+Writing t/2004-2016.ics-subset-vevent-2011.ics
+Writing t/2004-2016.ics-subset-vevent-2012.ics
+Writing t/2004-2016.ics-subset-vevent-2013.ics
+Writing t/2004-2016.ics-subset-vevent-2014.ics
+Writing t/2004-2016.ics-subset-vjournal-2007.ics
+Writing t/2004-2016.ics-subset-vjournal-2011.ics
+Writing t/2004-2016.ics-subset-vtodo-2012.ics
+Writing t/2004-2016.ics-remaining.ics
+%
+</pre></p>
+
+<p>As you can see, the original file is untouched and new files are
+written with names derived from the original file.  If you are happy
+with their content, the *-remaining.ics file can replace the original
+the the others can be archived or imported as historical calendar
+collections.</p>
+
+<p>The script should probably be improved a bit.  The error handling
+when discovering broken entries is not good, and I am not sure yet if
+it make sense to split different entry types into separate files or
+not.  The program is thus likely to change.  If you find it
+interesting, please get in touch. :)</p>
+
+<p>As usual, if you use Bitcoin and want to show your support of my
+activities, please send Bitcoin donations to my address
+<b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
+</div>
+      <div class="tags">
+        
+        
+        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>. 
+        
+        
+      </div>
+    </div>
+    <div class="padding"></div>
+    
     <div class="entry">
       <div class="title"><a href="http://people.skolelinux.org/pere/blog/Appstream_just_learned_how_to_map_hardware_to_packages_too_.html">Appstream just learned how to map hardware to packages too!</a></div>
       <div class="date">23rd December 2016</div>
@@ -79,6 +322,9 @@ t2n
 %
 </pre></p>
 
+<p>You can find modalias values relevant for your machine using
+<tt>cat $(find /sys/devices/ -name modalias)</tt>.
+
 <p>If you want to make this system a success and help Debian users
 make the most of the hardware they have, please
 help<a href="https://wiki.debian.org/AppStream/Guidelines">add
@@ -95,7 +341,7 @@ complete set of packages in Debian for that particular hardware.  The
 team also got a nice Christmas present today.  The
 <a href="https://tracker.debian.org/pkg/nxt-firmware">nxt-firmware
 package</a> made it into Debian.  With this package in place, it is
-not possible to use the LEGO Mindstorms NXT unit with only free
+now possible to use the LEGO Mindstorms NXT unit with only free
 software, as the nxt-firmware package contain the source and firmware
 binaries for the NXT brick.</p>
 
@@ -1054,206 +1300,6 @@ nynorsk.</p>
     </div>
     <div class="padding"></div>
     
-    <div class="entry">
-      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Hyperions_magasin_Pegasus_g_r_for_Creative_Commons.html">Hyperions magasin Pegasus går for Creative Commons</a></div>
-      <div class="date">22nd November 2016</div>
-      <div class="body"><p>For noen dager siden ble jeg tipset av min venn Andreas
-Aanerud om at <a href="http://magasinetpegasus.no">magasinet
-Pegasus</a> skulle ta i bruk
-<a href="https://creativecommons.org/">Creative
-Commons</a>-lisensiering på sine artikler.  Han fortalte at den
-direkte årsaken var at han hadde blitt inspirert av å lese
-<a href=" http://www.lulu.com/shop/http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-22441576.html">boken
-Fri kultur</a>
-(<a href="https://github.com/petterreinholdtsen/free-culture-lessig">github</a>)
-og foreslått endringen.  Jeg ble veldig glad for å høre
-dette, da det er det første konkrete tilfellet jeg har hørt om der den
-norske oversettelsen av <a href="http://www.free-culture.cc/">
-Lawrence Lessigs bok Free Culture</a> som jeg ga ut i fjor høst hadde
-fått noen til å ta i bruk Creative Commons.</p>
-
-<p>Andreas fikk boken av meg som takk for at han inviterte meg til
-<a href="http://www.gathering.org/">The Gathering</a>, og jeg er veldig
-glad for at den falt i smak.  Jeg ble nysgjerrig på hva som var
-bakgrunnen for denne policy-endringen hos Hyperion og han sa seg
-villig til å la seg intervjue til bloggen min. </p>
-
-<blockquote>
-
-<p><strong>Hvilke tanker gjorde du deg da boken lå i hånden første
-gang?</strong></p>
-
-<p>Jeg husker da jeg fikk boken, etter en omvisning på The Gathering i
-2016, der jeg var Core Organizer.  The Gathering er jo et sted hvor en
-fremmer delingskultur, i alt fra kode, til løsninger og «hacks», så en
-kan vel si at boken er veldig relevant!</p>
-
-<p>Mine første tanker om boken, var at den trengte et grafisk løft.
-Selv har jeg dysleksi og er ikke verdens beste i å lese, men for meg
-så skal ikke det bety at jeg ikke klarer å lese.  Jeg har jo også mine
-egne tanker om «Fri kultur», ettersom jeg har jobbet med noen norske
-filmer via NRK og TV2 og nå sitter som en teknisk leder i
-filmavdelingen til Schjærven Reklamebyrå.</p>
-
-<p><strong>Har du lest boken, og hva tenker du om den nå?</strong></p>
-
-<p>Jeg har lest boken, og for meg er det jo veldig moro å kunne si at
-Disney var en pirat og nå ha bevisene.  Men det å gå fra Disney via
-RIAA, og så igjennom en jungel av teknikk og programmering og ende opp
-med spørsmålet om vi alle piratkopierer litt, er enda bedre.  For ja,
-boken klarer å få frem en diskusjon om åndsverk på en god måte
-gjennom en samling historier, men den viste meg også et bilde, hvor
-teknologi blir kneblet, og ikke får lov til å utvikle seg, ettersom
-«opphavsrettsinnehaverne» bryr seg mer om sin industri enn om verden
-går fremover.  Ta f.eks. internettradio!  Hvorfor tuller vi med DAB+
-og alt det der, når radio kan være en app på alle telefoner i dag.
-Men den største tanken som jeg satt igjen med, er at vi må få færre
-advokater og flere tenkere som kan dra oss vekk fra de feilene vi er i
-ferd med å ende opp i.</p>
-
-<p><strong>Har budskapet i boken påvirker deg og det du holder på
-med?</strong></p>
-
-<p>The Gathering sin moderforening er
-<a href="http://www.kandu.no/">KANDU</a>, som er et stolt medlem av <a
-href="http://n4f.no/">Hyperion</a>.  Hyperion har et mandat igjennom
-sitt interne magasin Pegasus å fremme Hyperion sine
-medlemsarrangementer og kultur. Dette tror jeg er veldig viktig, og en
-av de viktigste virkemidlene det magasinet nå har fått, er pålegget om
-å publisere alt under de forskjellige Creative Commons
-retningslinjer. Grunnen til at Pegasus kan velge fritt blant lisensene
-til Creative Commons er deres bruk av freelancere m.m. som også må få
-sine rettigheter dekket.</p>
-
-<p>Det er et steg i riktig retning som jeg håper, vil gi lokalaviser,
-nasjonale aviser, bloggere m.m. muligheten til å referere til Pegasus
-sitt innhold uten å måtte be om tillatelse først, som i bunnen vil
-hjelpe oss å spre vår kultur i Hyperion.</p>
-
-<p><strong>Hva fikk Pegasus til å vedta retninglinjer om bruk av
-Creative Commons, og hvordan kom dere frem til en slik
-policy?</strong></p>
-
-<p>Dette skjedde på Hyperion sitt landsting, hvor jeg ønsket å fremme
-Creative Commons som en retning som flere mener magasinet burde ta,
-hvordan Pegasus tar det i bruk er mer opp til redaksjonen. Det som var
-trist er at en del har misforstått hva Creative Commons er.  Vi fikk
-en veldig het «debatt» på facebook i etterkant hvor noen blant annet
-mener at dette vedtaket har drept Pegasus.</p>
-
-<p>Personlig syntes jeg disse reaksjonene er rare, ettersom Pegasus er
-et medlemsmagasin og magasinet sitt mål er å spre vår fantastiske
-kultur.  Jeg mener at Ceative Commons-bruksvilkår på artikler skaper
-en veldig god mulighet til å spre denne kulturen.  Det gjør at større
-og mindre aviser kan låne artikler fra medlemsmagasinet og publisere
-det hos seg, slik at effekten nettopp er fremme vår kultur.</p>
-
-<p>Jeg gleder meg til å se hvordan redaksjonen håndhever bruken av
-Creative Commons.</p>
-
-<p><strong>Hvem tror du kunne ha mest nytte av å lese Fri
-kultur?</strong></p>
-
-<p>Jeg tror at boken Fri kultur bør leses av de som ønsker en debatt
-om nye medier, samt de som jobber med medier og føler seg «truet» av
-utviklingen. Kanskje det kan være et lysglimt om at vi må heller være
-med å utvikle oss, enn å stoppe opp og «beskytte» våre eier-, penge-
-og materielle interesser.</p>
-
-<p>Spørsmålet for redaksjoner vil vel være om de «tjener» på klikk og
-sine artikler via annonser, i så fall ville jeg tenkt litt rundt
-spredningen.  Nettavisen Digi.no gjorde en analyse i 2015 som var
-veldig fin. Hvor de måtte konkludere med at de fikk ut budskapet
-bedre, men de mistet inntekter på annonsevisning.</p>
-
-<p>Derfor for et magasin som skal «spre» kultur, så burde Creative
-Commons være en no-brainer, en kunne også kanskje argumentere med at
-NRK også burde gjøre dette, ettersom de ikke lever av reklame, og vi
-betaler for innholdet deres.</p>
-
-<p><strong>Kommer du til å anbefale boken til noen du
-kjenner?</strong></p>
-
-<p>Absolutt!  Jeg har faktisk tenkt å gi den videre som en vandrebok,
-til redaksjonen i Pegasus slik at de kan lese den og få noen ider og
-tanker om fri kultur.</p>
-
-<p><strong>Du sier at boken klarer å få frem viktig en diskusjon om
-  vern av åndsverk.  Boken er jo skrevet med bakgrunn i USAs
-  Copyright-lovgiving og ikke den norske åndsverksloven.  Hva gjør at
-  du mener boken er relevant for den norske debatten?</strong></p>
-
-<p>En av tingene boken pekte på var tanken om hvor opphavsretten skal
-ligge.  Skal den ligge hos den som skriver sangen, den som fremfører
-eller den som tar opp sangen.  Og når spørsmålet kom tilbake i en
-software-utgave, «hvordan kan Adobe styre opphavsretten i sin eBook
-Publisher» så føler jeg at vi kommer inn på spennende tanker som jeg
-mener vi glemmer i norsk åndsverksdebatt.  USA har rett å slett et
-«større bilde» som kanskje vi kan ta lærdom av.</p>
-
-</blockquote>
-
-<p>Jeg er veldig spent på hvordan redaksjonen i Pegasus kommer til å
-ta i bruk Creative Commons, og gleder meg til neste tegn på at
-bokutgivelsen har fått noen til å tenke mer på problemene med dagens
-åndsverksvern.</p>
-</div>
-      <div class="tags">
-        
-        
-        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett</a>. 
-        
-        
-      </div>
-    </div>
-    <div class="padding"></div>
-    
-    <div class="entry">
-      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Coz_profiler_for_multi_threaded_software_is_now_in_Debian.html">Coz profiler for multi-threaded software is now in Debian</a></div>
-      <div class="date">13th November 2016</div>
-      <div class="body"><p><a href="http://coz-profiler.org/">The Coz profiler</a>, a nice
-profiler able to run benchmarking experiments on the instrumented
-multi-threaded program, finally
-<a href="https://tracker.debian.org/pkg/coz-profiler">made it into
-Debian unstable yesterday</A>.  Lluís Vilanova and I have spent many
-months since
-<a href="http://people.skolelinux.org/pere/blog/Coz_can_help_you_find_bottlenecks_in_multi_threaded_software___nice_free_software.html">I
-blogged about the coz tool</a> in August working with upstream to make
-it suitable for Debian.  There are still issues with clang
-compatibility, inline assembly only working x86 and minimized
-JavaScript libraries.</p>
-
-<p>To test it, install 'coz-profiler' using apt and run it like this:</p>
-
-<p><blockquote>
-<tt>coz run --- /path/to/binary-with-debug-info</tt>
-</blockquote></p>
-
-<p>This will produce a profile.coz file in the current working
-directory with the profiling information.  This is then given to a
-JavaScript application provided in the package and available from
-<a href="http://plasma-umass.github.io/coz/">a project web page</a>.
-To start the local copy, invoke it in a browser like this:</p>
-
-<p><blockquote>
-<tt>sensible-browser /usr/share/coz-profiler/viewer/index.htm</tt>
-</blockquote></p>
-
-<p>See the project home page and the
-<a href="https://www.usenix.org/publications/login/summer2016/curtsinger">USENIX
-;login: article on Coz</a> for more information on how it is
-working.</p>
-</div>
-      <div class="tags">
-        
-        
-        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>. 
-        
-        
-      </div>
-    </div>
-    <div class="padding"></div>
-    
     <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
     <div id="sidebar">
       
@@ -1262,6 +1308,13 @@ working.</p>
 <h2>Archive</h2>
 <ul>
 
+<li>2017
+<ul>
+
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (2)</a></li>
+
+</ul></li>
+
 <li>2016
 <ul>
 
@@ -1526,7 +1579,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (144)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (145)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
 
@@ -1538,7 +1591,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (336)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (337)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
 
@@ -1556,7 +1609,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (15)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (19)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (20)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
 
@@ -1574,7 +1627,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (285)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (182)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (183)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (26)</a></li>
 
@@ -1582,7 +1635,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (62)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (96)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (97)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
 
@@ -1606,13 +1659,13 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (49)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (50)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (5)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (10)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (11)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (44)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (45)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (2)</a></li>
 
@@ -1624,7 +1677,7 @@ working.</p>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (38)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (39)</a></li>
 
 </ul>