vrijdag 2 september 2016

Niks geen herfsttij, Huizinga!

Onlangs nam ik op facebook deel aan een conversatie over de mediëvist Johan Huizinga, en zijn standaardwerk "Herfsttij der Middeleeuwen". Huizinga schrijft wijdlopig. Soms is het heel mooi. Soms moet je er een woordenboek bij pakken, waarin je dan een vergeten betekenis vindt, voordat je het begrijpt. Ik haakte af in Hoofdstuk 12. Een bepaalde zin - ik vind hem zo weer als u wilt - las ik, leek mooi, maar ik snapte het niet. Na minstens 20 keer herlezen nog steeds niet. Het zal niet Huizinga's bedoeling zijn geweest dat de lezer dit begreep. Hallicunatoir geraaskal? Mogelijk. Litteraire masturbatie? Ja, ik denk van wel. Didactisch doeltreffend? Neen.

Ik ben geen mediëvist, maar volgens mij is het beeld dat ons op school is bijgebracht over de middeleeuwen, sterk beïnvloed door Huizinga. En volgens mij is dat beeld veel te pessimistisch.
Dat had ik al eerder geconstateerd aan de hand van de twitterfeeds van mediëvisten als @Erik_Kwakkel en @AClerkThereWas, en nu komt er weer iets bij, namelijk deze prothese, met dank aan @Teszelski.

Mogelijk is de datering, 1500 tot 1505, omzetstimulerende wishful thinking van Sotheby's. Maar ik weet iets van medische techniek. Het is specialistisch vakmanschap, en ook nu nog zeer zeldzaam. Ik vind het plausibel dat deze prothese uit dezelfde school komt als de kunstarm van Ridder Götz wiens eigen arm werd afgehakt in 1504, en wiens prothese dus inderdaad wel van rond 1505 zal dateren.

Had u gedacht dat middeleeuwers zulke protheses konden maken? Ik niet. Mogelijk is deze gemaakt door een achterkleinzoon van die van Götz' arm. Het vroegst bekende eigendom is rond 1750. En allicht zal een achttiende-eeuwse prothese vernuftiger zijn geweest dan een zestiende-eeuwse. Al doende leert men, immers.

Maar dat dondert niet. Middeleeuwers hadden prothesen! Daar gaat het om. Het was dus echt niet zo'n duistere, onwetende tijd als Huizinga ons decennialang deed geloven.

Lekker belangrijk? Ja. Ik vind het belangrijk dat invloedrijke zelfbenoemde authoriteiten die het mis blijken te hebben gehad, onklaar worden gemaakt.

maandag 11 juli 2016

Talking shit with Komrij

Negen jaar geleden alweer mocht ik voor de toen nog niet wijlen Amsterdam Weekly de toen eveneens nog niet wijlen Gerrit Komrij interviewen over zijn poepboek. Als kop suggereerde ik 'Vlakspoelers en diepspoelers', maar de redactie koos voor 'Talking shit with Komrij' met als onderkop 'Award-winning author digs into toilets'.

Encyclopedie van de stront
It’s not often that you have the opportunity to talk to one of your favourite writers. Therefore it isn’t that strange altogether that the reporter is a wee bit nervous, sitting in the garden of publishing house De Bezige Bij near Museumplein, where he’s awaiting the arrival of Gerrit Komrij. Komrij (1944)  has been a formidable force in Dutch language literature for almost four decades, winning most of the major awards.

Having covered about every literary area as a poet, prosaist, critic, essayist, playwright, translator, anthologist and polemist, he is a genuine intellectual, to put it briefly, whereas the reporter is merely intelligent, however only on days with a favourable wind direction. But then again, Komrij has just written this book about shit, so why worry?

In Komrij’s Kakafonie – Encyclopedie van de Stront (Encyclopedia of Shit), he has gathered scatological texts - writings about feces – from as far back as the ancient Greek to modern day literature, the focal point being contemporary Dutch and Flemish writings. In a splendid layout by Piet Schreuders with many reproductions from Komrij’s own scatological collection, the book deals with shit and related subjects in chapters like Body (The Arse), Act (Shitting), Movement (The Fart), Habitat (The Sanitary Fittings) and Lifestyle (The Lovers).

Don't drag your turd around, children

But why would anyone want to write a book about shit? “Because it didn’t exist in the Dutch language”, says Komrij, who turns out to be a most amiable conversation partner, much to the reporter’s relief. “I have always been very curious about scatology. When I read back the first interview I gave, back in 1968, I already announced this book for the next year. You know, there are so many cookbooks, but hardly any about the second part of the digesting process. Mind you, I am only interested in writings about shit, not in shit itself. Seeing a dog’s turd is enough to make me vomit somewhat.”

Komrij, who has been living in Portugal since 1984, has build up a valuable collection of about 150 scatological books; fourty of the rarest specimens from the sixteenth till nineteenth century are momentarily on display in a small exhibition at De Slegte antiquarian bookshop in Kalverstraat. Komrij says he finds most scatological books when he’s on the prowl for additions to his collection of older erotica. They’re hard to find though, because widows of scatology collectors have destroyed a lot, after having found out about their late husbands' peculiar interests. “For many people shit is still a taboo. And in a way the taboo has a function. You have to taboo it for children at a young age, otherwise they will drag their turd about and things will get rather messy.”

In the preface of Kakafonie Komrij states that ‘we are hypocritical when it comes to shit. Shit is shameful, but everyone roars with laughter about farts. This book levels out the last threshold of the moralists. The last taboo.’ In NRC Handelsblad critic Arjen Fortuin said that he doubts if shit is still a taboo, given the fact that so many - medical – books have been written about it. Besides, the index of Kakafonie reads as a who is who of two and a half millennia of – mainly European - literature. Komrij chuckles: “Well, you have to put something extreme in a preface. It gives the critics something to write about.” He claims he worries about a bad review for ‘about fifteen minutes. Certainly not any longer than that.’

Gerrit Komrij

Purple with white spots should worry you

The author elaborates on why he wrote the book. “A great deal of the material is very humorous, for instance the bits about constipation or farting. Take Mozart. We know from his correspondence he was really into farting. The scenes in the movie Amadeus where he’s giggling about farts are based on facts. But it’s not all about having a laugh. The way people deal with shit, and how they talk about it, tells a lot about where they stand morally or religiously.”
Not only Mozart was into farting.

