LAN-party games
TODO: blogpost schrijven over
Borderlands, Star Trek Online, Star Wars The Old Republic, Starcraft 2, Borderlands, Alien Swarm, Left 4 Dead 2, Forsaken World
Zet 5 thirty-somethings met hun pc op een zolder voorzien van voldoende stopcontacten, een breedbandaansluiting en een goed gevulde ijskast, en je hebt de ingrediënten voor een LAN-party. Gastheer Erik had mij voorzien van een deftige gaming pc, want op een vorige LAN-party werd mijn pc vergeleken met een voeding.
(TODO: foto invoegen)
NAS
[165247.245675] scsi10 : usb-storage 2-5:1.0
[165248.244650] scsi 10:0:0:0: Direct-Access ST312002 6AS PQ: 0 ANSI: 2 CCS
[165248.272517] sd 10:0:0:0: Attached scsi generic sg10 type 0
[165248.273006] sd 10:0:0:0: [sdh] 234441648 512-byte logical blocks: (120 GB/111 GiB)
[165248.275218] sd 10:0:0:0: [sdh] Write Protect is off
[165248.275224] sd 10:0:0:0: [sdh] Mode Sense: 28 00 00 00
[165248.276099] sd 10:0:0:0: [sdh] No Caching mode page present
[165248.276104] sd 10:0:0:0: [sdh] Assuming drive cache: write through
[165248.278758] sd 10:0:0:0: [sdh] No Caching mode page present
[165248.278763] sd 10:0:0:0: [sdh] Assuming drive cache: write through
[165248.298543] sdh: sdh1 sdh2
[165248.301135] sd 10:0:0:0: [sdh] No Caching mode page present
[165248.301139] sd 10:0:0:0: [sdh] Assuming drive cache: write through
[165248.301142] sd 10:0:0:0: [sdh] Attached SCSI disk
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000f 061 051 006 Pre-fail Always - 0
3 Spin_Up_Time 0x0003 097 096 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 1
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 078 060 030 Pre-fail Always - 67276141
9 Power_On_Hours 0x0032 077 077 000 Old_age Always - 20753
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 083 083 020 Old_age Always - 17524
194 Temperature_Celsius 0x0022 053 057 000 Old_age Always - 53
195 Hardware_ECC_Recovered 0x001a 061 051 000 Old_age Always - 0
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0000 100 253 000 Old_age Offline - 0
202 Data_Address_Mark_Errs 0x0032 100 253 000 Old_age Always - 0
/dev/sg0 ATA Hitachi HDT72101 ST6O 1953525167 blocks
/dev/sg7 WD My Book 1110 2003 -389310465 blocks
/dev/sg10 WDC WD20 00JD-00HBB0 390721967 blocks
Starting 100 % Generic Short Test on drive /dev/sg10 (^C will abort test)
-Starting 30 second sequential reads from block 0 on drive /dev/sg10
-Starting 30 second sequential reads to end of disk on drive /dev/sg10
-Starting 30 second random reads on drive /dev/sg10
-Starting 30 second random seeks on drive /dev/sg10
Generic Short Test PASSED on drive /dev/sg10
0.00user 2.05system 1:58.22elapsed 1%CPU (0avgtext+0avgdata 2448maxresident)k
0inputs+40outputs (0major+206minor)pagefaults 0swaps
Drive /dev/sg10 does not support DST - generic long test will be run
Starting generic long (full sequential verify) test (234441647 blocks) on drive /dev/sg10 (^C will abort test)
Sequential Test 5 % complete on drive /dev/sg10
Sequential Test 10 % complete on drive /dev/sg10
Sequential Test 15 % complete on drive /dev/sg10
Sequential Test 20 % complete on drive /dev/sg10
Sequential Test 25 % complete on drive /dev/sg10
Sequential Test 30 % complete on drive /dev/sg10
Sequential Test 35 % complete on drive /dev/sg10
Sequential Test 40 % complete on drive /dev/sg10
Sequential Test 45 % complete on drive /dev/sg10
Sequential Test 50 % complete on drive /dev/sg10
Sequential Test 55 % complete on drive /dev/sg10
Sequential Test 60 % complete on drive /dev/sg10
Sequential Test 65 % complete on drive /dev/sg10
Sequential Test 70 % complete on drive /dev/sg10
Sequential Test 75 % complete on drive /dev/sg10
Sequential Test 80 % complete on drive /dev/sg10
Sequential Test 85 % complete on drive /dev/sg10
Sequential Test 90 % complete on drive /dev/sg10
Sequential Test 95 % complete on drive /dev/sg10
Generic Long Test PASSED on drive /dev/sg10
0.92user 7.10system 1:00:21elapsed 0%CPU (0avgtext+0avgdata 2416maxresident)k
0inputs+8outputs (0major+201minor)pagefaults 0swaps
Checking for bad blocks in non-destructive read-write mode
From block 0 to 117220823
Checking for bad blocks (non-destructive read-write test)
Testing with random pattern: done
Pass completed, 0 bad blocks found.
314.29user 189.31system 6:03:43elapsed 2%CPU (0avgtext+0avgdata 4656maxresident)k
468883344inputs+468883296outputs (1major+373minor)pagefaults 0swaps
Checking for bad blocks in read-write mode
From block 0 to 117220823
Testing with pattern 0xaa: done
Reading and comparing: done
Testing with pattern 0x55: done
Reading and comparing: done
Testing with pattern 0xff: done
Reading and comparing: done
Testing with pattern 0x00: done
Reading and comparing: done
Pass completed, 0 bad blocks found.
1177.04user 375.63system 8:56:29elapsed 4%CPU (0avgtext+0avgdata 4112maxresident)k
937766592inputs+937766592outputs (0major+355minor)pagefaults 0swaps
-rw-r--r-- 1 root root 0 2012-04-18 07:18 badblocks-w.txt
De Zwaarste Lijst 2012 downloaden met bash
Naar jaarlijkste traditie trakteerde Alex Agnew de Studio Brussel luisteraars op De Zwaarste Lijst. En naar ondertussen al even jaarlijkse traditie geef ik even de bash commando's om de zware gitaren te downloaden en samen te voegen naar één mp3.
Dit jaar helaas had men bij Studio Brussel het geniale idee om de naamgeving van de files een klein beetje te veranderen. Waar er vroeger alleen een volgnummer was, zit er nu ook de naam van het eerste en laatste nummer van dat uur in. Meh.
Van de vorige keren weet ik nog dat de mp3's gehost staan op de server od.mp3.streampower.be. Ik gebruikte:
curlom de webpagina http://www.stubru.be/programmas/dezwaarsteshow/dezwaarstelijst2012 binnen te halengrepom alle lijnen met mp3.streampower te vinden- 2 x
sedom het resultaat op te kuisen om zo alleen de URLs te bekomen. wgetom de zo bekomen mp3-lijst te downloaden.
Alles tesamen is dat (te copypasten voor uw gemak):
Om samen te voegen naar 1 mp3:
Getest op Debian en op een MacBook Air met MacPorts geïnstalleerd (voor wget en ffmpeg). Windows users: sorry.
2012
Ik heb de film 2012 nog altijd niet gezien. Spesjaal om alle Maya-bijgelovigen te jennen, ga ik wachten tot 21 december 2012 om die film te bekijken. Har har har!
Ik ben van plan om die vrijdagavond ineens een filmmarathon te doen, met alleen maar rampenfilms. Een paar vrienden uitnodigen, pizza, popcorn, ambiance en tussendoor een beetje tweeten over de ramp die zich op dat moment afspeelt op het scherm. 't Zou wel leuk zijn als er die avond nog mensen zo'n rampenfilmmarathon zouden doen bij hen thuis en dat we allemaal samen de 2012-believers een beetje pesten. 
2012 staat in ieder geval op het programma. Welke rampenfilm mag er zeker niet ontbreken? De ramp moet liefst zo groot mogelijk zijn, dus geen klein brandje, vulkaanuitbarsting of bootongeval. Als het even kan ook geen meteoriet die op het laatste nippertje opgeblazen wordt. Dus liefst films waarin minstens 90% van de wereldbevolking het niet overleeft (een zombie leeft niet dus dat mag ook) en een happy end is niet noodzakelijk.
Ik heb al een lijst met apocalyptische films gevonden maar suggesties zijn zeker welkom!
Een nieuwe uitdaging!
Het is officieel: vanaf 1 maart 2012 ga ik aan de slag als Software Tester/QA Engineer bij DYMO in Sint-Niklaas!
Dus in plaats van dingen te herstellen, ik ga ze zelf zo hard mogelijk mogen proberen breken.
Met de bedoeling uiteraard dat dit allemaal verholpen wordt vóór jullie in de winkel een labelprinter gaan kopen.
Wat mij vooral aanspreekt in deze job:
- Ik ga kunnen "spelen" met allerlei technologieën die mij interesseren, onder andere ook Linux en allerlei mobile platformen.
- Zorg voor kwaliteit en oog voor detail is altijd al iets wat ik in mijn werk probeer te verwerken.
- Misschien nog het belangrijkste van al: ik ga rechtstreeks een bijdrage kunnen leveren aan producten die je in de winkel gaat zien liggen. Qua job satisfaction kan dat wel tellen!
- Dat DYMO in mijn woonplaats Sint-Niklaas gelegen is, dat is natuurlijk ook mooi meegenomen. Ik zal mijn fietsbanden maar al oppompen.

