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">
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" />
14 <a href=
"http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/More_sales_number_for_my_Free_Culture_paper_editions__2019_edition_.html">More sales number for my Free Culture paper editions (
2019-edition)
</a></div>
24 <div class=
"date">11th June
2019</div>
25 <div class=
"body"><p>The first book I published,
26 <a href=
"http://www.free-culture.cc/">Free Culture by Lawrence
27 Lessig
</a>, is still selling a few copies. Not a lot, but enough to
28 have contributed slightly over $
500 to the
<a
29 href=
"https://creativecommons.org/">Creative Commons Corporation
</a>
30 so far. Most books are still sold via Amazon (
83), with Ingram second
31 (
49) and Lulu (
12) and Machette (
7) as minor channels. Bying directly
32 from Lulu bring the largest cut to Creative Commons. The English
33 Edition sold
80 copies so far, the French
59 copies, and Norwegian
34 only
8 copies. Nothing impressive, but nice to see the work we put
35 down is still being appreciated. The ebook edition is available for
36 free from
<a href=
"https://github.com/petterreinholdtsen/free-culture-lessig">Github
</a>.
</p>
39 <tr><th rowspan=
"2" valign=
"bottom">Title / language
</th>
40 <th colspan=
"7">Quantity
</th></tr>
52 <td><a href=
"http://www.lulu.com/shop/lawrence-lessig/culture-libre/paperback/product-22645082.html">Culture Libre / French
</a></td>
53 <td align=
"right">3</td>
54 <td align=
"right">6</td>
55 <td align=
"right">19</td>
56 <td align=
"right">11</td>
57 <td align=
"right">7</td>
58 <td align=
"right">6</td>
59 <td align=
"right">7</td>
63 <td><a href=
"http://www.lulu.com/shop/lawrence-lessig/fri-kultur/paperback/product-22441576.html">Fri kultur / Norwegian
</a></td>
64 <td align=
"right">7</td>
65 <td align=
"right">1</td>
66 <td align=
"right">0</td>
67 <td align=
"right">0</td>
68 <td align=
"right">0</td>
69 <td align=
"right">0</td>
70 <td align=
"right">0</td>
74 <td><a href=
"http://www.lulu.com/shop/lawrence-lessig/free-culture/paperback/product-22440520.html">Free Culture / English
</a></td>
75 <td align=
"right">14</td>
76 <td align=
"right">27</td>
77 <td align=
"right">16</td>
78 <td align=
"right">9</td>
79 <td align=
"right">3</td>
80 <td align=
"right">7</td>
81 <td align=
"right">3</td>
86 <td align=
"right">24</td>
87 <td align=
"right">34</td>
88 <td align=
"right">35</td>
89 <td align=
"right">20</td>
90 <td align=
"right">10</td>
91 <td align=
"right">13</td>
92 <td align=
"right">10</td>
97 <p>It is fun to see the French edition being more popular than the
100 <p>If you would like to translate and publish the book in your native
101 language, I would be happy to help make it happen. Please get in
107 Tags:
<a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/english">english
</a>,
<a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture
</a>.
112 <div class=
"padding"></div>
115 <div class=
"title"><a href=
"http://people.skolelinux.org/pere/blog/Official_MIME_type__text_vnd_sosi__for_SOSI_map_data.html">Official MIME type "text/vnd.sosi" for SOSI map data
</a></div>
116 <div class=
"date"> 4th June
2019</div>
117 <div class=
"body"><p>Just
15 days ago,
118 <ahref=
"http://people.skolelinux.org/pere/blog/MIME_type__text_vnd_sosi__for_SOSI_map_data.html">I
119 mentioned
</a> my submission to IANA to register an official MIME type
120 for the SOSI vector map format. This morning, just an hour ago, I was
122 <a href=
"https://www.iana.org/assignments/media-types/text/vnd.sosi">the
123 MIME type "text/vnd.sosi"
</a> is registered for this format. In
124 addition to this registration, my
125 <a href=
"https://github.com/file/file/blob/master/magic/Magdir/sosi">file(
1)
126 patch for a pattern matching rule for SOSI files
</a> has been accepted
127 into the official source of that program (pending a new release), and
128 I've been told by the team behind
129 <a href=
"https://www.nationalarchives.gov.uk/PRONOM/">PRONOM
</a> that
130 the SOSI format will be included in the next release of PRONOM, which
131 they plan to release this summer around July.
</p>
133 <p>I am very happy to see all of this fall into place, for use by
134 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
135 Noark
5 Tjenestegrensesnitt
</a> implementations.
</p>
137 <p>As usual, if you use Bitcoin and want to show your support of my
138 activities, please send Bitcoin donations to my address
139 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
144 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>.
149 <div class=
"padding"></div>
152 <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>
153 <div class=
"date"> 2nd June
2019</div>
154 <div class=
"body"><p>A while back a college and friend from Debian and the Skolelinux /
155 Debian Edu project approached me, asking if I knew someone that might
156 be interested in helping out with a technology project he was running
157 as a teacher at
<a href=
"https://www.ecolefrancodanoise.dk/">L'école
158 franco-danoise
</a> - the Danish-French school and kindergarden. The
159 kids were building robots, rovers. The story behind it is to build a
161 <a href=
"http://blog.ecolefrancodanoise.dk/first-week-on-the-dark-side">on
162 the dark side of the moon
</a>, and remote control it. As travel cost
163 was a bit high for the final destination, and they wanted to test the
164 concept first, he was looking for volunteers to host a rover for the
165 kids to control in a foreign country. I ended up volunteering as a
166 host, and last week the rover arrived. It took a while to arrive
167 after
<a href=
"http://blog.ecolefrancodanoise.dk/model-moms">it was
168 built and shipped
</a>, because of customs confusion. Luckily we were
169 able fix it quickly with help from my colleges at work.
</p>
171 <p>This is what it looked like when the rover arrived. Note the cute
172 eyes looking up on me from the wrapping
</p>
174 <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"/>
175 <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"/>
176 <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"/>
178 <p style=
"text-align:left">Once the robot arrived, we needed to track
179 down batteries and figure out how to build custom firmware for it with
180 the appropriate wifi settings. I asked a friend if I could get two
181 18650 batteries from his pile of Tesla batteries (he had them from the
182 wrack of a crashed Tesla), so now the rover is running on Tesla
186 <a href=
"https://gitlab.com/ecolefrancodanoise/arduino-efd/">the rover
187 firmware
</a> proved a bit harder, as the code did not work out of the
188 box with the Arduino IDE package in Debian Buster. I suspect this is
190 <a href=
"https://github.com/arduino/Arduino/pull/2703"> license problem
191 with arduino
</a> blocking Debian from upgrading to the latest version.
192 In the end we gave up debugging why the IDE failed to find the
193 required libraries, and ended up using the Arduino Makefile from the
194 <a href=
"https://tracker.debian.org/pkg/arduino-mk">arduino-mk Debian
195 package
</a> instead. Unfortunately the camera library is missing from
196 the Arduino environment in Debian, so we disabled the camera support
197 for the first firmware build, to get something up and running. With
198 this reduced firmware, the robot could be controlled via the
199 controller server, driving around and measuring distance using its
200 internal acoustic sensor.
</p>
202 <p>Next, With some help from my friend in Denmark, which checked in the
203 camera library into the gitlab repository for me to use, we were able
204 to build a new and more complete version of the firmware, and the
205 robot is now up and running. This is what the "commander" web page
206 look like after taking a measurement and a snapshot:
</p>
208 <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"/>
210 <p>If you want to learn more about this project, you can check out the
211 <a href=
"https://hackaday.io/project/164082-the-dark-side-challenge">The
212 Dark Side Challenge
</a> Hackaday web pages.
</p>
214 <p>As usual, if you use Bitcoin and want to show your support of my
215 activities, please send Bitcoin donations to my address
216 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
221 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>.
226 <div class=
"padding"></div>
229 <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>
230 <div class=
"date">22nd May
2019</div>
231 <div class=
"body"><p>This morning, a new release of
232 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
233 Noark
5 core project
</a> was
234 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/2019-May/000468.html">announced
235 on the project mailing list
</a>. The Nikita free software solution is
236 an implementation of the Norwegian archive standard Noark
5 used by
237 government offices in Norway. These were the changes in version
0.4
238 since version
0.3, see the email link above for links to a demo site:
</p>
242 <li>Roll out OData handling to all endpoints where applicable
</li>
243 <li>Changed the relation key for "ny-journalpost" to the official one.
</li>
244 <li>Better link generation on outgoing links.
</li>
245 <li>Tidy up code and make code and approaches more consistent throughout
247 <li>Update rels to be in compliance with updated version in the
248 interface standard
</li>
249 <li>Avoid printing links on empty objects as they can't have links
</li>
250 <li>Small bug fixes and improvements
</li>
251 <li>Start moving generation of outgoing links to @Service layer so access
252 control can be used when generating links
</li>
253 <li>Log exception that was being swallowed so it's traceable
</li>
254 <li>Fix name mapping problem
</li>
255 <li>Update templated printing so templated should only be printed if it
256 is set true. Requires more work to roll out across entire
258 <li>Remove Record-
>DocumentObject as per domain model of n5v4
</li>
259 <li>Add ability to delete lists filtered with OData
</li>
260 <li>Return NO_CONTENT (
204) on delete as per interface standard
</li>
261 <li>Introduce support for ConstraintViolationException exception
</li>
262 <li>Make Service classes extend NoarkService
</li>
263 <li>Make code base respect X-Forwarded-Host, X-Forwarded-Proto and
264 X-Forwarded-Port
</li>
265 <li>Update CorrespondencePart* code to be more in line with Single
266 Responsibility Principle
</li>
267 <li>Make package name follow directory structure
</li>
268 <li>Make sure Document number starts at
1, not
0</li>
269 <li>Fix isues discovered by FindBugs
</li>
270 <li>Update from Date to ZonedDateTime
</li>
271 <li>Fix wrong tablename
</li>
272 <li>Introduce Service layer tests
</li>
273 <li>Improvements to CorrespondencePart
</li>
274 <li>Continued work on Class / Classificationsystem
</li>
275 <li>Fix feature where authors were stored as storageLocations
</li>
276 <li>Update HQL builder for OData
</li>
277 <li>Update OData search capability from webpage
</li>
281 <p>If free and open standardized archiving API sound interesting to
282 you, please contact us on IRC
283 (
<a href=
"irc://irc.freenode.net/%23nikita">#nikita on
284 irc.freenode.net
</a>) or email
285 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
286 mailing list
</a>).
</p>
288 <p>As usual, if you use Bitcoin and want to show your support of my
289 activities, please send Bitcoin donations to my address
290 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
295 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>.
300 <div class=
"padding"></div>
303 <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>
304 <div class=
"date">20th May
2019</div>
305 <div class=
"body"><p>As part of my involvement in the work to
306 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard">standardise
307 a REST based API for Noark
5</a>, the Norwegian archiving standard, I
308 spent some time the last few months to try to register a
309 <a href=
"https://www.iana.org/assignments/media-types/">MIME type
</a>
310 and
<a href=
"https://www.nationalarchives.gov.uk/PRONOM/">PRONOM
311 code
</a> for the SOSI file format. The background is that there is a
312 set of formats approved for long term storage and archiving in Norway,
313 and among these formats, SOSI is the only format missing a MIME type
316 <p>What is SOSI, you might ask? To quote Wikipedia: SOSI is short for
317 Samordnet Opplegg for Stedfestet Informasjon (literally "Coordinated
318 Approach for Spatial Information", but more commonly expanded in
319 English to Systematic Organization of Spatial Information). It is a
320 text based file format for geo-spatial vector information used in
321 Norway. Information about the SOSI format can be found in English
322 from
<a href=
"https://en.wikipedia.org/wiki/SOSI">Wikipedia
</a>. The
323 specification is available in Norwegian from
324 <a href=
"https://www.kartverket.no/geodataarbeid/Standarder/SOSI/">the
325 Norwegian mapping authority
</a>. The SOSI standard, which originated
326 in the beginning of nineteen eighties, was the inspiration and formed the
327 basis for the XML based
328 <a href=
"https://en.wikipedia.org/wiki/Geography_Markup_Language">Geography
329 Markup Language
</a>.
</p>
331 <p>I have so far written
332 <a href=
"https://github.com/file/file/pull/67">a pattern matching
333 rule
</a> for the file(
1) unix tool to recognize SOSI files, submitted
334 a request to the PRONOM project to have a PRONOM ID assigned to the
335 format (reference TNA1555078202S60), and today send a request to IANA
336 to register the "text/vnd.sosi" MIME type for this format (referanse
337 <a href=
"https://tools.iana.org/public-view/viewticket/1143144">IANA
338 #
1143144</a>). If all goes well, in a few months, anyone implementing
339 the Noark
5 Tjenestegrensesnitt API spesification should be able to
340 use an official MIME type and PRONOM code for SOSI files. In
341 addition, anyone using SOSI files on Linux should be able to
342 automatically recognise the format and web sites handing out SOSI
343 files can begin providing a more specific MIME type. So far, SOSI
344 files has been handed out from web sites using the
345 "application/octet-stream" MIME type, which is just a nice way of
346 stating "I do not know". Soon, we will know. :)
</p>
348 <p>As usual, if you use Bitcoin and want to show your support of my
349 activities, please send Bitcoin donations to my address
350 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
355 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>.
360 <div class=
"padding"></div>
363 <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>
364 <div class=
"date">25th March
2019</div>
365 <div class=
"body"><p>As part of my involvement with the
366 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
367 Noark
5 core project
</a>, I have been proposing improvements to the
368 API specification created by
<a href=
"https://www.arkivverket.no/">The
369 National Archives of Norway
</a> and helped migrating the text from a
370 version control system unfriendly binary format (docx) to Markdown in
371 git. Combined with the migration to a public git repository (on
372 github), this has made it possible for anyone to suggest improvement
375 <p>The specification is filled with UML diagrams. I believe the
376 original diagrams were modelled using Sparx Systems Enterprise
377 Architect, and exported as EMF files for import into docx. This
378 approach make it very hard to track changes using a version control
379 system. To improve the situation I have been looking for a good text
380 based UML format with associated command line free software tools on
381 Linux and Windows, to allow anyone to send in corrections to the UML
382 diagrams in the specification. The tool must be text based to work
383 with git, and command line to be able to run it automatically to
384 generate the diagram images. Finally, it must be free software to
385 allow anyone, even those that can not accept a non-free software
386 license, to contribute.
</p>
388 <p>I did not know much about free software UML modelling tools when I
389 started. I have used dia and inkscape for simple modelling in the
390 past, but neither are available on Windows, as far as I could tell. I
392 <a href=
"https://modeling-languages.com/text-uml-tools-complete-list/">list
393 of text mode uml tools
</a>, and tested out a few of the tools listed
394 there.
<a href=
"http://plantuml.com/">The PlantUML tool
</a> seemed
395 most promising. After verifying that the packages
396 <a href=
"https://tracker.debian.org/pkg/plantuml">is available in
397 Debian
</a> and found
<a href=
"https://github.com/plantuml/plantuml">its
398 Java source
</a> under a GPL license on github, I set out to test if it
399 could represent the diagrams we needed, ie the ones currently in
400 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">the
401 Noark
5 Tjenestegrensesnitt specification
</a>. I am happy to report
402 that it could represent them, even thought it have a few warts here
405 <p>After a few days of modelling I completed the task this weekend. A
406 temporary link to the complete set of diagrams (original and from
407 PlantUML) is available in
408 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/76">the
409 github issue discussing the need for a text based UML format
</a>, but
410 please note I lack a sensible tool to convert EMF files to PNGs, so
411 the "original" rendering is not as good as the original was in the
414 <p>Here is an example UML diagram, showing the core classes for
415 keeping metadata about archived documents:
</p>
419 skinparam classAttributeIconSize
0
421 !include media/uml-class-arkivskaper.iuml
422 !include media/uml-class-arkiv.iuml
423 !include media/uml-class-klassifikasjonssystem.iuml
424 !include media/uml-class-klasse.iuml
425 !include media/uml-class-arkivdel.iuml
426 !include media/uml-class-mappe.iuml
427 !include media/uml-class-merknad.iuml
428 !include media/uml-class-registrering.iuml
429 !include media/uml-class-basisregistrering.iuml
430 !include media/uml-class-dokumentbeskrivelse.iuml
431 !include media/uml-class-dokumentobjekt.iuml
432 !include media/uml-class-konvertering.iuml
433 !include media/uml-datatype-elektronisksignatur.iuml
435 Arkivstruktur.Arkivskaper "+arkivskaper
1..*"
<-o "+arkiv 0..*" Arkivstruktur.Arkiv
436 Arkivstruktur.Arkiv o-->
"+underarkiv 0..*" Arkivstruktur.Arkiv
437 Arkivstruktur.Arkiv
"+arkiv 1" o-->
"+arkivdel 0..*" Arkivstruktur.Arkivdel
438 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [0..1]" <--o
"+arkivdel 1..*" Arkivstruktur.Arkivdel
439 Arkivstruktur.Klassifikasjonssystem
"+klassifikasjonssystem [0..1]" o-->
"+klasse 0..*" Arkivstruktur.Klasse
440 Arkivstruktur.Arkivdel
"+arkivdel 0..1" o-->
"+mappe 0..*" Arkivstruktur.Mappe
441 Arkivstruktur.Arkivdel
"+arkivdel 0..1" o-->
"+registrering 0..*" Arkivstruktur.Registrering
442 Arkivstruktur.Klasse
"+klasse 0..1" o-->
"+mappe 0..*" Arkivstruktur.Mappe
443 Arkivstruktur.Klasse
"+klasse 0..1" o-->
"+registrering 0..*" Arkivstruktur.Registrering
444 Arkivstruktur.Mappe -->
"+undermappe 0..*" Arkivstruktur.Mappe
445 Arkivstruktur.Mappe
"+mappe 0..1" o-->
"+registrering 0..*" Arkivstruktur.Registrering
446 Arkivstruktur.Merknad
"+merknad 0..*" <--* Arkivstruktur.Mappe
447 Arkivstruktur.Merknad
"+merknad 0..*" <--* Arkivstruktur.Dokumentbeskrivelse
448 Arkivstruktur.Basisregistrering -|
> Arkivstruktur.Registrering
449 Arkivstruktur.Merknad "+merknad
0..*" <--* Arkivstruktur.Basisregistrering
450 Arkivstruktur.Registrering "+registrering
1..*" o--> "+dokumentbeskrivelse
0..*" Arkivstruktur.Dokumentbeskrivelse
451 Arkivstruktur.Dokumentbeskrivelse "+dokumentbeskrivelse
1" o-
> "+dokumentobjekt 0..*" Arkivstruktur.Dokumentobjekt
452 Arkivstruktur.Dokumentobjekt *-
> "+konvertering 0..*" Arkivstruktur.Konvertering
453 Arkivstruktur.ElektroniskSignatur -[hidden]-
> Arkivstruktur.Dokumentobjekt
457 <p><a href=
"http://plantuml.com/class-diagram">The format
</a> is quite
458 compact, with little redundant information. The text expresses
459 entities and relations, and there is little layout related fluff. One
460 can reuse content by using include files, allowing for consistent
461 naming across several diagrams. The include files can be standalone
462 PlantUML too. Here is the content of
463 <tt>media/uml-class-arkivskaper.iuml
<tt>:
</p>
467 class Arkivstruktur.Arkivskaper
<Arkivenhet> {
468 +arkivskaperID : string
469 +arkivskaperNavn : string
470 +beskrivelse : string [
0.
.1]
475 <p>This is what the complete diagram for the PlantUML notation above
478 <p><img width=
"80%" src=
"http://people.skolelinux.org/pere/blog/images/2019-03-25-noark5-plantuml-diagrameksempel.png"></p>
480 <p>A cool feature of PlantUML is that the generated PNG files include
481 the entire original source diagram as text. The source (with include
482 statements expanded) can be extracted using for example
483 <tt>exiftool
</tt>. Another cool feature is that parts of the entities
484 can be hidden after inclusion. This allow to use include files with
485 all attributes listed, even for UML diagrams that should not list any
488 <p>The diagram also show some of the warts. Some times the layout
489 engine place text labels on top of each other, and some times it place
490 the class boxes too close to each other, not leaving room for the
491 labels on the relationship arrows. The former can be worked around by
492 placing extra newlines in the labes (ie "\n"). I did not do it here
493 to be able to demonstrate the issue. I have not found a good way
494 around the latter, so I normally try to reduce the problem by changing
495 from vertical to horizontal links to improve the layout.
</p>
497 <p>All in all, I am quite happy with PlantUML, and very impressed with
498 how quickly its lead developer responds to questions. So far I got an
499 answer to my questions in a few hours when I send an email. I
500 definitely recommend looking at PlantUML if you need to make UML
501 diagrams. Note, PlantUML can draw a lot more than class relations.
502 Check out the documention for a complete list. :)
</p>
504 <p>As usual, if you use Bitcoin and want to show your support of my
505 activities, please send Bitcoin donations to my address
506 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
511 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>.
516 <div class=
"padding"></div>
519 <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>
520 <div class=
"date">24th March
2019</div>
521 <div class=
"body"><p>Yesterday, a new release of
522 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core/">Nikita
523 Noark
5 core project
</a> was
524 <a href=
"https://lists.nuug.no/pipermail/nikita-noark/2019-March/000451.html">announced
525 on the project mailing list
</a>. The free software solution is an
526 implementation of the Norwegian archive standard Noark
5 used by
527 government offices in Norway. These were the changes in version
0.3
528 since version
0.2.1 (from NEWS.md):
</p>
531 <li>Improved ClassificationSystem and Class behaviour.
</li>
532 <li>Tidied up known inconsistencies between domain model and hateaos links.
</li>
533 <li>Added experimental code for blockchain integration.
</li>
534 <li>Make token expiry time configurable at upstart from properties file.
</li>
535 <li>Continued work on OData search syntax.
</li>
536 <li>Started work on pagination for entities, partly implemented for Saksmappe.
</li>
537 <li>Finalise ClassifiedCode Metadata entity.
</li>
538 <li>Implement mechanism to check if authentication token is still
539 valid. This allow the GUI to return a more sensible message to the
540 user if the token is expired.
</li>
541 <li>Reintroduce browse.html page to allow user to browse JSON API using
543 <li>Fix bug in handling file/mappe sequence number. Year change was
544 not properly handled.
</li>
545 <li>Update application yml files to be in sync with current development.
</li>
546 <li>Stop 'converting' everything to PDF using libreoffice. Only
547 convert the file formats doc, ppt, xls, docx, pptx, xlsx, odt, odp
549 <li>Continued code style fixing, making code more readable.
</li>
550 <li>Minor bug fixes.
</li>
554 <p>If free and open standardized archiving API sound interesting to
555 you, please contact us on IRC
556 (
<a href=
"irc://irc.freenode.net/%23nikita">#nikita on
557 irc.freenode.net
</a>) or email
558 (
<a href=
"https://lists.nuug.no/mailman/listinfo/nikita-noark">nikita-noark
559 mailing list
</a>).
</p>
561 <p>As usual, if you use Bitcoin and want to show your support of my
562 activities, please send Bitcoin donations to my address
563 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
</p>
568 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>.
573 <div class=
"padding"></div>
576 <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>
577 <div class=
"date">11th March
2019</div>
578 <div class=
"body"><p>Et virksomhetsarkiv for meg, er et arbeidsverktøy der en enkelt kan
579 finne informasjonen en trenger når en trenger det, og der
580 virksomhetens samlede kunnskap er tilgjengelig. Det må være greit å
581 finne frem i, litt som en bibliotek. Men der et bibliotek gjerne tar
582 vare på offentliggjort informasjon som er tilgjengelig flere steder,
583 tar et arkiv vare på virksomhetsintern og til tider personlig
584 informasjon som ofte kun er tilgjengelig fra et sted.
</p>
586 <p>Jeg mistenker den eneste måten å sikre at arkivet inneholder den
587 samlede kunnskapen i en virksomhet, er å bruke det som virksomhetens
588 kunnskapslager. Det innebærer å automatisk kopiere (brev, epost,
589 SMS-er etc) inn i arkivet når de sendes og mottas, og der filtrere
590 vekk det en ikke vil ta vare på, og legge på metadata om det som er
591 samlet inn for enkel gjenfinning. En slik bruk av arkivet innebærer at
592 arkivet er en del av daglig virke, ikke at det er siste hvilested for
593 informasjon ingen lenger har daglig bruk for. For å kunne være en del
594 av det daglige virket må arkivet enkelt kunne integreres med andre
595 systemer. I disse dager betyr det å tilby arkivet som en
596 nett-tjeneste til hele virksomheten, tilgjengelig for både mennesker
597 og datamaskiner. Det betyr i tur å både tilby nettsider og et
598 maskinlesbart grensesnitt.
</p>
600 <p>For noen år siden erkjente visjonære arkivarer fordelene med et
601 standardisert maskinlesbart grensesnitt til organisasjonens arkiv. De
602 gikk igang med å lage noe de kalte
603 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">Noark
604 5 Tjenestegrensesnitt
</a>. Gjort riktig, så åpner slike maskinlesbare
605 grensesnitt for samvirke på tvers av uavhengige programvaresystemer.
606 Gjort feil, vil det blokkere for samvirke og bidra til
607 leverandørinnlåsing. For å gjøre det riktig så må grensesnittet være
608 klart og entydig beskrevet i en spesifikasjon som gjør at
609 spesifikasjonen tolkes på samme måte uavhengig av hvem som leser den,
610 og uavhengig av hvem som tar den i bruk.
</p>
612 <p>For å oppnå klare og entydige beskrivelser i en spesifikasjon, som
613 trengs for å kunne få en fri og åpen standard (se
614 <a href=
"http://people.skolelinux.org/pere/blog/Fri_og__pen_standard__slik_Digistan_ser_det.html">Digistan-definisjon
</a>),
615 så trengs det en åpen og gjennomsiktig inngangsport med lav terskel,
616 der de som forsøker å ta den i bruk enkelt kan få inn korreksjoner,
617 etterlyse klargjøringer og rapportere uklarheter i spesifikasjonen.
618 En trenger også automatiserte datasystemer som måler og sjekker at et
619 gitt grensesnitt fungerer i tråd med spesifikasjonen.
</p>
621 <p>For Noark
5 Tjenestegrensesnittet er det nå etablert en slik åpen
622 og gjennomsiktig inngangsport på prosjekttjenesten github. Denne
623 inngangsporten består først og fremst av en åpen portal som lar enhver
624 se hva som er gjort av endringer i spesifikasjonsteksten over tid, men
625 det hører også med et åpent
"diskusjonsforum
" der en kan
626 komme med endringsforslag og forespørsler om klargjøringer. Alle
627 registrerte brukere på github kan bidra med innspill til disse
630 <p>I samarbeide med Arkivverket har jeg fått opprettet et git-depot
631 med spesifikasjonsteksten for tjenestegrensesnittet, der det er lagt
632 inn historikk for endringer i teksten de siste årene, samt lagt inn
633 endringsforslag og forespørsler om klargjøring av teksten. Bakgrunnen
634 for at jeg bidro med dette er at jeg er involvert i
635 <a href=
"https://gitlab.com/OsloMet-ABI/nikita-noark5-core">Nikita-prosjektet
</a>,
636 som lager en fri programvare-utgave av Noark
5 Tjenestegrensesnitt.
637 Det er først når en forsøker å lage noe i tråd med en spesifikasjon at
638 en oppdager hvor mange detaljer som må beskrives i spesifikasjonen for
639 å sikre samhandling.
</p>
641 <p>Spesifikasjonen vedlikeholdes i et rent tekstformat, for å ha et
642 format egnet for versjonskontroll via versjontrollsystemet git. Dette
643 gjør det både enkelt å se konkret hvilke endringer som er gjort når,
644 samt gjør det praktisk mulig for enhver med github-konto å sende inn
645 endringsforslag med formuleringer til spesifikasjonsteksten. Dette
646 tekstformatet vises frem som nettsider på github, slik at en ikke
647 trenger spesielle verktøy for å se på siste utgave av
650 <p>Fra dette rene tekstformatet kan det så avledes ulike formater, som
651 HTML for websider, PDF for utskrift på papir og ePub for lesing med
652 ebokleser. Avlednings-systemet (byggesystemet) bruker i dag
653 verktøyene pandoc, latex, docbook-xsl og GNU make til
654 transformasjonen. Tekstformatet som brukes dag er
655 <a href=
"https://www.markdownguide.org/">Markdown
</a>, men det vurderes
657 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/9">endre
658 til formatet RST
</a> i fremtiden for bedre styring av utseende på
661 <p>Versjonskontrollsystemet git ble valgt da det er både fleksibelt,
662 avansert og enkelt å ta i bruk. Github ble valgt (foran f.eks. Gitlab
663 som vi bruker i Nikita), da Arkivverket allerede hadde tatt i bruk
664 Github i andre sammenhenger.
</p>
666 <p>Enkle endringer i teksten kan gjøres av priviligerte brukere
667 direkte i nettsidene til Github, ved å finne aktuell fil som skal
668 endres (f.eks. kapitler/
03-konformitet.md), klikke på den lille
669 bokstaven i høyre hjørne over teksten. Det kommer opp en nettside der
670 en kan endre teksten slik en ønsker. Når en er fornøyd med endringen
671 så må endringen
"sjekkes inn
" i historikken. Det gjøres ved
672 å gi en kort beskrivelse av endringen (beskriv helst hvorfor endringen
673 trengs, ikke hva som er endret), under overskriften
"Commit
674 changes
". En kan og bør legge inn en lengre forklaring i det
675 større skrivefeltet, før en velger om endringen skal sendes direkte
676 til 'master'-grenen (dvs. autorativ utgave av spesifikasjonen) eller
677 om en skal lage en ny gren for denne endringen og opprette en
678 endringsforespørsel (aka
"Pull Request
"/PR). Når alt dette
679 er gjort kan en velge
"Commit changes
" for å sende inn
680 endringen. Hvis den er lagt inn i
"master
"-grenen så er den
681 en offisiell del av spesifikasjonen med en gang. Hvis den derimot er
682 en endringsforespørsel, så legges den inn i
683 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/pulls">listen
684 over forslag til endringer
</a> som venter på korrekturlesing og
687 <p>Større endringer (for eksempel samtidig endringer i flere filer)
688 gjøres enklest ved å hente ned en kopi av git-depoet lokalt og gjøre
689 endringene der før endringsforslaget sendes inn. Denne prosessen er
690 godt beskrivet i dokumentasjon fra github. Git-prosjektet som skal
691 "klones
" er
692 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/
</a>.
</p>
694 <p>For å registrere nye utfordringer (issues) eller kommentere på
695 eksisterende utfordringer benyttes nettsiden
696 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues">https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues
</a>.
697 I skrivende stund er det
48 åpne og
11 avsluttede utfordringer. Et
698 forslag til hva som bør være med når en beskriver en utfordring er
699 tilgjengelig som utfordring
700 <a href=
"https://github.com/arkivverket/noark5-tjenestegrensesnitt-standard/issues/14">#
14</a>.
</p>
702 <p>For å bygge en PDF-utgave av spesifikasjonen så bruker jeg i dag en
703 Debian GNU/Linux-maskin med en rekke programpakker installert. Når
704 dette er på plass, så holder det å kjøre kommandoen 'make pdf html' på
705 kommandolinjen, vente ca.
20 sekunder, før spesifikasjon.pdf og
706 spesifikasjon.html ligger klar på disken. Verktøyene for bygging av
707 PDF, HTML og ePub-utgave er også tilgjengelig på Windows og
710 <p>Github bidrar med rammeverket. Men for at åpent vedlikehold av
711 spesifikasjonen skal fungere, så trengs det folk som bidrar med sin
712 tid og kunnskap. Arkivverket har sagt de skal bidra med innspill og
713 godkjenne forslag til endringer, men det blir størst suksess hvis alle
714 som bruker og lager systemer basert på Noark
5 Tjenestegrensesnitt
715 bidrar med sin kunnskap og kommer med forslag til forebedringer. Jeg
716 stiller. Blir du med?
</p>
718 <p>Det er viktig å legge til rette for åpen diskusjon blant alle
719 interesserte, som ikke krever at en må godta lange kontrakter med
720 vilkår for deltagelse. Inntil Arkivverket dukker opp på IRC har vi
721 laget en IRC-kanal der interesserte enkelt kan orientere seg og
722 diskutere tjenestegrensesnittet. Alle er velkommen til å ta turen
724 <a href=
"https://webchat.freenode.net/?channels=nikita">#nikita
</a>
725 (f.eks. via irc.freenode.net) for å møte likesinnede.
</p>
727 <p>Det holder dog ikke å ha en god spesifikasjon, hvis ikke de som tar
728 den i bruk gjør en like god jobb. For å automatisk teste om et konkret
729 tjenestegrensesnitt følger (min) forståelse av
730 spesifikasjonsdokumentet, har jeg skrevet et program som kobler seg
731 opp til et Noark
5v4 REST-tjeneste og tester alt den finner for å se
732 om det er i henhold til min tolkning av spesifikasjonen. Dette
733 verktøyet er tilgjengelig fra
734 <a href=
"https://github.com/petterreinholdtsen/noark5-tester">https://github.com/petterreinholdtsen/noark5-tester
</a>,
735 og brukes daglig mens vi utvikler Nikita for å sikre at vi ikke
736 introduserer nye feil. Hvis en skal sikre samvirke på tvers av ulike
737 systemer er det helt essensielt å kunne raskt og automatisk sjekke at
738 tjenestegrensesnittet oppfører seg som forventet. Jeg håper andre som
739 lager sin utgave av tjenestegrensesnittet vi bruke dette verktøyet,
740 slik at vi tidlig og raskt kan oppdage hvor vi har tolket
741 spesifikasjonen ulikt, og dermed få et godt grunnlag for å gjøre
742 spesifikasjonsteksten enda klarere og bedre.
</p>
744 <p>Dagens beskrivelse av Noark
5 Tjenestegrensesnitt er et svært godt
745 utgangspunkt for å gjøre virksomhetens arkiv til et dynamisk og
746 sentralt arbeidsverktøy i organisasjonen. Blir du med å gjøre den
752 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>.
757 <div class=
"padding"></div>
760 <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>
761 <div class=
"date">13th February
2019</div>
762 <div class=
"body"><p><a href=
"http://people.skolelinux.org/pere/blog/Er_billettautomatene_til_kollektivtrafikken_i_Oslo_uten_sikkerhetsoppdateringer_.html">For
763 syv år siden
</a> oppdaget jeg at billettautomater for
764 kollektivtrafikken i Oslo kjørte
765 <a href=
"http://en.wikipedia.org/wiki/Windows_2000">Windows
2000
766 Professional
</a>. Operativsystemet har ikke fått sikkerhetsfikser fra
767 Microsoft siden
2010-
07-
13 i følge dem selv. Den samme versjonen av
768 operativsystemet var i bruk
769 <a href=
"http://people.skolelinux.org/pere/blog/Fortsatt_ingen_sikkerhetsoppdateringer_for_billettautomatene_til_kollektivtrafikken_i_Oslo_.html">for
770 to og et halvt år siden
</a>, og jammen er det ikke også i bruk den dag
773 <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>
775 <p>Bildet er tatt i dag av Kirill Miazine og tilgjengelig for bruk med
777 <a href=
"http://creativecommons.org/licenses/by/4.0/">Creative
778 Commons Attribution
4.0 International (CC BY
4.0)
</a>.
</p>
780 <p>Kanskje det hadde vært
781 <a href=
"https://www.aftenposten.no/osloby/i/awqgO/Her-kjorer-du-gratis-trikk-og-buss">bedre
782 med gratis kollektivtrafikk
</A>, slik at vi slapp å stole på
783 datakompetansen til Ruter for å verne våre privatliv samt holde
784 personopplysninger og betalingsinformasjon unna uvedkommende. Eneste
785 måten å sikre at hvor en befinner seg ikke kan hentes ut fra Ruters
786 systemer er å betale enkeltbilletter med kontanter. Jeg vet at Ruter
787 har en god historie om hvor personvernvennlige mobil-app og
788 RFID-kortene er, men den historien er ikke mulig å uavhengig
789 kontrollere uten priviligert tilgang til interne system og blir dermed
790 bare nok en god historie basert på tillit til de som forteller
791 historien. Det er ikke slik en sikrer privatsfæren. Det gjør en ved
792 å sikre at det ikke (kan) registreres informasjon om ens person.
</p>
794 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
795 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
797 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
798 Merk, betaling med bitcoin er ikke anonymt. :)
</p>
803 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>.
808 <div class=
"padding"></div>
811 <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>
812 <div class=
"date"> 7th February
2019</div>
813 <div class=
"body"><p>Jeg registrerer med glede at Stortinget i dag har
814 <a href=
"https://www.stortinget.no/no/Saker-og-publikasjoner/Saker/Sak/?p=72826">vedtatt
815 at det skal vedlikeholdes et åpent og maskinlesbart register over
816 reelle rettighetshavere i Norge
</a>. Her kan en kanskje få et
817 register som kan brukes til å analysere eierskap og kontroll i Norge
818 maskinelt og knytte det til internasjonale databaser som
819 <a href=
"https://opencorporates.com/">OpenCorporates
</a>. Det liker
822 <p>Den vedtatte grense på
25 prosents eierandel fikk stor
823 oppmerksomhet i debatten. Jeg ser fra enkel analyse av skatteetatens
824 eierskapsregister at
80.4% av alle selskapseiere i registeret har
825 mindre enn
25% eierandel, mot
73.8% som har mindre enn
5% eierandel.
826 En grense på
25% vil altså utelukke
80.4% av selskapseierne fra det
827 vedtatte registeret, og en grense på
5% vil skjule
73.8%. En må helt
828 ned i registrering av eierandeler over circa
0.002% for å få mer enn
829 halvparten av selskapseierne i Norge. Mon tro hvor langt ned en må i
830 eierprosent for å få med alle eierskapene til politisk valgte
833 <p>Jeg biter meg også merke i at Sivert Bjørnstad fra FrP
834 tilsynelatende tror at aksjonærregisteret er et eksisterende åpent
835 register, på tross av at det så vidt jeg vet kun deles ved personlig
836 oppmøte hos skatteetaten og ikke er tilgjengelig i maskinlesbart
837 format for enhver, og dermed så langt ikke er importert inn i
838 OpenCorporates. Det anser jeg ikke for et spesielt åpent register.
839 Debatten ga ellers lite håp om at situasjonen bedrer seg, da
840 finansministeren bare henviste til en fraværende næringsministeren og
841 ikke ville uttale seg om et skikkelig aksjonærregister snart dukker
844 <p>Som vanlig, hvis du bruker Bitcoin og ønsker å vise din støtte til
845 det jeg driver med, setter jeg pris på om du sender Bitcoin-donasjoner
847 <b><a href=
"bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b
</a></b>.
848 Merk, betaling med bitcoin er ikke anonymt. :)
</p>
853 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>.
858 <div class=
"padding"></div>
860 <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>
871 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2019/01/">January (
4)
</a></li>
873 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2019/02/">February (
3)
</a></li>
875 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2019/03/">March (
3)
</a></li>
877 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2019/05/">May (
2)
</a></li>
879 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2019/06/">June (
3)
</a></li>
886 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/01/">January (
1)
</a></li>
888 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/02/">February (
5)
</a></li>
890 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/03/">March (
5)
</a></li>
892 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/04/">April (
3)
</a></li>
894 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/06/">June (
2)
</a></li>
896 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/07/">July (
5)
</a></li>
898 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/08/">August (
3)
</a></li>
900 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/09/">September (
3)
</a></li>
902 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/10/">October (
5)
</a></li>
904 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/11/">November (
2)
</a></li>
906 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2018/12/">December (
4)
</a></li>
913 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/01/">January (
4)
</a></li>
915 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/02/">February (
3)
</a></li>
917 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/03/">March (
5)
</a></li>
919 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/04/">April (
2)
</a></li>
921 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/06/">June (
5)
</a></li>
923 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/07/">July (
1)
</a></li>
925 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/08/">August (
1)
</a></li>
927 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/09/">September (
3)
</a></li>
929 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/10/">October (
5)
</a></li>
931 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/11/">November (
3)
</a></li>
933 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2017/12/">December (
4)
</a></li>
940 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/01/">January (
3)
</a></li>
942 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/02/">February (
2)
</a></li>
944 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/03/">March (
3)
</a></li>
946 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/04/">April (
8)
</a></li>
948 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/05/">May (
8)
</a></li>
950 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/06/">June (
2)
</a></li>
952 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/07/">July (
2)
</a></li>
954 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/08/">August (
5)
</a></li>
956 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/09/">September (
2)
</a></li>
958 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/10/">October (
3)
</a></li>
960 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/11/">November (
8)
</a></li>
962 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2016/12/">December (
5)
</a></li>
969 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/01/">January (
7)
</a></li>
971 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/02/">February (
6)
</a></li>
973 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/03/">March (
1)
</a></li>
975 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/04/">April (
4)
</a></li>
977 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/05/">May (
3)
</a></li>
979 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/06/">June (
4)
</a></li>
981 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/07/">July (
6)
</a></li>
983 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/08/">August (
2)
</a></li>
985 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/09/">September (
2)
</a></li>
987 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/10/">October (
9)
</a></li>
989 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/11/">November (
6)
</a></li>
991 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2015/12/">December (
3)
</a></li>
998 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/01/">January (
2)
</a></li>
1000 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/02/">February (
3)
</a></li>
1002 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/03/">March (
8)
</a></li>
1004 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/04/">April (
7)
</a></li>
1006 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/05/">May (
1)
</a></li>
1008 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/06/">June (
2)
</a></li>
1010 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/07/">July (
2)
</a></li>
1012 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/08/">August (
2)
</a></li>
1014 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/09/">September (
5)
</a></li>
1016 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/10/">October (
6)
</a></li>
1018 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/11/">November (
3)
</a></li>
1020 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2014/12/">December (
5)
</a></li>
1027 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/01/">January (
11)
</a></li>
1029 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/02/">February (
9)
</a></li>
1031 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/03/">March (
9)
</a></li>
1033 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/04/">April (
6)
</a></li>
1035 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/05/">May (
9)
</a></li>
1037 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/06/">June (
10)
</a></li>
1039 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/07/">July (
7)
</a></li>
1041 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/08/">August (
3)
</a></li>
1043 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/09/">September (
5)
</a></li>
1045 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/10/">October (
7)
</a></li>
1047 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/11/">November (
9)
</a></li>
1049 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2013/12/">December (
3)
</a></li>
1056 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/01/">January (
7)
</a></li>
1058 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/02/">February (
10)
</a></li>
1060 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/03/">March (
17)
</a></li>
1062 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/04/">April (
12)
</a></li>
1064 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/05/">May (
12)
</a></li>
1066 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/06/">June (
20)
</a></li>
1068 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/07/">July (
17)
</a></li>
1070 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/08/">August (
6)
</a></li>
1072 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/09/">September (
9)
</a></li>
1074 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/10/">October (
17)
</a></li>
1076 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/11/">November (
10)
</a></li>
1078 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2012/12/">December (
7)
</a></li>
1085 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/01/">January (
16)
</a></li>
1087 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/02/">February (
6)
</a></li>
1089 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/03/">March (
6)
</a></li>
1091 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/04/">April (
7)
</a></li>
1093 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/05/">May (
3)
</a></li>
1095 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/06/">June (
2)
</a></li>
1097 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/07/">July (
7)
</a></li>
1099 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/08/">August (
6)
</a></li>
1101 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/09/">September (
4)
</a></li>
1103 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/10/">October (
2)
</a></li>
1105 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/11/">November (
3)
</a></li>
1107 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2011/12/">December (
1)
</a></li>
1114 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/01/">January (
2)
</a></li>
1116 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/02/">February (
1)
</a></li>
1118 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/03/">March (
3)
</a></li>
1120 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/04/">April (
3)
</a></li>
1122 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/05/">May (
9)
</a></li>
1124 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/06/">June (
14)
</a></li>
1126 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/07/">July (
12)
</a></li>
1128 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/08/">August (
13)
</a></li>
1130 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/09/">September (
7)
</a></li>
1132 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/10/">October (
9)
</a></li>
1134 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/11/">November (
13)
</a></li>
1136 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2010/12/">December (
12)
</a></li>
1143 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/01/">January (
8)
</a></li>
1145 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/02/">February (
8)
</a></li>
1147 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/03/">March (
12)
</a></li>
1149 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/04/">April (
10)
</a></li>
1151 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/05/">May (
9)
</a></li>
1153 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/06/">June (
3)
</a></li>
1155 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/07/">July (
4)
</a></li>
1157 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/08/">August (
3)
</a></li>
1159 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/09/">September (
1)
</a></li>
1161 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/10/">October (
2)
</a></li>
1163 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/11/">November (
3)
</a></li>
1165 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2009/12/">December (
3)
</a></li>
1172 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/11/">November (
5)
</a></li>
1174 <li><a href=
"http://people.skolelinux.org/pere/blog/archive/2008/12/">December (
7)
</a></li>
1185 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (
16)
</a></li>
1187 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/amiga">amiga (
1)
</a></li>
1189 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/aros">aros (
1)
</a></li>
1191 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bankid">bankid (
4)
</a></li>
1193 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (
8)
</a></li>
1195 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (
11)
</a></li>
1197 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (
17)
</a></li>
1199 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/bsa">bsa (
2)
</a></li>
1201 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (
2)
</a></li>
1203 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian">debian (
167)
</a></li>
1205 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (
158)
</a></li>
1207 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (
4)
</a></li>
1209 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/digistan">digistan (
11)
</a></li>
1211 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/dld">dld (
17)
</a></li>
1213 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/docbook">docbook (
26)
</a></li>
1215 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (
4)
</a></li>
1217 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/english">english (
405)
</a></li>
1219 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (
23)
</a></li>
1221 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (
14)
</a></li>
1223 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (
34)
</a></li>
1225 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (
9)
</a></li>
1227 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (
20)
</a></li>
1229 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/h264">h264 (
20)
</a></li>
1231 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/intervju">intervju (
42)
</a></li>
1233 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (
16)
</a></li>
1235 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kart">kart (
22)
</a></li>
1237 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/kodi">kodi (
4)
</a></li>
1239 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ldap">ldap (
9)
</a></li>
1241 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lego">lego (
4)
</a></li>
1243 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lenker">lenker (
8)
</a></li>
1245 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (
2)
</a></li>
1247 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (
1)
</a></li>
1249 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (
8)
</a></li>
1251 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (
42)
</a></li>
1253 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (
12)
</a></li>
1255 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (
15)
</a></li>
1257 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/norsk">norsk (
305)
</a></li>
1259 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/nuug">nuug (
195)
</a></li>
1261 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (
37)
</a></li>
1263 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/open311">open311 (
2)
</a></li>
1265 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (
73)
</a></li>
1267 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/personvern">personvern (
108)
</a></li>
1269 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/raid">raid (
2)
</a></li>
1271 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reactos">reactos (
1)
</a></li>
1273 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/reprap">reprap (
11)
</a></li>
1275 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rfid">rfid (
3)
</a></li>
1277 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/robot">robot (
12)
</a></li>
1279 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/rss">rss (
1)
</a></li>
1281 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/ruter">ruter (
7)
</a></li>
1283 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (
2)
</a></li>
1285 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (
55)
</a></li>
1287 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (
4)
</a></li>
1289 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (
5)
</a></li>
1291 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/standard">standard (
64)
</a></li>
1293 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (
6)
</a></li>
1295 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (
12)
</a></li>
1297 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (
55)
</a></li>
1299 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (
4)
</a></li>
1301 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/usenix">usenix (
2)
</a></li>
1303 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/valg">valg (
9)
</a></li>
1305 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (
15)
</a></li>
1307 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/video">video (
73)
</a></li>
1309 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (
4)
</a></li>
1311 <li><a href=
"http://people.skolelinux.org/pere/blog/tags/web">web (
42)
</a></li>
1317 <p style=
"text-align: right">
1318 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v4.6
</a>