Kakafonie describes how at the end of the nineteenth century a man named Joseph Pujol made a very decent living as Le Pétomane, a professional farter. He did shows in the famous club Moulin Rouge, where he smoked a cigarette through a tube attached to his southern entrance, letting the smoke escape through the northern one. On a children’s flute he played tunes, using his constrictor. His rectum bought him and his family a villa with servants. In another section of the book, American author Ethel Portnoy expands on European toilets; she mentions a typical Dutch phenomenon: the vlakspoeler (platform toilet). Komrij says, amusedly, he doesn’t have a clue as to why the Dutch seem to be so fond of inspecting their stool before flushing it towards the ocean. “Maybe it has something to do with reassuring yourself by having a quick check. If you see the product doesn’t have the usual brown color, but purple with white spots instead, you ought to be seriously worried. If you would be using a diepspoeler (standard W.C. pan without platform), you might have had purple turds with white spots for weeks without knowing it.”

In one of his own contributions Komrij writes that a human being is nothing more than a ‘bag of shit’, and as a critic, he ruthlessly runs reputations into the ground. Is Komrij a misanthrope? He laughs. “No, I’m not. I am being paid to grumble. For a while I have tried to write positive reviews. That resulted not only in awful prose, but has cost me friendships. People said I had changed and thought I had gone mild, or, worse, was growing demented. And I was only 35 at the time.”

Gerrit Komrij, Komrij’s Kakafonie, De Bezige Bij

woensdag 2 maart 2016

Goede Uitgevers, Slechte Uitgevers

Ben je zelfstandig tekstschrijver en/of vertaler, dan heb je te maken met uitgevers. En je hebt goede uitgevers, en slechte uitgevers. Hoe herken je welke wat is? Twee profielschetsen.


Een goede uitgever zegt bij elke opdracht duidelijk wat de deadline is, en die deadline is ook haalbaar. Als je trouw je deadlines haalt, dan bouw je krediet op. Dat betekent dat je mettertijd een potje kunt breken.
Een goede uitgever geeft enige rek in de deadline als jij toevallig krap in je tijd zit. Als je kwaliteit levert, dan mag je die kwaliteit ook wel ietsje later inleveren - als je er maar geen gewoonte van maakt.

Bij een slechte uitgever komen de opdrachten op als kakken en/of hebben ze een vage deadline en/of springen deadlines onverwacht naar voren. Dergelijk gestunt dwingt je tot overuren of tot het weigeren van andere opdrachten. Dat is hinderlijk tot schadelijk, maar een slechte uitgever heeft daar geen boodschap aan.

Betreft het een periodiek, dan heeft zelfs een slechte uitgever daar meestal wel een planning voor. Jij wilt rekening houden met die mensen en je wilt het gezeik vóór zijn, dus je vraagt die planning op. Daar staat dan zoiets:

kopij op de redactie:   15 - 29 jozuari  
eindredactie:           30 jozuari - 15 aprember  
zetwerk & DTP:          16 aprember - 1 julo  
drukker:                2 en 3 julo  
distributie:            6 julo

Nou, dat is duidelijk, toch? Jij bent de schrijver. Jij levert de kopij aan. Wat is jouw deadline? 29 jozuari. Denk je. Logisch! Ja toch?

MIS! Jouw tekst, die langs een corrector geweest is, die in lengte minder dan 3% afwijkt van het gevraagde aantal woorden of karakters, waarin koppen, tussenkoppen en streamers kant-en-klaar zijn aangegeven, waar m.a.w. de eindredactie nog geen 5 minuten werk aan heeft, MOET en ZAL vóór 15 jozuari binnen zijn. Dat hoor je uiteraard pas op 14 jozuari, als het te laat is om er nog iets aan te doen. En hoe háál je het in je hersens om hun interne planning te gebruiken?

Dus jij doet je best om je te richten naar hun planning en je krijgt stank voor dank.

Redactie en eindredactie

Een goede uitgever heeft een redactie die verantwoordelijkheid neemt. Daar heb je geen omkijken naar.

Een slechte uitgever heeft een redactie die taalfouten en geleuter in je tekst moffelt en een eindredactie die daar niets aan doet maar in plaats daarvan jou de drukproef stuurt "ter controle". Het is jouw naam die boven dat artikel staat. Dus het is jouw reputatie die schade lijdt van die lakse eindredactie. Dus je verbetert die drukproef, en je besluit om die tijd bij de volgende opdracht in rekening te brengen, want de rekening voor dit artikel is al de deur uit.

Hoe komen ze ermee weg?

Hoe kan dit? Nou, follow the money. Een goede uitgever bestaat van de verkoop van uitgaven, die is blij met jouw kwaliteitscontent, want dat lezen de lezers graag en daar vaart die uitgever wel bij.

Een slechte uitgever heeft een deal met een organisatie die dat periodiek belangrijk vindt. De uitgever vangt geld, ook als geen hond dat periodiek zou lezen. (Jij wordt ook niet ingehuurd door die uitgever, maar door die organisatie. Omdat je haar gedachtegoed zo goed weet te verwoorden. Die organisatie is blij met je. Laat daar geen misverstand over bestaan. )

Een slechte uitgever heeft geen respect voor auteurs, omdat daar geen financiële reden toe is. Fatsoen? Voor een freelancer?

Nog een lekkere horrorstory tot besluit

Ook bij een slechte uitgever zijn er mensen die jouw werk lezen en aanbevelen bij anderen. Zo kan het gebeuren dat je een mooie opdracht krijgt van de Stichting X, namelijk een uitgebreid artikel dat Stichting X op haar website wil plaatsen voor de mensen die Stichting X om raad vragen. Jij maakt dat artikel. Stichting X is blij. Jouw rekening betalen ze grif. Het artikel is dan hun eigendom. So far so good.

Enige tijd later vraagt Stichting X jou toestemming om dat artikel te plaatsen in dat periodiek van Slechte Uitgever. Jij zegt: natuurlijk, het is jullie eigendom, je mag ermee doen wat je wilt. Dus jouw artikel verschijnt in het periodiek. Maar dan claimt Slechte Uitgever rechten op jouw artikel. Stichting X mag jouw artikel niet op haar website plaatsen, dus mag er niet mee doen wat ze van plan was - waar ze jou voor betaald heeft.