Giveaway: Duracell USB-oplader - de winnaar
De winnaar van de giveaway werd bepaald door een MD5sum te berekenen van naam + emailadres + hostname + onderwerp + commentaar van alle inzendingen. De inzendingen werden dan op volgorde van de MD5sum gesorteerd.
0b18343f30ab4c4d57fef5e60178342b - Sébastien
1a3b63fc0cd4bfe389e1e4ad98ba2997 - ap_llo
2c995fbd05751152b0d5f6302089e4dd - Bruno
41088504757cd4e1366a576305b72a12 - Arne
6afc3f76b47e27a1cd94ede3fae37ab9 - Gino
8a91a3df1ef42459687061e7b5548ff5 - Tom
93e5850a2a4c7743624d982988c5d870 - oliynyk dima
a1ba50f03b33241711d2dc1d8f310e4c - xtofke
b885e1babbf6916b8449089cf08d0a6b - Bram
bec8eff1e7a1eb6d57e33963f5dcf812 - Swassena
f61e9fe453411e4a1342a6099b933a7f - Béate Vervaecke
Karen, my people will call your people.
Giveaway: Duracell USB-oplader
Ik heb mij een week geleden een Duracell usb-oplader gekocht. Als je daar meer over wil weten, dan verwijs ik graag door naar de blog van Ysabel: http://ysabje.wordpress.com/2011/11/22/getest-duracell-usb-oplader-givea...
Nu moet het toch wel lukken dat ik enkele dagen later via Twitter nóg een usb-oplader gewonnen heb. Net zoals bij Ysabel is het er eentje van 3 uur. Omdat enige ironie mij niet vreemd is, ga ik ook eens voor blogger spelen en van giveaway doen.
Dit zijn de spelregels:
- Laat een reactie achter waarin je beschrijft wat je een Duracell usb-oplader gaat doen. Kwestie van niet alleen maar "me too" reacties te hebben, het moet interessant blijven nietwaar?

