1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
5 <title>Petter Reinholdtsen
</title>
6 <link rel=
"stylesheet" type=
"text/css" media=
"screen" href=
"style.css">
7 <link rel=
"alternate" title=
"RSS Feed" href=
"index.rss" type=
"application/rss+xml">
14 <a href=
"">Petter Reinholdtsen
</a>
23 <div class=
"title"><a href=
"Testing_av_reprap_elektronikken_igang.html">Testing av reprap-elektronikken igang
</a></div>
24 <div class=
"date">2009-
03-
12 16:
00</div>
26 <p>Lenge siden det var en oppdatering av status for min
3D-skriver og
27 i mellomtiden har det skjedd en god del. Reprap-en er nesten ferdig
28 montert, og elektronikken er også nesten ferdig loddet. Det ser ut
29 til at bits-from-bytes sitt byggesett versjon
2.01 hadde noen småfeil,
30 der en del manglet og en annen hadde suboptimalt design. Jeg løser
31 antagelig det ene problemet med å borre noen ekstra hull til skruver i
32 en plastdelen som trenger å festes. Det andre problemet håper jeg å
33 få hjelp fra Audun Vaaler ved Høgskolen i Østfold til å løse.
34 Høgskolen er igang med å bygge en tilsvarende reprap i versjon
2.0, og
35 er kommet litt lenger enn meg. De kan forhåpentligvis skrive ut den
36 delen jeg mangler på denne.
</p>
38 <p>Når det gjelder elektronikken, så er mye allerede loddet sammen av
39 min venn Anders Rosnes, som har mer peiling på elektronikk og lodding
40 enn meg. Jeg fikk i dag testet
41 <a href=
"http://reprap.org/bin/view/Main/Stepper_Motor_Driver_1_1">stepper
42 motordriveren (v1.1)
</a>, og det fungerte. Jeg møtte et lite problem
43 med strømforsyningen, en standard ATX-strømforsyning som nektet å
44 fungere før jeg hadde satt en ledning mellom GRD og PS_ON som
46 <a href=
"http://dev.www.reprap.org/bin/view/Main/PCPowerSupply">reprap-sidene
47 om PC-strømforsyninger
</a>. Jeg møtte også et annet problem med
48 Arduino-programvaren. Versjon
0013 fungerer visst ikke på
49 Debian/Etch. Den kompilerte binæren ble på
0 bytes. En side jeg fant
51 <a href=
"http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1234153046/5">tipset
52 meg
</A> om at en nedgradering
53 til
<a href=
"http://arduino.googlecode.com/files/arduino-0012-linux.tgz">versjon
54 0012</a> kunne løse problemet, og endelig ser jeg motorakslingen
55 snurre. Nå er det å koble sammen mekanikk og elektronikk for å se om
56 reprap-en kvikner til.
</p>
62 Tags:
<a href=
"tags/3d-printer">3d-printer
</a>,
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/reprap">reprap
</a>.
66 <div class=
"padding"></div>
69 <div class=
"title"><a href=
"Frikanalen_og_jul_i_studentr__det.html">Frikanalen og jul i studentrådet
</a></div>
70 <div class=
"date">2009-
03-
11 23:
40</div>
73 <a href=
"http://lists.nuug.no/pipermail/interesserte/2009-March/000387.html">lanserte
</a>
75 <a href=
"http://www.frikanalen.no">Frikanalen
</a> med
76 <a href=
"http://www.nuug.no/pub/video/frikanalen/frontpage.cgi">åpne
77 standarder
</a>, og resultatet av noen intense uker med arbeide kunne
78 endelig presenteres. Jeg har tro på åpen kanalkonseptet som
79 Frikanalen er et eksempel på, der borgerne får anledning til å
80 kringkaste sitt syn på en åpen og demokratisk måte. Jeg er veldig
81 glad vi har fått gjort kanalen tilgjengelig i Ogg Theora, slik at alle
82 kan få tilgang til opptakene på web, og slipper å måtte installere MS
83 Silverlight for å spille av opptakene.
</p>
85 <p>Frikanalen har en brokete historie, og dagens inkarnasjon er ikke
86 helt slik foreningen Åpen kanal planla det for mange år siden, noe som
87 er bakgrunnen for at det fredag
13. mars
2009 kl
09:
00 starter en
88 rettsak i Oslo tingrett der Kringkasterforeningen (tidligere
89 foreningen Åpen kanal) har saksøkt kulturdepartementet over
90 konsesjonsvilkårene til Frikanalen. Jeg er spent på resultatet.
</p>
92 <p>I arbeidet med Frikanalen med åpne standarder, så har vi hatt glede
93 av å se en rekke av innslagene som er tilgjengelig. Her er mye
94 religiøst sludder, fra
95 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=720">vandring
97 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=779">religiøst
98 vinklede nyheter
</a> til
100 href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=2077">kreasjonisk
101 retorikk
</a>, men også fine
102 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=407">dokumentarer
103 om redningsselskapet
</a> og
104 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=2204">interessante
105 tegneserieanmeldelser
</a>. Det jeg derimot har hatt størst glede av,
108 <a href=
"http://www.nuug.no/pub/video/frikanalen/fetchvideo.cgi?videoId=1556">jul
109 i studentrådet
</a>, der hver episode var en fest å se på. Jeg håper
110 NUUG lykkes med å få ut sine opptak med like stor suksess.
</p>
116 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
120 <div class=
"padding"></div>
123 <div class=
"title"><a href=
"Lisensvalg_for_NUUG_opptakene_endelig_p___plass.html">Lisensvalg for NUUG-opptakene endelig på plass
</a></div>
124 <div class=
"date">2009-
03-
06 21:
20</div>
126 <p>Etter mange års meditasjon over temaet, har NUUG endelig klart å
127 bestemme seg for hvilken lisens vi skal bruke på videoopptakene som
128 gjøres av NUUGs videogruppe. Ole Kristian har annonsert at lisensen
129 blir
<a href=
"http://creativecommons.org/licenses/by-sa/3.0/no/">Creative
130 Commons Navngivelse-Del på samme vilkår
3.0 Norge
</a>. Jeg er veldig
131 glad for at denne saken endelig er landet. Lisensen for opptaket til
132 Stallman-foredraget ble en annen pga. at lisensvalget ikke var avklart
133 på forhånd og IFI og PING ønsket CC-BY-ND, og må ses på som et unntak
134 i denne sammenhengen.
</p>
140 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
144 <div class=
"padding"></div>
147 <div class=
"title"><a href=
"Teknisk_program_for_Go_Open_2009_er_nesten_ferdig.html">Teknisk program for Go Open
2009 er nesten ferdig
</a></div>
148 <div class=
"date">2009-
03-
05 22:
30</div>
150 <p>Etter lang tids jobbing begynner endelig programmet til det
151 tekniske sporet på konferansen
<a href=
"http://www.goopen.no/">Go Open
152 2009</a> å bli ferdig. Det blir
9 punkter på programmet, og etter alt
153 å dømme blir det disse
9:
</p>
157 <li>"Open Telephony: A solution greater than the sum of its parts" med
158 Jon
"maddog" Hall
</li>
159 <li>OpenSolaris-relatert med Ian Murdock fra SUN
</li>
160 <li>"The inner workings of the OpenStreetmap project and the
161 technology used" med Andy Allan
</li>
162 <li>Coreboot-relatert med Peter Stuge
</li>
163 <li>"Gratis værdata fra Meteorologisk institutt" med Trond Michelsen
</li>
164 <li>RRDtool/Nagios-relatert med Tobias Oetiker
</li>
165 <li>"Developers guide to server-side productivity and fun using open
166 source platforms and frameworks" med en gjeng folk fra
168 <li>"G(et)it Nå!" med Marcus Ramberg
</li>
169 <li>Om kontrolltelling av valgresultater med fri programvare med Mitch
174 <p>De siste bekreftelsene og overskrifter mangler og kommer
175 forhåpentlig på plass før mandag, men jeg håper dette blir et program
176 flere enn meg vil sette pris på. Jeg gleder meg i hvert fall
183 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>.
187 <div class=
"padding"></div>
190 <div class=
"title"><a href=
"Checking_server_hardware_support_status_for_Dell__HP_and_IBM_servers.html">Checking server hardware support status for Dell, HP and IBM servers
</a></div>
191 <div class=
"date">2009-
02-
28 23:
50</div>
193 <p>At work, we have a few hundred Linux servers, and with that amount
194 of hardware it is important to keep track of when the hardware support
195 contract expire for each server. We have a machine (and service)
196 register, which until recently did not contain much useful besides the
197 machine room location and contact information for the system owner for
198 each machine. To make it easier for us to track support contract
199 status, I've recently spent time on extending the machine register to
200 include information about when the support contract expire, and to tag
201 machines with expired contracts to make it easy to get a list of such
202 machines. I extended a perl script already being used to import
203 information about machines into the register, to also do some screen
204 scraping off the sites of Dell, HP and IBM (our majority of machines
205 are from these vendors), and automatically check the support status
206 for the relevant machines. This make the support status information
207 easily available and I hope it will make it easier for the computer
208 owner to know when to get new hardware or renew the support contract.
209 The result of this work documented that
27% of the machines in the
210 registry is without a support contract, and made it very easy to find
211 them.
27% might seem like a lot, but I see it more as the case of us
212 using machines a bit longer than the
3 years a normal support contract
213 last, to have test machines and a platform for less important
214 services. After all, the machines without a contract are working fine
215 at the moment and the lack of contract is only a problem if any of
216 them break down. When that happen, we can either fix it using spare
217 parts from other machines or move the service to another old
220 <p>I believe the code for screen scraping the Dell site was originally
221 written by Trond Hasle Amundsen, and later adjusted by me and Morten
222 Werner Forsbring. The HP scraping was written by me after reading a
223 nice article in ;login: about how to use WWW::Mechanize, and the IBM
224 scraping was written by me based on the Dell code. I know the HTML
225 parsing could be done using nice libraries, but did not want to
226 introduce more dependencies. This is the current incarnation:
</p>
234 sub get_support_info {
235 my ($machine, $model, $serial, $productnumber) = @_;
238 if ( $model =~ m/^Dell / ) {
239 # fetch website from Dell support
240 my $url = "http://support.euro.dell.com/support/topics/topic.aspx/emea/shared/support/my_systems_info/no/details?c=no
&cs=nodhs1
&l=no
&s=dhs
&ServiceTag=$serial";
241 my $webpage = get($url);
242 return undef unless ($webpage);
245 my @lines = split(/\n/, $webpage);
246 foreach my $line (@lines) {
247 next unless ($line =~ m/Beskrivelse/);
248 $line =~ s/
<[^
>]+
?>/;/gm;
249 $line =~ s/^.+?;(Beskrivelse;)/$
1/;
251 my @f = split(/\;/, $line);
254 while ($f[
3] eq "DELL") {
255 my ($type, $startstr, $endstr, $days) = @f[
0,
5,
7,
10];
257 my $start = POSIX::strftime("%Y-%m-%d",
258 localtime(str2time($startstr)));
259 my $end = POSIX::strftime("%Y-%m-%d",
260 localtime(str2time($endstr)));
261 $str .= "$type $start -
> $end ";
263 $lastend = $end if ($end gt $lastend);
265 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
266 tag_machine_unsupported($machine)
267 if ($lastend lt $today);
269 } elsif ( $model =~ m/^HP / ) {
270 my $mech = WWW::Mechanize-
>new();
272 'http://www1.itrc.hp.com/service/ewarranty/warrantyInput.do';
275 'BODServiceID' =
> 'NA',
276 'RegisteredPurchaseDate' =
> '',
278 'productNumber' =
> $productnumber,
279 'serialNumber1' =
> $serial,
281 $mech-
>submit_form( form_number =
> 2,
283 # Next step is screen scraping
284 my $content = $mech-
>content();
286 $content =~ s/
<[^
>]+
?>/;/gm;
287 $content =~ s/\s+/ /gm;
288 $content =~ s/;\s*;/;;/gm;
289 $content =~ s/;[\s;]+/;/gm;
291 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
293 while ($content =~ m/;Warranty Type;/) {
294 my ($type, $status, $startstr, $stopstr) = $content =~
295 m/;Warranty Type;([^;]+);.+?;Status;(\w+);Start Date;([^;]+);End Date;([^;]+);/;
296 $content =~ s/^.+?;Warranty Type;//;
297 my $start = POSIX::strftime("%Y-%m-%d",
298 localtime(str2time($startstr)));
299 my $end = POSIX::strftime("%Y-%m-%d",
300 localtime(str2time($stopstr)));
302 $str .= "$type ($status) $start -
> $end ";
304 tag_machine_unsupported($machine)
307 } elsif ( $model =~ m/^IBM / ) {
308 # This code ignore extended support contracts.
309 my ($producttype) = $model =~ m/.*-\[(.{
4}).+\]-/;
310 if ($producttype
&& $serial) {
312 get("http://www-
947.ibm.com/systems/support/supportsite.wss/warranty?action=warranty
&brandind=
5000008&Submit=Submit
&type=$producttype
&serial=$serial");
314 $content =~ s/
<[^
>]+
?>/;/gm;
315 $content =~ s/\s+/ /gm;
316 $content =~ s/;\s*;/;;/gm;
317 $content =~ s/;[\s;]+/;/gm;
319 $content =~ s/^.+?;Warranty status;//;
320 my ($status, $end) = $content =~ m/;Warranty status;([^;]+)\s*;Expiration date;(\S+) ;/;
322 $str .= "($status) -
> $end ";
324 my $today = POSIX::strftime("%Y-%m-%d", localtime(time));
325 tag_machine_unsupported($machine)
334 <p>Here are some examples on how to use the function, using fake
335 serial numbers. The information passed in as arguments are fetched
339 print get_support_info("hp.host", "HP ProLiant BL460c G1", "
1234567890"
341 print get_support_info("dell.host", "Dell Inc. PowerEdge
2950", "
1234567");
342 print get_support_info("ibm.host", "IBM eserver xSeries
345 -[
867061X]-",
346 <p>I would recommend this approach for tracking support contracts for
347 everyone with more than a few computers to administer. :)
</p>
349 <p>Update
2009-
03-
06: The IBM page do not include extended support
350 contracts, so it is useless in that case. The original Dell code do
351 not handle extended support contracts either, but has been updated to
358 Tags:
<a href=
"tags/english">english
</a>,
<a href=
"tags/nuug">nuug
</a>.
362 <div class=
"padding"></div>
365 <div class=
"title"><a href=
"Using_bar_codes_at_a_computing_center.html">Using bar codes at a computing center
</a></div>
366 <div class=
"date">2009-
02-
20 08:
50</div>
368 <p>At work with the University of Oslo, we have several hundred computers
369 in our computing center. This give us a challenge in tracking the
370 location and cabling of the computers, when they are added, moved and
371 removed. Some times the location register is not updated when a
372 computer is inserted or moved and we then have to search the room for
373 the "missing" computer.
</p>
375 <p>In the last issue of Linux Journal, I came across a project
376 <a href=
"http://www.libdmtx.org/">libdmtx
</a> to write and read bar
377 code blocks as defined in the
378 <a href=
"http://en.wikipedia.org/wiki/Data_Matrix">The Data Matrix
379 Standard
</a>. This is bar codes that can be read with a normal
380 digital camera, for example that on a cell phone, and several such bar
381 codes can be read by libdmtx from one picture. The bar code standard
382 allow up to
2 KiB to be written in the tag. There is another project
383 with
<a href=
"http://www.terryburton.co.uk/barcodewriter/">a bar code
384 writer written in postscript
</a> capable of creating such bar codes,
385 but this was the first time I found a tool to read these bar
388 <p>It occurred to me that this could be used to tag and track the
389 machines in our computing center. If both racks and computers are
390 tagged this way, we can use a picture of the rack and all its
391 computers to detect the rack location of any computer in that rack.
392 If we do this regularly for the entire room, we will find all
393 locations, and can detect movements and removals.
</p>
395 <p>I decided to test if this would work in practice, and picked a
396 random rack and tagged all the machines with their names. Next, I
397 took pictures with my digital camera, and gave the dmtxread program
398 these JPEG pictures to see how many tags it could read. This worked
399 fairly well. If the pictures was well focused and not taken from the
400 side, all tags in the image could be read. Because of limited space
401 between the racks, I was unable to get a good picture of the entire
402 rack, but could without problem read all tags from a picture covering
403 about half the rack. I had to limit the search time used by dmtxread
404 to
60000 ms to make sure it terminated in a reasonable time frame.
</p>
406 <p>My conclusion is that this could work, and we should probably look
407 at adjusting our computer tagging procedures to use bar codes for
408 easier automatic tracking of computers.
</p>
414 Tags:
<a href=
"tags/english">english
</a>,
<a href=
"tags/nuug">nuug
</a>.
418 <div class=
"padding"></div>
421 <div class=
"title"><a href=
"Kart_over_overv__kningskamera_i_Norge.html">Kart over overvåkningskamera i Norge
</a></div>
422 <div class=
"date">2009-
02-
15 22:
30</div>
425 <a href=
"http://www.personvern.no/">personvernforeningen
</a> har jeg
427 <a href=
"http://personvern.no/wiki/index.php/Kameraovervåkning">et
428 kart over overvåkningskamera i Norge
</a>. Bakgrunnen er at det etter
429 min mening bærer galt avsted med den massive overvåkningen som
430 finner sted i Norge i dag, og at flere og flere overvåkningskamera
431 gjør det vanskeligere og vanskeligere å gå igjennom livet uten at
432 små og store brødre trenger inn i ens private sfære. Datatilsynet
433 har et register over kameraovervåkning, men det viser seg å være
434 ubrukelig både til å finne ut hvor det er kamera plassert, og til å
435 sjekke om et kamera en kommer over er registrert. Dette nye kartet
436 fikser en av disse manglene, men det vil fortsatt være umulig å vite
437 om et kamera er registrert etter lovens krav eller ikke. Pr. nå er
438 22 kamera i Oslo registrert, og det trengs flere til å registrere
439 alle. Informasjonen registreres direkte inn i
<a
440 href=
"http://www.openstreetmap.org/">OpenStreetmap
</a>, sa hentes det
441 automatisk over i spesialkartet.
</p>
447 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/personvern">personvern
</a>.
451 <div class=
"padding"></div>
454 <div class=
"title"><a href=
"Endelig_er_Debian_Lenny_gitt_ut.html">Endelig er Debian Lenny gitt ut
</a></div>
455 <div class=
"date">2009-
02-
15 11:
50</div>
457 <p>Endelig er
<a href=
"http://www.debian.org/">Debian
</a>
458 <a href=
"http://www.debian.org/News/2009/20090214">Lenny
</a> gitt ut.
459 Et langt steg videre for Debian-prosjektet, og en rekke nye
460 programpakker blir nå tilgjengelig for de av oss som bruker den
461 stabile utgaven av Debian. Neste steg er nå å få
462 <a href=
"http://www.skolelinux.org/">Skolelinux
</a> /
463 <a href=
"http://wiki.debian.org/DebianEdu/">Debian Edu
</a> ferdig
464 oppdatert for den nye utgaven, slik at en oppdatert versjon kan
465 slippes løs på skolene. Takk til alle debian-utviklerne som har
466 gjort dette mulig. Endelig er f.eks. fungerende avhengighetsstyrt
467 bootsekvens tilgjengelig i stabil utgave, vha pakken
468 <tt>insserv
</tt>.
</p>
474 Tags:
<a href=
"tags/debian">debian
</a>,
<a href=
"tags/debian edu">debian edu
</a>,
<a href=
"tags/norsk">norsk
</a>.
478 <div class=
"padding"></div>
481 <div class=
"title"><a href=
"F__rste_vellykkede_videostr__m_fra_NUUG.html">Første vellykkede videostrøm fra NUUG
</a></div>
482 <div class=
"date">2009-
02-
11 06:
30</div>
484 <p>Jeg ble glad for å se under
485 <a href=
"http://www.nuug.no/aktiviteter/20090210-compiz/">gårdagens
486 medlemsmøte
</a> i NUUG Oslo at utsending av live-video fra møtet
487 fungerte for første gang. Forrige gang ble det ved en teknisk tabbe
488 sendt video uten lyd. Vi kan takke Ole Kristian Lien og resten av
489 videogruppen i NUUG for at nå NUUG-medlemmer over det ganske land
490 kunne se foredraget samtidig med oss i Oslo. Vi opplevde til og med
491 under møtet å motta spørsmål via IRC som ble besvart der og da.
492 Opptaket publiseres så snart det er kopiert over til NUUGs
493 webserver og komprimert.
</p>
499 Tags:
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/video">video
</a>.
503 <div class=
"padding"></div>
506 <div class=
"title"><a href=
"Min_reprap_tar_sakte_form.html">Min reprap tar sakte form
</a></div>
507 <div class=
"date">2009-
02-
03 13:
30</div>
509 <p>Min reprap begynner å ta form. Den er nå kommet så langt at den er
510 blitt en kubisk ramme. Z-aksen er montert men ikke kalibrert, og det
511 hele er klart for litt enkel testing. Har møtt på to problemer som
512 blokkerer videre montering, men har oppnått kontakt med Audun Vaaler
513 ved Høgskolen i Østfold som forteller at de er nesten ferdig med et
514 tilsvarende byggesett som det jeg tar utgangspunkt i, og håper de kan
515 forklare hvordan de kom rundt problemene. De to problemene er
516 relatert til Z-aksen og Y-aksen.
</p>
518 <p>For Z-aksen, er det et stjernehjul som festes på motoraksen ved
519 tannjulet som driver z-aksebåndet og som skal holde båndet på plass.
520 Problemet med det nederste stjernejulet er at det er helt løst, og
521 blir liggende på motoren
5 mm nedenfor tannjulet, i stedet for å ligge
522 inntil tannjulet slik det skal. Mulig løsningen er å borre i
523 stjernehjulet, eller lime det fast.
</p>
525 <p>For Y-aksen, er det en plastdel som ser ut til å mangle som skulle
526 dekket to skruver som kommer i veien for kraftoverføringsmekanismen
527 fra motoren til selve aksen, slik at mekanismen kan snurre fritt.
</p>
529 <p>Når det gjelder elektronikken til min reprap, så er min gode venn
530 Anders Rosnes igang med å lodde sammen delene og han forteller at
531 koblingsbordet for Arduino er klart, og en temperatursensor og en
532 optoswitch er også klar. Gleder meg til å teste dem. Må bare finne
533 ut hvordan jeg laster opp firmware i Arduino-en. :)
</p>
535 <p>Når det gjelder NUUGs reprap-prosjekt, så er det framgang og Ole
536 Kristian, Tollef og Ketil besøke IFI for å få fortgang i produksjon av
537 plastdeler, og Ole Kristian forteller at han har funnet en kilde til
538 de fleste metalldelene. Gleder meg til å se resultaten av det
545 Tags:
<a href=
"tags/3d-printer">3d-printer
</a>,
<a href=
"tags/norsk">norsk
</a>,
<a href=
"tags/nuug">nuug
</a>,
<a href=
"tags/reprap">reprap
</a>.
549 <div class=
"padding"></div>
551 <p style=
"text-align: right;"><a href=
"index.rss"><img src=
"xml.gif" alt=
"RSS feed" width=
"36" height=
"14"></a></p>
565 <li><a href=
"archive/2009/01/">January (
8)
</a></li>
567 <li><a href=
"archive/2009/02/">February (
8)
</a></li>
569 <li><a href=
"archive/2009/03/">March (
4)
</a></li>
576 <li><a href=
"archive/2008/11/">November (
5)
</a></li>
578 <li><a href=
"archive/2008/12/">December (
7)
</a></li>
589 <li><a href=
"tags/3d-printer">3d-printer (
8)
</a></li>
591 <li><a href=
"tags/amiga">amiga (
1)
</a></li>
593 <li><a href=
"tags/aros">aros (
1)
</a></li>
595 <li><a href=
"tags/debian">debian (
3)
</a></li>
597 <li><a href=
"tags/debian edu">debian edu (
4)
</a></li>
599 <li><a href=
"tags/english">english (
6)
</a></li>
601 <li><a href=
"tags/fiksgatami">fiksgatami (
1)
</a></li>
603 <li><a href=
"tags/ltsp">ltsp (
1)
</a></li>
605 <li><a href=
"tags/multimedia">multimedia (
2)
</a></li>
607 <li><a href=
"tags/norsk">norsk (
26)
</a></li>
609 <li><a href=
"tags/nuug">nuug (
24)
</a></li>
611 <li><a href=
"tags/personvern">personvern (
3)
</a></li>
613 <li><a href=
"tags/reprap">reprap (
8)
</a></li>
615 <li><a href=
"tags/rss">rss (
1)
</a></li>
617 <li><a href=
"tags/stavekontroll">stavekontroll (
1)
</a></li>
619 <li><a href=
"tags/video">video (
5)
</a></li>
621 <li><a href=
"tags/web">web (
2)
</a></li>
627 <p style=
"text-align: right">
628 Created by
<a href=
"http://steve.org.uk/Software/chronicle">Chronicle v3.5
</a>