Verontwaardigd? Nou en of. Jij mailt. Auteursrecht is onvervreemdbaar. Die claim kan niet. Stichting X boekt geen enorme winsten op dat artikel, maar wil het gewoon eerlijk gebruiken waar het voor bedoeld is. Fair use, heet dat. Slechte Uitgever volhardt evenwel: "Wij zijn uitgever, het is van ons". Er dreigt een conflict. Jij overweegt juridische stappen. Het suddert een tijdje. Dan weet iemand op miraculeuze wijze Slechte Uitgever te bewerken en zo loopt het uiteindelijk met een sisser af. Slechte Uitgever geeft Stichting X toestemming voor fair use.

Werk weigeren

Moet je dan opdrachten van een slechte uitgever weigeren? Dat is een goede vraag. Heb je hart voor de zaak en zijn de lezers blij met jouw werk en heb je een redelijk uurtarief, dan kan dat opwegen tegen de hufterigste van alle uitgevers.

Maar er zijn grenzen.

woensdag 25 november 2015

The learning curve of Google Now

Update 2015-12-11 I started writing this post to vent my frustration with Google Now. It mainly lists some things that I was really disappointed with. I disabled it altogether. But some people pointed out some things that made me reconsider. Since then, I found some pro's as well. Plus, I learned that I shouldn't have tried to learn to operate a smartphone just by operating a smartphone. In my case (I'm a laptop addict), it's much more efficient find on the laptop how things work on the smartphone. Some people may operate a smartphone like a body part, it's not nearly as user-friendly as I had expected.

One pro of Google Now is voice control - if you speak English: it's much more intelligent in English than it is in Dutch (my native language). For example, the command 'zet bluetooth aan' brings up the bluetooth app. Which you then must turn on manually. But the command 'turn on bluetooth' does just that.

Why Google Now made me Angry

About five years ago, some googler on YouTube, while explaining some function in Chrome, said: "One of the key tenets in Google is that we don't want to interrupt the user". I didn't know what a tenet is, so I looked it up. A tenet is a belief, a creed. So five years ago, Google believed interrupting the user was wrong.

I liked that. A lot. I hate "Are you sure?" pop-ups on totally trivial changes. I hate pop-ups, full stop. I hate ads. I hate basically any machine that interrupts my train of thoughts, that deliberately tries to distract me from what I intend to do.

Google Now does just that. That's why I hate it, that's why it makes me angry.

Why Google Now Sucks

It started when I bought my first smartphone, about a month ago. It had a function called swipe launch: swipe up from home, and you launch - yes - Google Now. This meant I launched Google Now unintentionally many many many times, while scrolling.

At first, I thought I'd give it a try. But it kept presenting me things I didn't want to know, at the wrong moment. A partial list:

  • I don't want to read what the temperature outside is, I can go out and feel it. I can even look at a thermometer!
  • I don't want to see perpetual calender reminders. I know all my appointments by heart a few days in advance.
  • I don't want to know when new e-mail comes in, I have the discipline to check, daily, and do not want to be disturbed at other times.
  • I don't want to see "news" items "popular in my area". I read a good newspaper, and I follow a couple of other news feeds.
  • I don't want to see "information" that other people "like me" find interesting. This is because the criteria that determine "like me" miss the point, hopelessly. Apparently, most people my age and gender are interested in cars, games, gadgets, nude women, superficial TV-shows, and any consumer society whim. I'm not.
  • It kept asking me which means of transportation I use mostly. But I walk, cycle, drive or ride public transport in just about any mix that's handy - so there is no way I can answer that question. Yet it kept asking me.
  • When visiting a customer, it triumphantly reminded me where I had parked my car. Except it was totally wrong. It told me the place where I had stopped moving fast, and stopped to look for a while. I got there by public transport, my car was about 60 kilometers away from where it said it was.

Google Now is like the encyclopedia salesman at your door, a very agressive and stubborn one, when you already have a very good encyclopedia, or two. Piss off, you idiot!

So, I went and took all the necessary steps to disable Google Now on my smartphone.

But, Google Now is designed to invade your online activities, anywhere, everywhere. It popped up on my laptop. So I disable it there. I operate a couple of old laptops, infrequently. It popped up on them. That made me very angry. If my bookmarks get synced across three different machines, why not sync undesired features in the same way? Never before did I have to explain Google more than once that I don't want something. Never before have I seen a Google product so stubbornly ignoring that I want it to stay away from me.

That is what I find fundamentally wrong with Google Now. Google used to show they understood. Now they deliberately keep disturbing me. Google is not stupid, so the nag factor must be by design. They keep nagging you, because it works with most. Most people do get lured into using it, making more people click more ads.

Don't I want to know anything?

I am interested in a whole lot of other things. And I know how to find them. I don't need ads. I search. Using Google. So it's not that I hate Google. I love Google (the search engine), it helps me find what I'm looking for, faster and more to the point than any other search engine out there. I do try others, they do not help me as well as Google does.

Internet is pull, not push. I've learned to distrust pretty much all information that companies push to me unsolicitedly. I've also learned that information I went out and looked for, and found, is the most valuable kind of information.

Google has a reputation for hiring bright people. How come no googler was so bright as to predict the anger-inducing properties of Google Now? I really don't understand. I guess most people are more gullible than me.

The best minds of my generation are thinking about how to make people click ads. I think that sucks.

said facebook big data guru Jeff Hammerbacher, and then he left facebook, in 2013. I think he was right then and he is still right today.

zondag 16 augustus 2015

Groeilampjes worden Rocket Science

Een écht goed idee heb je nooit in je eentje. Enige tijd geleden deed Loket Diversen verslag van Joule Robbin Hood, een simpel systeempje om bijna-lege batterijen te gebruiken als energiebron voor het kweken van plantjes onder led-licht.

In het nieuws deze week: het ruimtestation ISS gebruikt vergelijkbare technologie (en nog wat extra technologie erbij) om sla te kweken! Het systeem heet het Vegetable Production System, koosnaam Veggie. De astronauten recreëren met de verzorging van plantjes en kunnen bovendien ook eens verse groenten eten.

The Vegetable Production System (VEGGIE) provides a means to supply crews with a continuous source of fresh food and a tool for relaxation and recreation.

Aldus NASA. Wat verse rucola zal zeker een verademing zijn bij al dat voer uit tubes. Veggie wordt gemaakt door de firma Orbitec en bestaat verder uit een matras in een bak met in hoogte verstelbare rode en blauwe leds. Die matras bevat de overige voedingsstoffen voor de plantjes, want potgrond, gewichtloos in de ruimte, dat wordt natuurlijk een rommeltje.

Leds zijn zeer energiezuinig en dat komt goed van pas in een ruimtestation waar je louter afhankelijk bent van zonnepanelen. Maar rocket science? Welnee. Het ligt binnen handbereik van iedereen die maar wil, zoals wij op Loket Diversen en in (paywall alert) Elektor reeds in 2013 uit de doeken deden.

Niettemin, zonder aarzeling zien we mogelijkheden voor langdurige ruimtereizen. NASA weer:

Future spaceflight missions could involve four to six crew members living in a confined space for an extended period of time. [...] The farther and longer humans go away from Earth, the greater the need to be able to grow plants for food, atmosphere recycling and psychological benefits.

O ja, laten we niet vergeten dat die plantjes ook de CO2-uitstoot van de astronauten omzetten in zuurstof.

Ook moeten we inzien dat vegetariër-astronauten duidelijk in het voordeel zijn. Vergaat onze planeet en moeten wij op dwaaltocht door outer space naar een andere, dan wordt het groente en fruit eten! Hopelijk is de veggieburger tegen die tijd makkelijk te maken en smakelijk.

Onvermijdelijk is er op die reis daarentegen geen plaats voor vrome joden en moslims die hun geloof willen belijden met rituele slacht. Discriminatie? Zeker. Wel zal het de kans op vrede in de ruimte aanmerkelijk vergroten.

Ik herinner me een carnavalsschlager van de geniale Tom Manders alias Dorus:

En in de hemel is geen bier
en daarom drinken wij het hier.

Het zit er nu echter dik in dat men wel hop en gerst in de ruimte zal kunnen kweken, en water moet sowieso mee. Dus in de hemel is wél bier, tegen die tijd. Waarschijnlijker dus:

In de hemel is geen worst
en daarom laaf ik hier mijn dorst.

Proost. Op de vooruitgang!
bovenste foto: NASA, onderste foto (ja hij is onscherp) Loket Diversen.

vrijdag 6 februari 2015

Howto: persistent device names on Raspberry Pi

  *** Nerd Alert!    *** Geek Stuff! ***  

This text explains how to set up a persistent device name in Raspbian Linux. If you want to get cooking straight away, skip to the steps in detail.


By design, a USB device is assigned a unique address by its host, but that address may change from one session (bootup) to another. Software using the device, on the other hand, is much easier to make if the address does not change. In Linux, the solution to this problem is a persistent device name. How to make that is explained below.


USB-enumeration for dummies

Elsewhere on Loket Diversen is a post about setting up Raspberry Pi (RPi) as SMS Gateway. I'm using a Huawei GSM/UMTS modem on RPi's USB port. Gammu or Gnokii deal with the modem. You specify in a config file where to find that modem: /dev/ttyUSBx (with x a number). The problem is that x may change unpredictably.

It turns out that this is by design. The process of USB address assignment is called enumeration. In a nutshell, it's a conversation between Device, Hub and Host and it goes something like this (metaphorically speaking):

Device: Wheehee, I'm plugged in!
Hub:   Host? Hey host, wake up, there's a customer!
Host:  (waking up) What? Oh, OK, well, enable a port, would you?
Hub:  (enables port)
Host:  (in a formal tone of voice) Device! Reset!
Device: Aye-aye Sir. I'm all Reset.
Host:  Device, what is your Descriptor?
Device: I'm X, from Y.
Host:  (muttering to self) Uhm, er.. where'd I leave the free addresses list? Oh here.
     (clears throat; formal voice:) Device X from Y, you shall be on address P.

Note that P is given out in order; the first Device gets ttyUSB0, the second ttyUSB1, and so on. But more importantly, note how timing isn't always the same! When booting up with two devices plugged in, one device might just respond slightly faster than the other. And next time it may be the other way around. That is why the number for x in /dev/ttyUSBx is unpredictable.[1]

Gnokii, Gammu and others

StackOverflow has a nice little overview of various open source SMS Gateway packages. I don't need large-scale SMS-messaging, so my choice was between Gnokii and Gammu. Gnokii is small and very simple. Gammu is a fork of Gnokii that took off on a life of its own. Gammu is much, much more rich in features and possibilities than Gnokii. Documentation, unfortunately, is less than perfect.

Gnokii's SMSreader-command just listens for SMS-messages, full stop. You could probably shove that into the background, but there's more to a well-behaved background process, also known in Linux/Unix as a daemon. Building a daemon is not trivial. But Gammu comes with a well-behaved daemon already, it's called Gammu-smsd. Making a message handler for that is a lot less work. That's why I chose Gammu.

A persistent device name, step by step.

One FAQ on Gammu is Device name always changes on Linux, how to solve that?  The answer given there is not very adequate. It took me quite some googling and trial & error to get it working. Hence this text.

We're using udev, Linux' device manager. It supports persistent device naming and it runs by default on any Linux distro. Just to verify:

  1. ps -A | grep udev

    should respond with something like

    156 ? 00:00:00 udevd

    Yup, it's running, process ID 156.

  2. Find out a unique enough identifier set for the device.


    lists all USB devices. This is the output in my case:

    Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
    Bus 001 Device 005: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E230/E270/E870 HSDPA/HSUPA Modem
    Bus 001 Device 004: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS]

    OK, so the modem is connected and it's USB device 005 (this time). Note the numbers. 12d1 is the Vendor ID (Huawei Technologies) and 1003 is the Product ID, this particular model modem that they make. In this case, the combination Vendor ID + Product ID is already a unique enough identifier set. (So you could skip the next two steps.)

    In other cases, things may be different. For instance, lots of devices use FTDI's USB-to-serial converter, all with the same Vendor and Product ID and you may want to have them all connected to you RPi. So you'll need some more information to distinguish one from the other(s).

  3. To find that extra bit of information, enter

    dmesg | grep usb

    the response might be a long list. Somewhere in there, you'll find something like this:

    [ 523.057081] usb 1-1.2: new high-speed USB device number 5 using dwc_otg
    [ 523.168297] usb 1-1.2: New USB device found, idVendor=12d1, idProduct=1003
    [ 523.168330] usb 1-1.2: New USB device strings: Mfr=2, Product=1, SerialNumber=0
    [ 523.168346] usb 1-1.2: Product: HUAWEI Mobile
    [ 523.168362] usb 1-1.2: Manufacturer: HUAWEI Technology

    Note idVendor and idProduct. We'll use them later on. Note also SerialNumber=0. I don't trust serialnumbers that are zero. With other devices you should see a non-zero serial number, usually on a line of its own.

  4. dmesg | grep ttyUSB

    will list all ttyUSB devices, like so:

    [ 6.546558] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB0
    [ 6.571094] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB1

    My modem occupies 2 ttyUSB's. By trial and error, I found out that sending and receiving works on ttyUSB1. I don't know why that is.

  5. To get an idea of all the attributes of a USB-device, try:

    udevadm info --name=/dev/ttyUSB1 --attribute-walk

    This walks along a branch of USB devices and lists, for each device, all possible attributes in the udev rules key format.[2]. Try it! If your device has a serial number, you will see it there. I always find it reassuring when different sources report the same information.

  6. Almost done.

  7. Create a file /etc/udev/rules.d/99-usb-serial.rules (yes you'll need root rights) with something like this line in it:

    SUBSYSTEM=="tty", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1003", SYMLINK+="kpn_dongel"

    with, of course, your values for idVendor, idProduct and the symlink. You may need to add idSerialNumber (or whatever) to make it unique. Add a similar line for each device you want a symlink for.

  8. Now load the new rule. Rebooting is the crass way, this is much more elegant:

    sudo udevadm trigger

  9. Finally, test it. Three useful commands:

    ls -l /dev/kpn_dongel

    will give something like:

    lrwxrwxrwx 1 root root 7 Jan 17 21:48 /dev/kpn_dongel -> ttyUSB1

    ls -l /dev/ttyUSB1

    Will give something similar to:

    crw-rw---T 1 root dialout 188, 1 Jan 17 21:48 /dev/ttyUSB1

    Note the ownerships and group memberships. Software will have to be aware of this, chown and chgrp may come in handy. But that's a different subject.

    Finally, the output of this should point to the appropriate ttyUSB, and you'll recognise vendor name in there too.

    udevadm test -a -p $(udevadm info -q path -n /dev/kpn_dongel)

That's it! In gammu's config file, you can now refer to the device by persistent name /dev/knp_dongel (for this example). And it won't change.

Final notes

Convenient file editing on RPi

My Pi is the early 256MB version. Anything you run on the GUI over VNC will lag. So I'm using it headless over SSH. Does it make sense to be working in 256 or even 512 MB using Pi's rather primitive nano editor, when I'm actually operating a nice laptop with 4000 times more memory and all the tools that I'm familiar with? I think not. So I used Samba to make a shared directory on my Pi, and I use Notepad++ on my laptop to edit the files in that directory. The only thing I need to take care of is ANSI-encoding and Linux line ending, but NPP can handle that for me.
And then all I need to do on Pi in a case like this is something like sudo cp [myshare]/filename /dev/udev/rules.d/ .

I wrote this post because I never found a single text with all the necessary information in one place. It's useful for me, I hope it's useful for you.

Sources and references

1. The conversation was paraphrased from an Powerpoint by Atmel that is no longer online. Instead, Atmel have a nice Application Note that also explains enumeration in detail. back.

2. Source: debian wiki on udev. back.

3. Thanks to Michael Ludvig's Hintshop for the syntax in step 6 and the ls tests in step 8.

zondag 28 december 2014


Het is de tijd van het jaar om af te tellen. Over een dag of wat dromt er een massa mensen bijeen op een plein om mee te zingen met liedjes die iedereen al decennia kan dromen. California Rhapsody Hotel to Heaven Bohemian Stairway, de volgorde maakt niet uit, de uitkomst is allang bekend. Verrassingen zijn slecht voor de kijkcijfers en daarom uitgebannen. Maar het telt af. Dan heeft het toch nog iets spannends.

U ziet hier een filmpje, getiteld Aftellen (Counting Down). Het begon ermee dat ik op een rommelmarkt een aftelmechaniekje vond. De verkoper en ik waren het erover eens dat zo'n mooi mechaniekje een tweede leven verdiende. Voor een euro mocht ik het meenemen.

Enfin, het werd onderdeel van een hedonistisch werk. Dat is een werk om genoegen in te scheppen. Bij aanvang van een hedonistisch werk is niet bekend wat het eindresultaat zal worden. Het materiaal mag de weg wijzen, als dat zo uitkomt. Zijpaden worden welbewust ingeslagen en verkend, kunnen uitmonden in doolhoven die soms doodlopen, soms na lang zoeken toch een uitweg blijken te hebben.

In dit geval was er een mechanisch mysterie te temmen (het mechaniekje moet op een zeer bepaalde manier zijn opgehangen, anders blokkeert het) en had ik elektronica bedacht die makkelijk leek, maar moeilijk was. Hedonistisch is niet de weg van de minste weerstand. Wel het tegenovergestelde van een commercieel product. Noem het kunst. Noem het gefröbel. Is het gestyleerd menselijk handelen (of een product daarvan) dat een ontroering teweeg brengt? Dan is het beiden.

Het begrip 'aftellen' leidt licht van overpeinzing tot zwaarmoedigheid. Bijvoorbeeld:

  • Ons hart, dat van u, mij, hem, haar, is een afteller. Op een dag zal het stoppen met kloppen. Zeker, gewis, ontegenzeggelijk.
  • De levens van aarde en zon zijn eindig. Ooit zwelt de zon op en zal hij de aarde opslokken. (Wikipedia heeft er al een plaatje van. Daar kunt u ook lezen dat leven op aarde tegen die tijd al zo'n 3½ miljard jaar niet meer kon.)
  • En voor hetzelfde geld is er vandaag of morgen al een gek die alles verkloot.

Reden te meer om ons daar niet door op de kop te laten zitten.

Carpe diem

Loket Diversen wenst u een Hedonistisch 2015.

De muziek in het filmpje is van StereoResonance en van Athanor, allebei onder Creative Commons Attribution-NonCommercial-NoDerivs 3.0. Met dank.

donderdag 18 december 2014

Een treffende gelijkenis

Dit is wat het is: een treffende gelijkenis.
Ik bedoel dus niet dat Nina Hagen op een koe lijkt. Nina kwam eerder in mijn leven dan deze koe, en dus lijkt de koe op Nina en niet omgekeerd, zoals een kind op een ouder lijkt en niet omgekeerd.
Ik wil bekennen dat deze langspeelplaat een van de allerbeste is die de jaren 80 hebben voortgebracht, maar verder heb ik geen achterliggende bedoeling met deze beeldenrangschikking.

"Waarom moet dat kind zich nou zo toetakelen", zei mijn moeder. Ik had er toen geen snedig antwoord op. Nu, bijna 40 jaar later, misschien dan toch: ze takelt zich niet toe, kijk maar naar die koe.

En god zeide: er zij diversiteit. En zie, er was diversiteit, en zij werd immer diverser, tot het einde der tijden. Maar ach ende wee, hoe orthodoxer de gelovigen, hoe harder zij het verdommen om in te zien dat dat goed is.

Misschien bedoel ik er dan toch iets mee.

Platenhoes: LP-cover, ontwerp schijnt te wezen van Friedhelm Meinass en de foto van Jim Rakete. Ik heb dat niet kunnen verifiëren want de geestige liner notes op de binnenhoes voor het vinyl zijn gesneuveld in de uitgave op CD. Foto v.d. koe: Mrs. Jekyll, dit is wel zeker. Er is helemaal niets aan deze foto gephotoshopt of wat dan ook.

woensdag 27 augustus 2014

Life Hack: slimmer wachtwoordbeheer

Leven online brengt risico's met zich mee. Wachtwoorden zijn even onmisbaar als een slot op de deur van je woning. Tien jaar geleden kon je nog toe met een paar makkelijk te onthouden 'veilige' wachtwoorden voor belangrijke zaken als bank en mail, met daarnaast één redelijk sterk wachtwoord voor al die andere, minder gewichtige sites. Tegenwoordig is dat ongeveer net zo veilig als je huissleutel onder de bloempot naast de voordeur.

Om de haverklap worden er inloggegevens geroofd. Als dat weer eens gebeurt en je valt onder de slachtoffers, dan moet je onmiddellijk je wachtwoord bij de getroffen organisatie wijzigen. En bij alle andere sites waar je inlogt met die naam en dat wachtwoord. En daar zal weeklagen zijn, en tandengeknars. (Mattheus 8:12).

De oplossing voor dit probleem is een goede password-manager. Loket Diversen koos enige tijd geleden voor Keepass in combinatie met Mega en we hebben daar geen spijt van, integendeel. Pas onlangs ontdekten we een een paar slimme features in Keepass die het leven écht een stuk makkelijker maken.

In het dagelijkse leven online moet je door heel veel verschillende digitale deuren, en moet je dus evenveel verschillende digitale sleutels aan je bos. Zou het dan niet handig zijn als je, en jij alleen, met één tovertoets, automagisch, zonder gezoek, met de juiste sleutel de deur voor je neus kon openen? Dat kan. In dit stuk leggen we uit hoe. Nu eerst in het kort nog even waarom wij kozen voor Mega en Keepass.

Waarom Mega?

Mega levert onkraakbaar versleutelde opslagruimte in de cloud, en houdt een lokale (niet-versleutelde) kopie van die opslagruimte up-to-date op al je apparaten waar je Mega op hebt geïnstalleerd.

  • Je kunt bij je opslagruimte in de cloud vanaf verschillende apparaten (Mac, Windows, Linux, Android..)
  • je kunt óók bij je wachtwoorden als je geen internet-toegang hebt, want je hebt die lokale kopie. Daarmee is deze aanpak ook geschikt voor wachtwoorden op andere dingen dan websites, zoals software op je harddisk of elders offline, voor pincodes van credit cards, je TV, en voor wachtwoorden die je krijgt toegewezen, zoals vaak bij telewerk-dingen als Citrix of Remote Desktop.
  • Mega kan niet zien wat jij opslaat. Een hacker die bij Mega inbreekt, ook niet. Je privacy-gevoelige informatie is er veilig.

Daarom Mega en niet Dropbox of enige andere 'dienst' die bestaat van het verkopen van informatie over jouw gegevens ('metadata') aan adverteerders en andere verdachten.

Waarom Keepass?

Keepass is een compacte database waar je wachtwoorden en notities (alweer) versleuteld in opslaat. Zonder Keepass en je wachtwoord zijn de gegevens in die database niet te achterhalen. Dit is wat je ermee doet:

  • Sterke passwords genereren en opslaan.
    Die hoef je dus niet zelf te bedenken en ook niet zelf te onthouden. Dat scheelt!
  • Inloggen zonder te hoeven tikken of copy-pasten. Dat kan op twee manieren: makkelijk en nog makkelijker. We doen dit straks uit de doeken.
  • Die automatische invoer kun je versluierd laten doen. Keepass maakt dan willekeurige tikfouten, en herstelt die.
    Wat is daar de lol van? Je kunt een keylogger oplopen. Die registreert welke toetsen je aanslaat op je toetsenbord. Hij ziet dat je dikwijls steeds dezelfde toetsen achter elkaar indrukt. Zo steelt hij je username+password.

Om die redenen Keepass en niet Lastpass of aanverwante web-only diensten. Lastpass is een wachtwoordenservice puur in de cloud en dus een verleidelijk doelwit voor hackers. Jammer, niet veilig.

Aan de slag

1: Mega en Keepass installeren.

Een kind kan de was doen:

  1. Meld je aan bij Mega en downloadt en installeer de Sync Client (Menu rechtsboven -> Apps -> Sync Client.
    Dat kost een minuut of tien, maar het wijst zichzelf. Je lokale Mega-mapje komt standaard in Mijn Documenten.
  2. Download en installeer Keepass. Let op, er zijn meerdere versies. De stappen in dit artikel gaan over de Professional Edition, de groene download-knop rechtsboven.
    Maak een nieuwe database, sla die op in je Mega-mapje en zet er een sterk master-wachtwoord op. Niet het wachtwoord waarmee je op je apparaat inlogt.
  3. Zet je wachtwoorden en loginnamen in je Keepass-database.
    Keepass heeft een import-functie voor veel concurrerende wachtwoord-databases. Heb je je logins+wachtwoorden in een Excelsheet of iets dergelijks, dan kun je de overgang naar Keepass geleidelijk maken.
  4. Tip! Het is handig als je Keepass onder een sneltoets hebt. Zoek het icoontje op (op alfabet bovenin Alle Programma's), geef rechtermuisklik op het icoontje en kies Eigenschappen. Klik in het veld Sneltoets en geef rechter-Alt en K. Je ziet nu CTRL+ALT+K in dat vakje. Prima! Klik OK.

2: Vier Essentiële Wachtwoorden.

De computer doet niet alles voor je. Het geheugen in je hersenpan is nog steeds wel nodig. Stel dat alles waarmee je internet in vlammen opgaat. Welke wachtwoorden moet je dan uit je hoofd weten om je normale leven online zo snel mogelijk te kunnen hervatten?

  1. Je wachtwoord voor Mega.
  2. Je wachtwoord voor je Keepass-database.
  3. Het wachtwoord voor je belangrijkste bank.
    Je moet namelijk een nieuwe laptop, tablet of smartfoon, en daar als de hazen Mega en Keepass op installeren. Daarna kun je weer overal naar binnen.
  4. Het wachtwoord voor online-mail. Waarschijnlijk wil je mensen laten weten dat je niet normaal bereikbaar bent, nog voordat die nieuwe laptop binnen is. Dat kun je dan doen vanaf een computer in de bieb.

Tip: a en d kunnen hetzelfde zijn. Hoef je maar drie wachtwoorden uit je hoofd te weten.

3: Wachtwoordgenerator.

Zoals gezegd is het praktisch noodzakelijk om voor elke site een ander password te hebben. Dat kost nauwelijks extra werk, je bouwt die verzameling geleidelijk op terwijl je in één moeite door je oude onveilige systeem afbouwt. Telkens als je op een site komt, maak je een fiche ('Entry') in de Keepass-kaartenbak, laat je een nieuw wachtwoord genereren, stel je dat in op die site en sla je dat fiche op in Keepass.

De wachtwoordengenerator hoef je maar één keer in te stellen. Dat gaat zo:

  1. Maak een nieuw fiche in Keepass, voer de naam van de site en je login naam in.
  2. klik op het knopje rechts naast Repeat en kies Open Password Generator
  3. Dan krijg je een windowtje zoals hieronder. Vink de vakjes aan zoals aangegeven.
    Om onduidelijke redenen worden koppelstreepje (-) en onderstreep (_) vaak niet geslikt. Daarom staan die uitgevinkt. Naast hoofd- en kleine letters en cijfers (1), is vooral belangrijk dat je speciale tekens (2) aanvinkt. Dan kan je wachtwoord kort blijven - zeg 10 karakters - terwijl het toch veilig is.
  4. Klik het icoontje bij (3) om deze instellingen te bewaren onder een menu-item. Je komt hier vaak terug, daarom is het handig als je instelling bovenin het keuzelijstje komt te staan. Daarom begint het met een 0 (nul). Sla op.
  5. Klik de button met de drie stippen, dan zie je je nieuw gegenereerde password. Als de veiligheidsmeter in het groen staat (zie de pijl), heb je een veilig password. Klik in het vakje met je nieuwe password en geef Control+A en Control+C. Ga met Alt-Tab naar de site waar je een nieuw wachtwoord voor wilde hebben, en voer twee keer dat wachtwoord in het juiste veld met Control+V en sla dat daar op.
  6. Het veld URL is voor de URL naar het login-scherm van de site voor dit fiche. Dit is niet noodzakelijk, maar wel handig: vanuit het lijstscherm van Keepass gan je met een klik op die URL naar dat login-scherm. Dat is soms sneller dan googelen of zoeken in bookmarks.
  7. Sluit nu dit fiche met OK, en sla je wijzigingen op in Keepass. Je ziet vanzelf hoe.

Op deze manier bouw je geleidelijk aan je collectie unieke wachtwoorden op. En die hoef je niet te onthouden, dat doet Keepass voor je.

4: Sneltoets

Ergens inloggen kan als volgt: klik op de site in het veld voor gebruikersnaam, haal Keepass naar voren (met rechter-Alt K), zoek die site op, klik op de regel voor die site en geef Control-V. Dan springt Keepass naar de inlogpagina en voert gebruikersnaam en wachtwoord uit het desbetreffende fiche voor je in. Klaar! Dit is al makkelijk, maar het kan nóg makkelijker.

5: Tovertoets

Dit stel je in voor sites waar je vaak moet wezen.

  1. Ga naar het inlogscherm van zo'n site (je bank?) en haal het Edit Entry scherm van Keepass naar voren zoals in stap V hierboven. In het lijstscherm van Keepass klik je op het fiche en geef je vervolgens Enter.
  2. Kies tabblad Auto-type. Enable Auto-type moet hier aangevinkt staan. Klik op Add.
  3. Dan krijg je Edit Auto-Type item. Trek de droplijst van Target Window open en kies de site die voorstaat in je browser. (klik op het plaatje om in te zoomen).

    In dit voorbeeld kiezen we Vimeo. Bevestig met OK.
    Onderin dit tabje kun je 'Two-channel auto-type obfuscation' aanvinken. Hiermee misleid je keyloggers. Niet elke site slikt dit, maar de meeste banken bijvoorbeeld wel.
    Stap ii en iii doe je voor elke site waar je vaak moet inloggen.
    De volgende instellingen zijn ook nodig, maar hoef je maar één keer te doen.
  4. In het hoofdscherm van Keepass klik je Tools en dan Options.
  5. Kies het tabblad Advanced en vink 'Start minimized and locked' aan.
  6. Kies het tabblad Integration en ga na dat de instelling zijn zoals aangegeven:

    Global Auto Type op Ctrl, Alt + A
    Show Keepass Window op Ctrl, Alt + K
    Goede raad: Wen jezelf eraan dat Ctrl, Alt hetzelfde is als rechter-Alt!
    Vink 'Run Keepass at Windows startup' AAN.
    Bevestig met OK, sla alles op en minimise Keepass. Wen jezelf eraan dat je Keepass minimise't en niet afsluit.

Sluit af wat je open had en start opnieuw op. Ga je naar een site waarvoor je stap i en ii hierboven hebt uitgevoerd en geef rechter-Alt+A. Dan komt het inlogscherm van Keepass. Geef je Keepass-wachtwoord. Dat hoef je maar één keer te doen, totdat je je machine herstart. Zie nu het wonder: Keepass logt je automatisch in. Ga naar een andere site, ook weer waarvoor je die stappen hebt uitgevoerd en geef weer rechter-Alt-A. Sesam, open u!

Is dat handig of niet? Wij vinden van wel.

Nog één ding. Op veel sites kun je aanvinken dat-ie je gebruikersnaam onthoudt. Zet dat uit. Waarom: Keepass voert met deze tovertoets altijd zowel je login-naam als je wachtwoord in. Als je dat vinkje aan laat, gaat dat mis. Zet dus dat vinkje overal uit.

Waar is het lek?

Als je wachtwoord voor Keepass én je laptop (of tablet of smartphone et cetera) in verkeerde handen vallen, dan ben je gesjochten. Dus dat moet je zien te voorkomen. Onderstaande maatregelen vinden wij normaal, en bieden redelijke bescherming. Volledige bescherming bestaat niet, of je moet het leven online afzweren.

  • Een geheim dat je deelt is geen geheim meer.
  • Let op wat je downloadt. BitTorrent is een notoire bron van allerlei shit waar je spijt van krijgt.
  • Zorg dat je een virusscanner hebt die up-to-date is.
    Loket Diversen gebruikt Microsoft Security Essentials, dat kun je gratis krijgen bij Windows en het is geen aandachtjunkie zoals Norton of MacAfee.
  • Werk zoveel mogelijk achter een firewall.
  • Zorg dat je enigszins op de hoogte blijft van Shit Online. Loket Diversen volgt daartoe Webwereld.
  • Veel smartfoners verbinden automatisch met elke willekeurige Wifi of Bluetooth waar ze langskomen. Dat is net zoiets als neuken zonder condoom in AIDS-land.
  • Verander je Keepass-wachtwoord regelmatig. Als je vaak buiten de deur moet internetten, eens per maand.
    Mensen doen dit niet, uit zorgeloosheid of gemakzucht. Dit is de zwakste schakel in de keten.
    Vandaar dat we hierboven kozen voor sterke wachtwoorden van maximaal 10 karakters: Dat is nog te onthouden. Zelf een wachtwoord verzinnen mag ook.


Loket Diversen gebruikt Mega en Keepass, maar heeft verder geen enkele verbintenis met deze bedrijven.
Dit artikel is vrij te gebruiken onder een Creative Commons licentie: Naamsvermelding, Niet-Commercieel, Gelijk delen (CC BY-NC-SA 3.0).
Afbeelding: Key by Mike, onder Creative Commons BY-NC licentie.

maandag 4 augustus 2014

Een IT-er is ook maar een mens

Er zijn mensen die niet met hun IT-ers overweg kunnen. Zelf ken ik enkele goede, vakbekwame IT-ers met wie ik uitstekend overweg kan, maar ik moet helaas toegeven dat die vrij zeldzaam zijn. Het probleem is dat de meeste IT-ers te veel stress hebben om hun werkelijkheid, die pervers, levensgevaarlijk en vol zwarte magie is, inzichtelijk te maken voor normale mensen zoals u en ik.

Dit stukje van Webwereld richt zich op IT-ers. Laat ik het eens vertalen, dacht ik. Of beter gezegd, in eerste instantie dacht ik 'welke botte hork durft dit zomaar te publiceren, daar begrijpt een normaal mens toch geen jota van?'

Maar laat het even tot u doordringen: het is die IT-er zijn schuld als het kastje waarmee u afrekent, gehackt blijkt te zijn en als uw bank u en uw lotgenoten de miljoenen moet vergoeden die de hacker in een zwart gat heeft laten verdwijnen. En de IT-er is niks gevraagd toen dat kastje werd aangeschaft. De arme drommel.

Hieronder ziet u een verklarende woordenlijst van dat stukje met dat linkje hierboven.

pwnen - is een tikfout in "ownen" (bezitten) uit World of Warcraft die beklijfd is (in IT-kringen). Als je iemand verslaat in WoW dan 'own' of 'pwn' je hem/haar. Dus als je een kassa kraakt, dan 'pwn' je die kassa.

Dit doe je met point-of-sale-malware, maar dat snapte u natuurlijk al.

Een drive-by-aanval, voluit drive-by-download-attack, is als er irritante, schadelijke of anderszins kwaadwillende software binnenkomt, verstopt in iets anders dat je (meestal argeloos en zonder goed te kijken) zelf downloadt. 'Iets op internet bekijken' is ook 'downloaden', trouwens, en dat realiseren mensen zich niet. Dus: je bekijkt iets op het web, en in de kantlijn staat een advertentie, of bovenaan de pagina staat een (meestal) wervend plaatje. Dat is al genoeg om besmet te raken.

Bruteforcen is het uitproberen van alle mogelijke lettercombinaties. Dus eerst a t/m z, dan aa t/m az, ba t/m bz, en zo voort. Dit met brute rekenkracht uitproberen werd volgens mij voor het eerst toegepast in schaaksoftware, die dus alle mogelijke tegenzetten doorrekende en dan de gunstigste uitkoos.

Wat RAM-scrapers (en niet -scapers) schrapen legt de auteur zelf uit.

Heb medelijden met uw IT-er.

Mogelijk gemaakt door Blogger.