]> pere.pagekite.me Git - homepage.git/blob - blog/index.html
Generated.
[homepage.git] / blog / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="http://people.skolelinux.org/pere/blog/index.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <div class="title">
13 <h1>
14 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
15
16 </h1>
17
18 </div>
19
20
21
22 <div class="entry">
23 <div class="title"><a href="http://people.skolelinux.org/pere/blog/The_space_rover_coquine__or_how_I_ended_up_on_the_dark_side_of_the_moon.html">The space rover coquine, or how I ended up on the dark side of the moon</a></div>
24 <div class="date"> 2nd June 2019</div>
25 <div class="body"><p>A while back a college and friend from Debian and the Skolelinux /
26 Debian Edu project approached me, asking if I knew someone that might
27 be interested in helping out with a technology project he was running
28 as a teacher at <a href="https://www.ecolefrancodanoise.dk/">L'école
29 franco-danoise</a> - the Danish-French school and kindergarden. The
30 kids were building robots, rovers. The story behind it is to build a
31 rover for use
32 <a href="http://blog.ecolefrancodanoise.dk/first-week-on-the-dark-side">on
33 the dark side of the moon</a>, and remote control it. As travel cost
34 was a bit high for the final destination, and they wanted to test the
35 concept first, he was looking for volunteers to host a rover for the
36 kids to control in a foreign country. I ended up volunteering as a
37 host, and last week the rover arrived. It took a while to arrive
38 after <a href="http://blog.ecolefrancodanoise.dk/model-moms">it was
39 built and shipped</a>, because of customs confusion. Luckily we were
40 able fix it quickly with help from my colleges at work.</p>
41
42 <p>This is what it looked like when the rover arrived. Note the cute
43 eyes looking up on me from the wrapping</p>
44
45 <img src="http://people.skolelinux.org/pere/blog/images/2019-06-02-robot-dark-side-of-moon-esken-med-det-rare-i.jpeg" width="32%" style="clear:left"/>
46 <img src="http://people.skolelinux.org/pere/blog/images/2019-06-02-robot-dark-side-of-moon-den-ser-meg.jpeg" width="32%" style="clear:left"/>
47 <img src="http://people.skolelinux.org/pere/blog/images/2019-06-02-robot-dark-side-of-moon-en-skrue-loes.jpeg" width="32%" style="clear:left"/>
48
49 <p style="text-align:left">Once the robot arrived, we needed to track
50 down batteries and figure out how to build custom firmware for it with
51 the appropriate wifi settings. I asked a friend if I could get two
52 18650 batteries from his pile of Tesla batteries (he had then from the
53 wrack of a crashed Tesla), so now the rover is running on Tesla
54 batteries.</p>
55
56 <p>Building
57 <a href="https://gitlab.com/ecolefrancodanoise/arduino-efd/">the rover
58 firmware</a> proved a bit harder, as the code did not work out of the
59 box with the Arduino IDE package in Debian Buster. I suspect this is
60 due to a unsolved
61 <a href="https://github.com/arduino/Arduino/pull/2703"> license problem
62 with arduino</a> blocking Debian from upgrading to the latest version.
63 In the end we gave up debugging why the IDE failed to find the
64 required libraries, and ended up using the Arduino Makefile from the
65 <a href="https://tracker.debian.org/pkg/arduino-mk">arduino-mk Debian
66 package</a> instead. Unfortunately the camera library is missing from
67 the Arduino environment in Debian, so we disabled the camera support
68 for the first firmware build, to get something up and running. With
69 this reduced firmware, the robot could be controlled via the
70 controller server, driving around and measuring distance using its
71 internal acoustic sensor.</p>
72
73 <p>Next, With some help from my friend in Denmark, which checked in the
74 camera library into the gitlab repository for me to use, we were able
75 to build a new and more complete version of the firmware, and the
76 robot is now up and running. This is what the "commander" web page
77 look like after taking a measurement and a snapshot:</p>
78
79 <img src="http://people.skolelinux.org/pere/blog/images/2019-06-02-robot-dark-side-of-moon-commander.png" width="40%" border="1" align="center"/>
80
81 <p>If you want to learn more about this project, you can check out the
82 <a href="https://hackaday.io/project/164082-the-dark-side-challenge">The
83 Dark Side Challenge</a> Hackaday web pages.</p>
84
85 <p>As usual, if you use Bitcoin and want to show your support of my
86 activities, please send Bitcoin donations to my address
87 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
88 </div>
89 <div class="tags">
90
91
92 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/robot">robot</a>.
93
94
95 </div>
96 </div>
97 <div class="padding"></div>
98
99 <div class="entry">
100 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Nikita_version_0_4_released___free_software_archive_API_server.html">Nikita version 0.4 released - free software archive API server</a></div>
101 <div class="date">22nd May 2019</div>
102 <div class="body"><p>This morning, a new release of
103 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
104 Noark 5 core project</a> was
105 <a href="https://lists.nuug.no/pipermail/nikita-noark/2019-May/000468.html">announced
106 on the project mailing list</a>. The Nikita free software solution is
107 an implementation of the Norwegian archive standard Noark 5 used by
108 government offices in Norway. These were the changes in version 0.4
109 since version 0.3, see the email link above for links to a demo site:</p>
110
111 <ul>
112
113 <li>Roll out OData handling to all endpoints where applicable</li>
114 <li>Changed the relation key for "ny-journalpost" to the official one.</li>
115 <li>Better link generation on outgoing links.</li>
116 <li>Tidy up code and make code and approaches more consistent throughout
117 the codebase</li>
118 <li>Update rels to be in compliance with updated version in the
119 interface standard</li>
120 <li>Avoid printing links on empty objects as they can't have links</li>
121 <li>Small bug fixes and improvements</li>
122 <li>Start moving generation of outgoing links to @Service layer so access
123 control can be used when generating links</li>
124 <li>Log exception that was being swallowed so it's traceable</li>
125 <li>Fix name mapping problem</li>
126 <li>Update templated printing so templated should only be printed if it
127 is set true. Requires more work to roll out across entire
128 application.</li>
129 <li>Remove Record->DocumentObject as per domain model of n5v4</li>
130 <li>Add ability to delete lists filtered with OData</li>
131 <li>Return NO_CONTENT (204) on delete as per interface standard</li>
132 <li>Introduce support for ConstraintViolationException exception</li>
133 <li>Make Service classes extend NoarkService</li>
134 <li>Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
135 X-Forwarded-Port</li>
136 <li>Update CorrespondencePart* code to be more in line with Single
137 Responsibility Principle</li>
138 <li>Make package name follow directory structure</li>
139 <li>Make sure Document number starts at 1, not 0</li>
140 <li>Fix isues discovered by FindBugs</li>
141 <li>Update from Date to ZonedDateTime</li>
142 <li>Fix wrong tablename</li>
143 <li>Introduce Service layer tests</li>
144 <li>Improvements to CorrespondencePart</li>
145 <li>Continued work on Class / Classificationsystem</li>
146 <li>Fix feature where authors were stored as storageLocations</li>
147 <li>Update HQL builder for OData</li>
148 <li>Update OData search capability from webpage</li>
149
150 </ul>
151
152 <p>If free and open standardized archiving API sound interesting to
153 you, please contact us on IRC
154 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
155 irc.freenode.net</a>) or email
156 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
157 mailing list</a>).</p>
158
159 <p>As usual, if you use Bitcoin and want to show your support of my
160 activities, please send Bitcoin donations to my address
161 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
162 </div>
163 <div class="tags">
164
165
166 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
167
168
169 </div>
170 </div>
171 <div class="padding"></div>
172
173 <div class="entry">
174 <div class="title"><a href="http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html">MIME type "text/vnd.sosi" for SOSI map data</a></div>
175 <div class="date">20th May 2019</div>
176 <div class="body"><p>As part of my involvement in the work to
177 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">standardise
178 a REST based API for Noark 5</a>, the Norwegian archiving standard, I
179 spent some time the last few months to try to register a
180 <a href="https://www.iana.org/assignments/media-types/">MIME type</a>
181 and <a href="https://www.nationalarchives.gov.uk/PRONOM/">PRONOM
182 code</a> for the SOSI file format. The background is that there is a
183 set of formats approved for long term storage and archiving in Norway,
184 and among these formats, SOSI is the only format missing a MIME type
185 and PRONOM code.</p>
186
187 <p>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
188 Samordnet Opplegg for Stedfestet Informasjon (literally "Coordinated
189 Approach for Spatial Information", but more commonly expanded in
190 English to Systematic Organization of Spatial Information). It is a
191 text based file format for geo-spatial vector information used in
192 Norway. Information about the SOSI format can be found in English
193 from <a href="https://en.wikipedia.org/wiki/SOSI">Wikipedia</a>. The
194 specification is available in Norwegian from
195 <a href="https://www.kartverket.no/geodataarbeid/Standarder/SOSI/">the
196 Norwegian mapping authority</a>. The SOSI standard, which originated
197 in the beginning of nineteen eighties, was the inspiration and formed the
198 basis for the XML based
199 <a href="https://en.wikipedia.org/wiki/Geography_Markup_Language">Geography
200 Markup Language</a>.</p>
201
202 <p>I have so far written
203 <a href="https://github.com/file/file/pull/67">a pattern matching
204 rule</a> for the file(1) unix tool to recognize SOSI files, submitted
205 a request to the PRONOM project to have a PRONOM ID assigned to the
206 format (reference TNA1555078202S60), and today send a request to IANA
207 to register the "text/vnd.sosi" MIME type for this format (referanse
208 <a href="https://tools.iana.org/public-view/viewticket/1143144">IANA
209 #1143144</a>). If all goes well, in a few months, anyone implementing
210 the Noark 5 Tjenestegrensesnitt API spesification should be able to
211 use an official MIME type and PRONOM code for SOSI files. In
212 addition, anyone using SOSI files on Linux should be able to
213 automatically recognise the format and web sites handing out SOSI
214 files can begin providing a more specific MIME type. So far, SOSI
215 files has been handed out from web sites using the
216 "application/octet-stream" MIME type, which is just a nice way of
217 stating "I do not know". Soon, we will know. :)</p>
218
219 <p>As usual, if you use Bitcoin and want to show your support of my
220 activities, please send Bitcoin donations to my address
221 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
222 </div>
223 <div class="tags">
224
225
226 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/kart">kart</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
227
228
229 </div>
230 </div>
231 <div class="padding"></div>
232
233 <div class="entry">
234 <div class="title"><a href="http://people.skolelinux.org/pere/blog/PlantUML_for_text_based_UML_diagram_modelling___nice_free_software.html">PlantUML for text based UML diagram modelling - nice free software</a></div>
235 <div class="date">25th March 2019</div>
236 <div class="body"><p>As part of my involvement with the
237 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
238 Noark 5 core project</a>, I have been proposing improvements to the
239 API specification created by <a href="https://www.arkivverket.no/">The
240 National Archives of Norway</a> and helped migrating the text from a
241 version control system unfriendly binary format (docx) to Markdown in
242 git. Combined with the migration to a public git repository (on
243 github), this has made it possible for anyone to suggest improvement
244 to the text.</p>
245
246 <p>The specification is filled with UML diagrams. I believe the
247 original diagrams were modelled using Sparx Systems Enterprise
248 Architect, and exported as EMF files for import into docx. This
249 approach make it very hard to track changes using a version control
250 system. To improve the situation I have been looking for a good text
251 based UML format with associated command line free software tools on
252 Linux and Windows, to allow anyone to send in corrections to the UML
253 diagrams in the specification. The tool must be text based to work
254 with git, and command line to be able to run it automatically to
255 generate the diagram images. Finally, it must be free software to
256 allow anyone, even those that can not accept a non-free software
257 license, to contribute.</p>
258
259 <p>I did not know much about free software UML modelling tools when I
260 started. I have used dia and inkscape for simple modelling in the
261 past, but neither are available on Windows, as far as I could tell. I
262 came across a nice
263 <a href="https://modeling-languages.com/text-uml-tools-complete-list/">list
264 of text mode uml tools</a>, and tested out a few of the tools listed
265 there. <a href="http://plantuml.com/">The PlantUML tool</a> seemed
266 most promising. After verifying that the packages
267 <a href="https://tracker.debian.org/pkg/plantuml">is available in
268 Debian</a> and found <a href="https://github.com/plantuml/plantuml">its
269 Java source</a> under a GPL license on github, I set out to test if it
270 could represent the diagrams we needed, ie the ones currently in
271 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
272 Noark 5 Tjenestegrensesnitt specification</a>. I am happy to report
273 that it could represent them, even thought it have a few warts here
274 and there.</p>
275
276 <p>After a few days of modelling I completed the task this weekend. A
277 temporary link to the complete set of diagrams (original and from
278 PlantUML) is available in
279 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/76">the
280 github issue discussing the need for a text based UML format</a>, but
281 please note I lack a sensible tool to convert EMF files to PNGs, so
282 the "original" rendering is not as good as the original was in the
283 publised PDF.</p>
284
285 <p>Here is an example UML diagram, showing the core classes for
286 keeping metadata about archived documents:</p>
287
288 <pre>
289 @startuml
290 skinparam classAttributeIconSize 0
291
292 !include media/uml-class-arkivskaper.iuml
293 !include media/uml-class-arkiv.iuml
294 !include media/uml-class-klassifikasjonssystem.iuml
295 !include media/uml-class-klasse.iuml
296 !include media/uml-class-arkivdel.iuml
297 !include media/uml-class-mappe.iuml
298 !include media/uml-class-merknad.iuml
299 !include media/uml-class-registrering.iuml
300 !include media/uml-class-basisregistrering.iuml
301 !include media/uml-class-dokumentbeskrivelse.iuml
302 !include media/uml-class-dokumentobjekt.iuml
303 !include media/uml-class-konvertering.iuml
304 !include media/uml-datatype-elektronisksignatur.iuml
305
306 Arkivstruktur.Arkivskaper "+arkivskaper 1..*" <-o "+arkiv 0..*" Arkivstruktur.Arkiv
307 Arkivstruktur.Arkiv o--> "+underarkiv 0..*" Arkivstruktur.Arkiv
308 Arkivstruktur.Arkiv "+arkiv 1" o--> "+arkivdel 0..*" Arkivstruktur.Arkivdel
309 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" <--o "+arkivdel 1..*" Arkivstruktur.Arkivdel
310 Arkivstruktur.Klassifikasjonssystem "+klassifikasjonssystem [0..1]" o--> "+klasse 0..*" Arkivstruktur.Klasse
311 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
312 Arkivstruktur.Arkivdel "+arkivdel 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
313 Arkivstruktur.Klasse "+klasse 0..1" o--> "+mappe 0..*" Arkivstruktur.Mappe
314 Arkivstruktur.Klasse "+klasse 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
315 Arkivstruktur.Mappe --> "+undermappe 0..*" Arkivstruktur.Mappe
316 Arkivstruktur.Mappe "+mappe 0..1" o--> "+registrering 0..*" Arkivstruktur.Registrering
317 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Mappe
318 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Dokumentbeskrivelse
319 Arkivstruktur.Basisregistrering -|> Arkivstruktur.Registrering
320 Arkivstruktur.Merknad "+merknad 0..*" <--* Arkivstruktur.Basisregistrering
321 Arkivstruktur.Registrering "+registrering 1..*" o--> "+dokumentbeskrivelse 0..*" Arkivstruktur.Dokumentbeskrivelse
322 Arkivstruktur.Dokumentbeskrivelse "+dokumentbeskrivelse 1" o-> "+dokumentobjekt 0..*" Arkivstruktur.Dokumentobjekt
323 Arkivstruktur.Dokumentobjekt *-> "+konvertering 0..*" Arkivstruktur.Konvertering
324 Arkivstruktur.ElektroniskSignatur -[hidden]-> Arkivstruktur.Dokumentobjekt
325 @enduml
326 </pre>
327
328 <p><a href="http://plantuml.com/class-diagram">The format</a> is quite
329 compact, with little redundant information. The text expresses
330 entities and relations, and there is little layout related fluff. One
331 can reuse content by using include files, allowing for consistent
332 naming across several diagrams. The include files can be standalone
333 PlantUML too. Here is the content of
334 <tt>media/uml-class-arkivskaper.iuml<tt>:</p>
335
336 <pre>
337 @startuml
338 class Arkivstruktur.Arkivskaper <Arkivenhet> {
339 +arkivskaperID : string
340 +arkivskaperNavn : string
341 +beskrivelse : string [0..1]
342 }
343 @enduml
344 </pre>
345
346 <p>This is what the complete diagram for the PlantUML notation above
347 look like:</p>
348
349 <p><img width="80%" src="http://people.skolelinux.org/pere/blog/images/2019-03-25-noark5-plantuml-diagrameksempel.png"></p>
350
351 <p>A cool feature of PlantUML is that the generated PNG files include
352 the entire original source diagram as text. The source (with include
353 statements expanded) can be extracted using for example
354 <tt>exiftool</tt>. Another cool feature is that parts of the entities
355 can be hidden after inclusion. This allow to use include files with
356 all attributes listed, even for UML diagrams that should not list any
357 attributes.</p>
358
359 <p>The diagram also show some of the warts. Some times the layout
360 engine place text labels on top of each other, and some times it place
361 the class boxes too close to each other, not leaving room for the
362 labels on the relationship arrows. The former can be worked around by
363 placing extra newlines in the labes (ie "\n"). I did not do it here
364 to be able to demonstrate the issue. I have not found a good way
365 around the latter, so I normally try to reduce the problem by changing
366 from vertical to horizontal links to improve the layout.</p>
367
368 <p>All in all, I am quite happy with PlantUML, and very impressed with
369 how quickly its lead developer responds to questions. So far I got an
370 answer to my questions in a few hours when I send an email. I
371 definitely recommend looking at PlantUML if you need to make UML
372 diagrams. Note, PlantUML can draw a lot more than class relations.
373 Check out the documention for a complete list. :)</p>
374
375 <p>As usual, if you use Bitcoin and want to show your support of my
376 activities, please send Bitcoin donations to my address
377 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
378 </div>
379 <div class="tags">
380
381
382 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
383
384
385 </div>
386 </div>
387 <div class="padding"></div>
388
389 <div class="entry">
390 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Release_0_3_of_free_software_archive_API_system_Nikita_announced.html">Release 0.3 of free software archive API system Nikita announced</a></div>
391 <div class="date">24th March 2019</div>
392 <div class="body"><p>Yesterday, a new release of
393 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
394 Noark 5 core project</a> was
395 <a href="https://lists.nuug.no/pipermail/nikita-noark/2019-March/000451.html">announced
396 on the project mailing list</a>. The free software solution is an
397 implementation of the Norwegian archive standard Noark 5 used by
398 government offices in Norway. These were the changes in version 0.3
399 since version 0.2.1 (from NEWS.md):</p>
400
401 <ul>
402 <li>Improved ClassificationSystem and Class behaviour.</li>
403 <li>Tidied up known inconsistencies between domain model and hateaos links.</li>
404 <li>Added experimental code for blockchain integration. </li>
405 <li>Make token expiry time configurable at upstart from properties file.</li>
406 <li>Continued work on OData search syntax.</li>
407 <li>Started work on pagination for entities, partly implemented for Saksmappe.</li>
408 <li>Finalise ClassifiedCode Metadata entity.</li>
409 <li>Implement mechanism to check if authentication token is still
410 valid. This allow the GUI to return a more sensible message to the
411 user if the token is expired.</li>
412 <li>Reintroduce browse.html page to allow user to browse JSON API using
413 hateoas links.</li>
414 <li>Fix bug in handling file/mappe sequence number. Year change was
415 not properly handled.</li>
416 <li>Update application yml files to be in sync with current development.</li>
417 <li>Stop 'converting' everything to PDF using libreoffice. Only
418 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
419 and ods.</li>
420 <li>Continued code style fixing, making code more readable.</li>
421 <li>Minor bug fixes.</li>
422
423 </ul>
424
425 <p>If free and open standardized archiving API sound interesting to
426 you, please contact us on IRC
427 (<a href="irc://irc.freenode.net/%23nikita">#nikita on
428 irc.freenode.net</a>) or email
429 (<a href="https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
430 mailing list</a>).</p>
431
432 <p>As usual, if you use Bitcoin and want to show your support of my
433 activities, please send Bitcoin donations to my address
434 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
435 </div>
436 <div class="tags">
437
438
439 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
440
441
442 </div>
443 </div>
444 <div class="padding"></div>
445
446 <div class="entry">
447 <div class="title"><a href="http://people.skolelinux.org/pere/blog/_pen_og_gjennomsiktig_vedlikehold_av_spesifikasjonen_for_Noark_5_Tjenestegrensesnitt.html">Åpen og gjennomsiktig vedlikehold av spesifikasjonen for Noark 5 Tjenestegrensesnitt</a></div>
448 <div class="date">11th March 2019</div>
449 <div class="body"><p>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
450 finne informasjonen en trenger når en trenger det, og der
451 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
452 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
453 vare på offentliggjort informasjon som er tilgjengelig flere steder,
454 tar et arkiv vare på virksomhetsintern og til tider personlig
455 informasjon som ofte kun er tilgjengelig fra et sted.</p>
456
457 <p>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
458 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
459 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
460 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
461 vekk det en ikke vil ta vare på, og legge på metadata om det som er
462 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
463 arkivet er en del av daglig virke, ikke at det er siste hvilested for
464 informasjon ingen lenger har daglig bruk for. For å kunne være en del
465 av det daglige virket må arkivet enkelt kunne integreres med andre
466 systemer. I disse dager betyr det å tilby arkivet som en
467 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
468 og datamaskiner. Det betyr i tur å både tilby nettsider og et
469 maskinlesbart grensesnitt.</p>
470
471 <p>For noen år siden erkjente visjonære arkivarer fordelene med et
472 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
473 gikk igang med å lage noe de kalte
474 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">Noark
475 5 Tjenestegrensesnitt</a>. Gjort riktig, så åpner slike maskinlesbare
476 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
477 Gjort feil, vil det blokkere for samvirke og bidra til
478 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
479 klart og entydig beskrevet i en spesifikasjon som gjør at
480 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
481 og uavhengig av hvem som tar den i bruk.</p>
482
483 <p>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
484 trengs for å kunne få en fri og åpen standard (se
485 <a href="http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html">Digistan-definisjon</a>),
486 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
487 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
488 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
489 En trenger også automatiserte datasystemer som måler og sjekker at et
490 gitt grensesnitt fungerer i tråd med spesifikasjonen.</p>
491
492 <p>For Noark 5 Tjenestegrensesnittet er det nå etablert en slik åpen
493 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
494 inngangsporten består først og fremst av en åpen portal som lar enhver
495 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
496 det hører også med et åpent &quot;diskusjonsforum&quot; der en kan
497 komme med endringsforslag og forespørsler om klargjøringer. Alle
498 registrerte brukere på github kan bidra med innspill til disse
499 henvendelsene.</p>
500
501 <p>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
502 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
503 inn historikk for endringer i teksten de siste årene, samt lagt inn
504 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
505 for at jeg bidro med dette er at jeg er involvert i
506 <a href="https://gitlab.com/OsloMet-ABI/nikita-noark5-core">Nikita-prosjektet</a>,
507 som lager en fri programvare-utgave av Noark 5 Tjenestegrensesnitt.
508 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
509 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
510 å sikre samhandling.</p>
511
512 <p>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
513 format egnet for versjonskontroll via versjontrollsystemet git. Dette
514 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
515 samt gjør det praktisk mulig for enhver med github-konto å sende inn
516 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
517 tekstformatet vises frem som nettsider på github, slik at en ikke
518 trenger spesielle verktøy for å se på siste utgave av
519 spesifikasjonen.</p>
520
521 <p>Fra dette rene tekstformatet kan det så avledes ulike formater, som
522 HTML for websider, PDF for utskrift på papir og ePub for lesing med
523 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
524 verktøyene pandoc, latex, docbook-xsl og GNU make til
525 transformasjonen. Tekstformatet som brukes dag er
526 <a href="https://www.markdownguide.org/">Markdown</a>, men det vurderes
527 å
528 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/9">endre
529 til formatet RST</a> i fremtiden for bedre styring av utseende på
530 PDF-utgaven.</p>
531
532 <p>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
533 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
534 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
535 Github i andre sammenhenger.</p>
536
537 <p>Enkle endringer i teksten kan gjøres av priviligerte brukere
538 direkte i nettsidene til Github, ved å finne aktuell fil som skal
539 endres (f.eks. kapitler/03-konformitet.md), klikke på den lille
540 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
541 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
542 så må endringen &quot;sjekkes inn&quot; i historikken. Det gjøres ved
543 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
544 trengs, ikke hva som er endret), under overskriften &quot;Commit
545 changes&quot;. En kan og bør legge inn en lengre forklaring i det
546 større skrivefeltet, før en velger om endringen skal sendes direkte
547 til 'master'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
548 om en skal lage en ny gren for denne endringen og opprette en
549 endringsforespørsel (aka &quot;Pull Request&quot;/PR). Når alt dette
550 er gjort kan en velge &quot;Commit changes&quot; for å sende inn
551 endringen. Hvis den er lagt inn i &quot;master&quot;-grenen så er den
552 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
553 en endringsforespørsel, så legges den inn i
554 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls">listen
555 over forslag til endringer</a> som venter på korrekturlesing og
556 godkjenning.</p>
557
558 <p>Større endringer (for eksempel samtidig endringer i flere filer)
559 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
560 endringene der før endringsforslaget sendes inn. Denne prosessen er
561 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
562 &quot;klones&quot; er
563 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/</a>.</p>
564
565 <p>For å registrere nye utfordringer (issues) eller kommentere på
566 eksisterende utfordringer benyttes nettsiden
567 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues</a>.
568 I skrivende stund er det 48 åpne og 11 avsluttede utfordringer. Et
569 forslag til hva som bør være med når en beskriver en utfordring er
570 tilgjengelig som utfordring
571 <a href="https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/14">#14</a>.</p>
572
573 <p>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
574 Debian GNU/Linux-maskin med en rekke programpakker installert. Når
575 dette er på plass, så holder det å kjøre kommandoen 'make pdf html' på
576 kommandolinjen, vente ca. 20 sekunder, før spesifikasjon.pdf og
577 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
578 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
579 MacOSX.</p>
580
581 <p>Github bidrar med rammeverket. Men for at åpent vedlikehold av
582 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
583 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
584 godkjenne forslag til endringer, men det blir størst suksess hvis alle
585 som bruker og lager systemer basert på Noark 5 Tjenestegrensesnitt
586 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
587 stiller. Blir du med?</p>
588
589 <p>Det er viktig å legge til rette for åpen diskusjon blant alle
590 interesserte, som ikke krever at en må godta lange kontrakter med
591 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
592 laget en IRC-kanal der interesserte enkelt kan orientere seg og
593 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
594 innom
595 <a href="https://webchat.freenode.net/?channels=nikita">#nikita</a>
596 (f.eks. via irc.freenode.net) for å møte likesinnede.</p>
597
598 <p>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
599 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
600 tjenestegrensesnitt følger (min) forståelse av
601 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
602 opp til et Noark 5v4 REST-tjeneste og tester alt den finner for å se
603 om det er i henhold til min tolkning av spesifikasjonen. Dette
604 verktøyet er tilgjengelig fra
605 <a href="https://github.com/petterreinholdtsen/noark5-tester">https://github.com/petterreinholdtsen/noark5-tester</a>,
606 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
607 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
608 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
609 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
610 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
611 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
612 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
613 spesifikasjonsteksten enda klarere og bedre.</p>
614
615 <p>Dagens beskrivelse av Noark 5 Tjenestegrensesnitt er et svært godt
616 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
617 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
618 enda bedre?</p>
619 </div>
620 <div class="tags">
621
622
623 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan</a>, <a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/standard">standard</a>.
624
625
626 </div>
627 </div>
628 <div class="padding"></div>
629
630 <div class="entry">
631 <div class="title"><a href="http://people.skolelinux.org/pere/blog/D_rlig_med_sikkerhetsoppdateringer_for_Ruters_billettautomater_i_Oslo_.html">Dårlig med sikkerhetsoppdateringer for Ruters billettautomater i Oslo?</a></div>
632 <div class="date">13th February 2019</div>
633 <div class="body"><p><a href="http://people.skolelinux.org/pere/blog/Er_billettautomatene_til_kollektivtrafikken_i_Oslo_uten_sikkerhetsoppdateringer_.html">For
634 syv år siden</a> oppdaget jeg at billettautomater for
635 kollektivtrafikken i Oslo kjørte
636 <a href="http://en.wikipedia.org/wiki/Windows_2000">Windows 2000
637 Professional</a>. Operativsystemet har ikke fått sikkerhetsfikser fra
638 Microsoft siden 2010-07-13 i følge dem selv. Den samme versjonen av
639 operativsystemet var i bruk
640 <a href="http://people.skolelinux.org/pere/blog/Fortsatt_ingen_sikkerhetsoppdateringer_for_billettautomatene_til_kollektivtrafikken_i_Oslo_.html">for
641 to og et halvt år siden</a>, og jammen er det ikke også i bruk den dag
642 i dag:</p>
643
644 <p align="center"><a href="http://people.skolelinux.org/pere/blog/images/2019-02-13-ruter-win2000pro.jpeg"><img width="40%" src="http://people.skolelinux.org/pere/blog/images/2019-02-13-ruter-win2000pro.jpeg" alt="[Bilde av Ruters billettautomat med Windows 2000-feilmelding]"></a></p>
645
646 <p>Bildet er tatt i dag av Kirill Miazine og tilgjengelig for bruk med
647 bruksvilkårene til
648 <a href="http://creativecommons.org/licenses/by/4.0/">Creative
649 Commons Attribution 4.0 International (CC BY 4.0)</a>.</p>
650
651 <p>Kanskje det hadde vært
652 <a href="https://www.aftenposten.no/osloby/i/awqgO/Her-kjorer-du-gratis-trikk-og-buss">bedre
653 med gratis kollektivtrafikk</A>, slik at vi slapp å stole på
654 datakompetansen til Ruter for å verne våre privatliv samt holde
655 personopplysninger og betalingsinformasjon unna uvedkommende. Eneste
656 måten å sikre at hvor en befinner seg ikke kan hentes ut fra Ruters
657 systemer er å betale enkeltbilletter med kontanter. Jeg vet at Ruter
658 har en god historie om hvor personvernvennlige mobil-app og
659 RFID-kortene er, men den historien er ikke mulig å uavhengig
660 kontrollere uten priviligert tilgang til interne system og blir dermed
661 bare nok en god historie basert på tillit til de som forteller
662 historien. Det er ikke slik en sikrer privatsfæren. Det gjør en ved
663 å sikre at det ikke (kan) registreres informasjon om ens person.</p>
664
665 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
666 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
667 til min adresse
668 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
669 Merk, betaling med bitcoin er ikke anonymt. :)</p>
670 </div>
671 <div class="tags">
672
673
674 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter</a>.
675
676
677 </div>
678 </div>
679 <div class="padding"></div>
680
681 <div class="entry">
682 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Stortinget_vedtar_maskinlesbart_register_over_20__av_selskapseierne_i_Norge.html">Stortinget vedtar maskinlesbart register over 20% av selskapseierne i Norge</a></div>
683 <div class="date"> 7th February 2019</div>
684 <div class="body"><p>Jeg registrerer med glede at Stortinget i dag har
685 <a href="https://www.stortinget.no/no/Saker-og-publikasjoner/Saker/Sak/?p=72826">vedtatt
686 at det skal vedlikeholdes et åpent og maskinlesbart register over
687 reelle rettighetshavere i Norge</a>. Her kan en kanskje få et
688 register som kan brukes til å analysere eierskap og kontroll i Norge
689 maskinelt og knytte det til internasjonale databaser som
690 <a href="https://opencorporates.com/">OpenCorporates</a>. Det liker
691 jeg.</p>
692
693 <p>Den vedtatte grense på 25 prosents eierandel fikk stor
694 oppmerksomhet i debatten. Jeg ser fra enkel analyse av skatteetatens
695 eierskapsregister at 80.4% av alle selskapseiere i registeret har
696 mindre enn 25% eierandel, mot 73.8% som har mindre enn 5% eierandel.
697 En grense på 25% vil altså utelukke 80.4% av selskapseierne fra det
698 vedtatte registeret, og en grense på 5% vil skjule 73.8%. En må helt
699 ned i registrering av eierandeler over circa 0.002% for å få mer enn
700 halvparten av selskapseierne i Norge. Mon tro hvor langt ned en må i
701 eierprosent for å få med alle eierskapene til politisk valgte
702 representanter?</p>
703
704 <p>Jeg biter meg også merke i at Sivert Bjørnstad fra FrP
705 tilsynelatende tror at aksjonærregisteret er et eksisterende åpent
706 register, på tross av at det så vidt jeg vet kun deles ved personlig
707 oppmøte hos skatteetaten og ikke er tilgjengelig i maskinlesbart
708 format for enhver, og dermed så langt ikke er importert inn i
709 OpenCorporates. Det anser jeg ikke for et spesielt åpent register.
710 Debatten ga ellers lite håp om at situasjonen bedrer seg, da
711 finansministeren bare henviste til en fraværende næringsministeren og
712 ikke ville uttale seg om et skikkelig aksjonærregister snart dukker
713 opp.</p>
714
715 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
716 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
717 til min adresse
718 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
719 Merk, betaling med bitcoin er ikke anonymt. :)</p>
720 </div>
721 <div class="tags">
722
723
724 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn</a>.
725
726
727 </div>
728 </div>
729 <div class="padding"></div>
730
731 <div class="entry">
732 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Websocket_from_Kraken_in_Valutakrambod.html">Websocket from Kraken in Valutakrambod</a></div>
733 <div class="date"> 1st February 2019</div>
734 <div class="body"><p>Yesterday, the Kraken virtual currency exchange announced
735 <a href="https://blog.kraken.com/post/2019/websockets-public-api-launching-soon/">their
736 Websocket service</a>, providing a stream of exchange updates to its
737 clients. Getting updated rates quickly is a good idea, so I used
738 their <a href="https://www.kraken.com/en-us/help/websocket-api">API
739 documentation</a> and added Websocket support to the Kraken service in
740 Valutakrambod today. The python library can now get updates
741 from Kraken several times per second, instead of every time the
742 information is polled from the REST API.</p>
743
744 <p>If this sound interesting to you, the code for valutakrambod is
745 available from
746 <a href="http://github.com/petterreinholdtsen/valutakrambod">github</a>.
747 Here is example output from the example client displaying rates in a
748 curses view:</p>
749
750 <p><blockquote><pre>
751 Name Pair Bid Ask Spr Ftcd Age
752 BitcoinsNorway BTCEUR 2959.2800 3021.0500 2.0% 36 nan nan
753 Bitfinex BTCEUR 3087.9000 3088.0000 0.0% 36 37 nan
754 Bitmynt BTCEUR 3001.8700 3135.4600 4.3% 36 52 nan
755 Bitpay BTCEUR 3003.8659 nan nan% 35 nan nan
756 Bitstamp BTCEUR 3008.0000 3010.2300 0.1% 0 1 1
757 Bl3p BTCEUR 3000.6700 3010.9300 0.3% 1 nan nan
758 Coinbase BTCEUR 2992.1800 3023.2500 1.0% 34 nan nan
759 Kraken+BTCEUR 3005.7000 3006.6000 0.0% 0 1 0
760 Paymium BTCEUR 2940.0100 2993.4400 1.8% 0 2688 nan
761 BitcoinsNorway BTCNOK 29000.0000 29360.7400 1.2% 36 nan nan
762 Bitmynt BTCNOK 29115.6400 29720.7500 2.0% 36 52 nan
763 Bitpay BTCNOK 29029.2512 nan nan% 36 nan nan
764 Coinbase BTCNOK 28927.6000 29218.5900 1.0% 35 nan nan
765 MiraiEx BTCNOK 29097.7000 29741.4200 2.2% 36 nan nan
766 BitcoinsNorway BTCUSD 3385.4200 3456.0900 2.0% 36 nan nan
767 Bitfinex BTCUSD 3538.5000 3538.6000 0.0% 36 45 nan
768 Bitpay BTCUSD 3443.4600 nan nan% 34 nan nan
769 Bitstamp BTCUSD 3443.0100 3445.0500 0.1% 0 2 1
770 Coinbase BTCUSD 3428.1600 3462.6300 1.0% 33 nan nan
771 Gemini BTCUSD 3445.8800 3445.8900 0.0% 36 326 nan
772 Hitbtc BTCUSD 3473.4700 3473.0700 -0.0% 0 0 0
773 Kraken+BTCUSD 3444.4000 3445.6000 0.0% 0 1 0
774 Exchangerates EURNOK 9.6685 9.6685 0.0% 36 22226 nan
775 Norgesbank EURNOK 9.6685 9.6685 0.0% 36 22226 nan
776 Bitstamp EURUSD 1.1440 1.1462 0.2% 0 1 2
777 Exchangerates EURUSD 1.1471 1.1471 0.0% 36 22226 nan
778 BitcoinsNorway LTCEUR 1.0009 22.6538 95.6% 35 nan nan
779 BitcoinsNorway LTCNOK 259.0900 264.9300 2.2% 35 nan nan
780 BitcoinsNorway LTCUSD 0.0000 29.0000 100.0% 35 nan nan
781 Norgesbank USDNOK 8.4286 8.4286 0.0% 36 22226 nan
782 </pre></blockquote></p>
783
784 <p>Yes, I notice the strange negative spread on Hitbtc. I've seen the
785 same on Kraken. Another strange observation is that Kraken some times
786 announce trade orders a fraction of a second in the future. I really
787 wonder what is going on there.</p>
788
789 <p>As usual, if you use Bitcoin and want to show your support of my
790 activities, please send Bitcoin donations to my address
791 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
792 </div>
793 <div class="tags">
794
795
796 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>.
797
798
799 </div>
800 </div>
801 <div class="padding"></div>
802
803 <div class="entry">
804 <div class="title"><a href="http://people.skolelinux.org/pere/blog/Strategispillet_Unknown_Horizons_n__tilgjengelig_p__bokm_l.html">Strategispillet Unknown Horizons nå tilgjengelig på bokmål</a></div>
805 <div class="date">23rd January 2019</div>
806 <div class="body"><p>I høst ble jeg inspirert til å bidra til oversettelsen av
807 <a href="http://unknown-horizons.org/">strategispillet Unknown
808 Horizons</a>, og oversatte de nesten 200 strengene i prosjektet til
809 bokmål. Deretter har jeg gått å ventet på at det kom en ny utgave som
810 inneholdt disse oversettelsene. Nå er endelig ventetiden over. Den
811 nye versjonen kom på nyåret, og ble
812 <a href="https://tracker.debian.org/pkg/unknown-horizons">lastet opp i
813 Debian</a> for noen få dager siden. I går kveld fikk jeg testet det ut, og
814 må innrømme at oversettelsene fungerer fint. Fant noen få tekster som
815 måtte justeres, men ikke noe alvorlig. Har oppdatert
816 <a href="https://hosted.weblate.org/projects/uh/">oversettelsen på
817 Weblate</a>, slik at neste utgave vil være enda bedre. :)</p>
818
819 <p>Spillet er et ressursstyringsspill ala Civilization, og er morsomt
820 å spille for oss som liker slikt. :)</p>
821
822 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
823 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
824 til min adresse
825 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.
826 Merk, betaling med bitcoin er ikke anonymt. :)</p>
827 </div>
828 <div class="tags">
829
830
831 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.
832
833
834 </div>
835 </div>
836 <div class="padding"></div>
837
838 <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>
839 <div id="sidebar">
840
841
842
843 <h2>Archive</h2>
844 <ul>
845
846 <li>2019
847 <ul>
848
849 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
850
851 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
852
853 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
854
855 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
856
857 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/06/">June (1)</a></li>
858
859 </ul></li>
860
861 <li>2018
862 <ul>
863
864 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
865
866 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
867
868 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
869
870 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
871
872 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
873
874 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
875
876 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
877
878 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
879
880 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
881
882 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
883
884 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
885
886 </ul></li>
887
888 <li>2017
889 <ul>
890
891 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
892
893 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
894
895 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
896
897 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
898
899 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
900
901 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
902
903 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
904
905 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
906
907 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
908
909 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
910
911 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
912
913 </ul></li>
914
915 <li>2016
916 <ul>
917
918 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
919
920 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
921
922 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
923
924 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
925
926 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
927
928 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
929
930 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
931
932 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
933
934 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
935
936 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
937
938 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
939
940 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
941
942 </ul></li>
943
944 <li>2015
945 <ul>
946
947 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
948
949 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
950
951 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
952
953 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
954
955 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
956
957 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
958
959 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
960
961 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
962
963 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
964
965 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
966
967 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
968
969 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
970
971 </ul></li>
972
973 <li>2014
974 <ul>
975
976 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
977
978 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
979
980 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
981
982 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
983
984 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
985
986 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
987
988 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
989
990 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
991
992 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
993
994 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
995
996 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
997
998 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
999
1000 </ul></li>
1001
1002 <li>2013
1003 <ul>
1004
1005 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
1006
1007 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
1008
1009 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
1010
1011 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
1012
1013 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
1014
1015 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
1016
1017 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
1018
1019 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
1020
1021 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
1022
1023 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
1024
1025 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
1026
1027 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
1028
1029 </ul></li>
1030
1031 <li>2012
1032 <ul>
1033
1034 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
1035
1036 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
1037
1038 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
1039
1040 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
1041
1042 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
1043
1044 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
1045
1046 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
1047
1048 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
1049
1050 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
1051
1052 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
1053
1054 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
1055
1056 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
1057
1058 </ul></li>
1059
1060 <li>2011
1061 <ul>
1062
1063 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
1064
1065 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
1066
1067 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
1068
1069 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
1070
1071 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
1072
1073 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
1074
1075 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
1076
1077 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
1078
1079 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
1080
1081 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
1082
1083 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
1084
1085 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
1086
1087 </ul></li>
1088
1089 <li>2010
1090 <ul>
1091
1092 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
1093
1094 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
1095
1096 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
1097
1098 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
1099
1100 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
1101
1102 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
1103
1104 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
1105
1106 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
1107
1108 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
1109
1110 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
1111
1112 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
1113
1114 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
1115
1116 </ul></li>
1117
1118 <li>2009
1119 <ul>
1120
1121 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
1122
1123 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
1124
1125 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
1126
1127 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
1128
1129 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
1130
1131 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
1132
1133 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
1134
1135 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
1136
1137 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
1138
1139 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
1140
1141 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
1142
1143 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
1144
1145 </ul></li>
1146
1147 <li>2008
1148 <ul>
1149
1150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
1151
1152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
1153
1154 </ul></li>
1155
1156 </ul>
1157
1158
1159
1160 <h2>Tags</h2>
1161 <ul>
1162
1163 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
1164
1165 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
1166
1167 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
1168
1169 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
1170
1171 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (8)</a></li>
1172
1173 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (11)</a></li>
1174
1175 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
1176
1177 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
1178
1179 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
1180
1181 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (167)</a></li>
1182
1183 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (158)</a></li>
1184
1185 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (4)</a></li>
1186
1187 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
1188
1189 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
1190
1191 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (25)</a></li>
1192
1193 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
1194
1195 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (403)</a></li>
1196
1197 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
1198
1199 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
1200
1201 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (33)</a></li>
1202
1203 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
1204
1205 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
1206
1207 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
1208
1209 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (42)</a></li>
1210
1211 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
1212
1213 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (21)</a></li>
1214
1215 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
1216
1217 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
1218
1219 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
1220
1221 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
1222
1223 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
1224
1225 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
1226
1227 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
1228
1229 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
1230
1231 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (12)</a></li>
1232
1233 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (14)</a></li>
1234
1235 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (305)</a></li>
1236
1237 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (195)</a></li>
1238
1239 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (37)</a></li>
1240
1241 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
1242
1243 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (73)</a></li>
1244
1245 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (108)</a></li>
1246
1247 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
1248
1249 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
1250
1251 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
1252
1253 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
1254
1255 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (12)</a></li>
1256
1257 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
1258
1259 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
1260
1261 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
1262
1263 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (55)</a></li>
1264
1265 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
1266
1267 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
1268
1269 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (63)</a></li>
1270
1271 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (6)</a></li>
1272
1273 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
1274
1275 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (55)</a></li>
1276
1277 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (4)</a></li>
1278
1279 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
1280
1281 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
1282
1283 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (15)</a></li>
1284
1285 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (73)</a></li>
1286
1287 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
1288
1289 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
1290
1291 </ul>
1292
1293
1294 </div>
1295 <p style="text-align: right">
1296 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
1297 </p>
1298
1299 </body>
1300 </html>