- Zorg ervoor dat je een werkend emailadres hebt ingevuld, zodat ik je achteraf kan contacteren om je adres te vragen.
- De wedstrijd loopt tot en met Newtonmas.
Een onschuldige pseudo-random number generator zal dan de winnaar aanduiden.
UPDATE: De winnaar is bekend!
mu - maildir utils
Ik zag deze tweet passeren van @DriesBultynck:
zoekt nog steeds een manier om een reeks mails uit gmail te exporteren naar excel (incl. date + content). Niemand?
Volgens @haploc zou dat wel moeten lukken met Perl, Email::Simple en Spreadsheet::SimpleExcel. Aangezien ik niet zo vlot ben met Perl, heb ik een andere oplossing gezocht en gevonden: mu (kort voor Maildir Utils).
Helaas heeft mu geen kant-en-klaar pakket voor Debian dus moet het van source geïnstalleerd worden.
wget http://mu0.googlecode.com/files/mu-0.9.7.tar.gz
tar -xvf mu-0.9.7.tar.gz
cd mu-0.9.7
Op mijn systeem ontbraken nog een paar dependencies, met een paar keer ./configure te draaien heb ik ze kunnen achterhalen:
Daarna mu configureren:
Als alles goed gegaan is, dan krijg je op het einde ongeveer zo'n output:
-----------------------------
Xapian version : xapian-config - xapian-core 1.2.3
GLib version : 2.24.2
GMime version : 2.4.14
GTK+ version : 2.20.1
GIO version : 2.24.2
Guile version : 1.8.7
Build unit tests (glib >= 2.22) : yes
Build 'mug' toy-ui (requires GTK+) : yes
McCabe's Cyclomatic Complexity tool : yes
xdg-open : /usr/bin/xdg-open
Have direntry->d_ino : yes
Have direntry->d_type : yes
-----------------------------
Daarna builden en installeren:
sudo make install
cd
Klaar? Bijna. mu werkt door een maildir te indexeren als een database, waar je dan queries op kan loslaten. Voor het indexeren gaat mu uit van een aantal zinnige defaults dus het is niet meer dan:
Afhankelijk van de grootte van de maildir kan dit even duren. Alhoewel. Bij mij viel het nog best mee:
mu: indexing messages under /home/amedee/Maildir [/home/amedee/.mu/xapian]
/ processing mail; processed: 69736; updated/new: 69736, cleaned-up: 0
mu: elapsed: 210 second(s), ~ 332 msg/s
mu: cleaning up messages [/home/amedee/.mu/xapian]
\ processing mail; processed: 69736; updated/new: 0, cleaned-up: 0
mu: elapsed: 2 second(s), ~ 34868 msg/s
real 3m32.500s
user 1m21.021s
sys 0m7.692s
Als je mu regelmatig gebruikt, dan is misschien geen slecht idee om mu index toe te voegen als cron job.
Nu mu geïnstalleerd is, kan je queries draaien zoals
Dit geeft bij mij als output:
<messages>
<message>
<from>1T3XT BVBA <info [at] 1t3xt [dot] info></from>
<to>Post all your questions about iText here <itext-questions [at] lists [dot] sourceforge [dot] net></to>
<subject>Re: [iText-questions] Adding watermark in front of the page background color</subject>
<date>1323524095</date>
<size>7149</size>
<msgid>4EE35FFF [dot] 6070006 [at] 1t3xt [dot] info</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323524308.25506_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
<message>
<from>Balder VC <lists [at] redlab [dot] be></from>
<to>itext-questions [at] lists [dot] sourceforge [dot] net</to>
<subject>Re: [iText-questions] XMLWorker & RTL</subject>
<date>1323524276</date>
<size>7769</size>
<msgid>4EE360B4 [dot] 8040008 [at] redlab [dot] be</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323524480.9255_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
<message>
<from>Balder VC <lists [at] redlab [dot] be></from>
<to>Post all your questions about iText here <itext-questions [at] lists [dot] sourceforge [dot] net></to>
<subject>[iText-questions] Fwd: Re: XMLWorker & RTL</subject>
<date>1323525006</date>
<size>19787</size>
<msgid>4EE3638E [dot] 7020708 [at] redlab [dot] be</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323525223.17054_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
</messages>
Meer voorbeelden van queries zijn te vinden op de mu cheatsheet.
Nu is het gewoon nog een kwestie van:
- Een lokale IMAP-server installeren die Gmail binnentrekt (zelf ben ik nogal fan van Dovecot)
- De gepaste query verzinnen, met XML output.
- De XML-file binnentrekken in een spreadsheetprogramma.
Voila, dit is één mogelijke oplossing.
Een bug die maar niet gefixt geraakt
Aantal dagen sinds bug #32415 gemeld werd
Nog enkele maanden en er is een Ubuntu bug die 6 jaar oud is.
Ondanks de beschrijving, gaat het niet alleen om Apple Bluetooth keyboards, maar ook om Logitech MX900, MX5000, MX1000, Lenovo bluetooth,... Ik vermoed dat die keyboards en muizen allemaal dezelfde bluetooth dongle gebruiken.
En kom nu niet af dat het allemaal de schuld is van hardwarefabrikanten, want in Opensuse werkt dit wél zoals het hoort.
Ik vind dat erg. 6 jaar staat die bug open, users zitten daar logs te dumpen tot en met, en geen enkele developer die er naar omkijkt. En als er dan één user is die een extreem gecompliceerde workaround beschrijft (die zelfs niet voor iedereen werkt!), dan wordt de bug koudweg afgesloten.
Een mens zou voor minder overschakelen naar Apple of Microsoft.
Btrfs: het verdict
Btrfs is mooi op papier. Héél mooi. Copy-on-write. Snapshots. Vóór iedere apt-get upgrade automatisch een snapshot met apt-btrfs-snapshot. Geen zorgen meer over partities. Online devices verwijderen en weer toevoegen, een beetje zoals bij een Drobo, maar dan Free Software.
Echt waar, btrfs is fun.
MAAR!!!
Dan stel je plots vast dat je pc er 7 minuten over doet om te booten, in plaats van de gebruikelijke 20 seconden. Ik herhaal: ZE-VEN MI-NU-TEN. Bleek dat er een paar btrfs snapshots corrupt waren, en dat fsck.btrfs ze probeerde te herstellen bij het booten. Normaal is dat geen probleem, ware het niet dat fsck.btrfs nog niet af is en alleen read-only werkt. Fouten worden dus niet hersteld, bijgevolg gebeurt die fsck bij iedere reboot opnieuw.
Ik ben geen data kwijt, maar ik heb toch maar alles ge-rsync-t naar een externe schijf, de btrfs partitie geformatteerd naar ext4, en terug ge-rsync-t. Daarna bootte de pc terug onder de 20 seconden.
Btrfs gaat in de koelkast tot ze een deftige fsck hebben.
Zucht. Ik had beter moeten weten.