Back in the days when I was working on Anarchy Online, I found this during an office move and kept it. It’s an early sketch of the Omni-Tech capital, and looks nothing like the version in the final game.

An early pencil sketch of OMNI 1, a city in the game Anarchy Online.

This was probably drawn by Gaute Godager as a guide for the level designers.

Solved: Ctrl+F3 hotkey not working

I had a problem where the key combination Ctrl+F3 stopped working everywhere. In most editors, this moves a selection to the next instance of the currently select string of characters, so it’s a quick way to skip through all the uses of a function inside a file, for example. It’s a deeply-seated part of my msucle memory, and having it not work is frustrating.

The reason for this tuned out to be Parsec, which I had recently installed, and which registered for several global hotkeys that are very commonly used in IDEs. And since Windows prioritizes global hotkeys over application hotkeys, it was eating all my Ctrl+F3 commands. Changing the Parsec hotkeys made my problem go away.

Developers: Don’t do this. Ctrl as the sole modifier for a hotkey should be reserved for applications, where it isn’t already used by the OS (like Ctrl+F, Ctrl+Z, Ctrl+V and Ctrl+C). Same goes for unmodified function keys. F1, F3 and F10 have a canonical purpose in every application. Any combination of modifiers with F1 is probably used by an IDE. Microsoft used to publish interface guidelines that spell this out, but I cannot find a recent version of them, only this page that says it’s discontinued.

D-Link 320L NAS repair

I have had a cheap-ish D-Link NAS running at my home for years. Last week, it broke. The drives were audibly still spinning up, and the activity light was blinking, indicating that it booted, but then went dark. Nothing on the network, no way to tell what was up.

There are two 4 TB drives in the enclosure, configured as RAID1. My immediate suspicion was that the mirroring might be out of sync. A bit of Google research told me that the box is a tiny Linux machine using Linux RAID partitions.

The first thing I did was to remove one of the drives. That made the other one the only drive in the array, and with no discrepancies, the NAS showed up on the network again, and allowed me to take a backup of my data. Which only confirmed my earlier suspicions.

Next, I put both drives in an old Linux desktop that had the required SATA slots, and Linux’s mdadm recognized them as being formatted for a RAID, but out of sync. dmesg said something about kicking sdb2 out of the array, so I used mdadm -a to put the array back together, and the array began rebuilding, which took a few hours, but eventually gave ma a working RAID1 array again. I was able to insert the drives back into the D-Link enclosure, and now it boots up and works just as before.

Lessons learned:

  1. My D-Link NAS cannot recover on its own.
  2. Linux skills pay unexpected dividends.
  3. I should have configured remote syslog logging before this happened. Fixed that first thing.
  4. It is probably time to buy a new device. This one is out of service, has never been 100% reliable, is pretty loud, and has no fancy extras.

Now that I know the disks are still in good shape, I’ve ordered a 2-bay Synology. I’m looking forward to the built-in Plex server, support for more than SMB 1.0, and hopefully a better management interface, too.

TV Shows of the Pandemic

I decided to make lists of my favorite media that I consumed the past five years. That’s TV shows and books, mostly, because there hasn’t been much opportunity to watch movies in the cinema or go to concerts.

Starting with TV shows: The past two years have seen me spend a lot of evenings at home, watching more TV than ever. It’s a good thing we live in a time of great TV show content!

I’m not including any of the new Star Trek or Star Wars show, even though I watched them all. If they’re the kind of thing you like, then you’ve already watched them, and you know what you thought of them. Personally, I think they were a very mixed bag.

1. Counterpart

J.K. Simons gives a magnificent performance in this sci-fi thriller about an alternate universe. The show is filmed in Berlin and benefits from the cold war esthetic of that city. The cast includes Olivia Coleman, another personal favorite.

Introduction of the first season, with very mild spoilers.

I’m afraid that saying much about the show would be spoiling it. There is a second season that ends the show nicely, and no future seasons planned.

2. Money Heist (Casa de Papel)

This show was a phenomenon, and approximately everyone has seen it already.

3. The Bridge (Broen/Bron)

The Swedish/Danish original, not the US remake. Saga Norén is perhaps my favorite character in a TV show or movie. She’s a detective with the Malmö criminal police, solving a series of serial murders, and she has high functioning Aspergers. Some of her coworkers know how to handle that, others emphatically do not.
The enormous Öresund bridge between Sweden and Denmark connects the cases that she and her Danish counterpart must solve, and they are twisty and complex, always delivering that last-minute surprise resolution.

Kim Bodnia plays her colleague Martin in the first two seasons, he’s another of my favorites, and I was sad when he got replaced, but his replacement is an interesting character in his own right.

I watched this on Netflix in the original Swedish/Danish language with Norwegian subtitles (English is available in other countries) which taught me a couple of useful new Danish phrases, and improved my listening comprehension. Season four ends the show, and it seems unlikely there will be more. God, I miss Saga so much.

4. Home for Christmas

Not all Scandinavian shows have to be crime dramas. Netflix’s first Norwegian production is a comedy about the difficulties of dating life, something I’ve experienced myself to some degree, and delivered some great, true-to-life characters and many, many laughs. I don’t think this is just a show for girls, it’s for any observer of Norwegian life.

It’s definitely not her fault that she can’t find a guy. It’s the guys who are terrible.

I watched it on Netflix in the original language. Subtitles are available in other locations. As someone who has been studying Norwegian culture from the outside for many years, especially the obsession with Christmas dinners and dating, there was a lot to recognize and smile about.

5. The Killing

I am late to the party, and have only just started watching this show, but it looks very promising. The main character is not going to replace Saga Norén in my heart, but the show is absolutely fixing that Scandinavian crime shaped hole in my viewing schedule.

If your detective had dark hair and wears a knitted sweater, you are watching the correct show.

I don’t have much to say about this, as I’m still in Season 1, except that it feels like the titular crime seems to be getting more detailed and gruesome with each episode, and I still haven’t a clue who the killer could be.

Music of 2021

My Spotify Wrapped playlist for 2021

Spotify tells me what I already know: I didn’t listen to a lot of new music in 2021, but to old and comfortable favorites like Take Five at #1 and Because The Night at #8. Ghostbusters scores very high at #6 because of Halloween, and the remaining songs in the Top 10 are from my “Work Hard” playlist that I put on when I need to just get s*** done. The first actual new (to me) entry is Red Eyes at #12, prompted by this video which has the old-school asthetic of PC games before 3D acceleration that I adore.

I read 103 books in 2021

I know, it sounds crazy. That’s two books per week! But I have my Goodreads Challenge page to prove it.

How was this possible? Library loans and audio books, mostly. I have a powerbank / speaker in the kitchen that can play from an SD card, and there’s always a book in there that plays while I’m making food. Additionally, there’s a book on my phone, and while I no longer have a commute, I go for a 45 minutes walk every day, and ride the bus to go grocery shopping, which is time that I used to fill with podcasts, but last year I have mostly been listening to books during these times.

Additionally, I have a book that I’m reading next to my bed and I read at least one page before going to bed, but usually try to find a good stopping-off point that I’ll be able to remember the next day. Add a few Kindle books read during long flights, and some graphic novels and comic book collections, and the number goes up fast.

They were almost all good books, too. I can’t honestly think of one that I had to put aside because it was boring. My favorite book of 2021 was Piranesi by Susanna Clarke, who previously wrote Jonathan Strange & Mr Norrell years ago, a massive book that I could never finish. Piranesi is much shorter, and it’s delightful.

I still have lots of books in my to-read list for 2022, but I think I’m going to cut down a bit in favor of getting back into podcasts and watching more movies.

Und Tschüss!

Heute kam die lange befürchtete Email:

Sehr geehrte(r) Kundin/Kunde,

wir konnten Ihren verlorenen Gegenstand bis heute nicht finden. Die Erfahrung zeigt uns, dass verlorengegangene Gegenstände, welche nicht innerhalb von 10 Tagen gefunden werden, oftmals definitiv verloren sind.

Sollten wir dennoch Ihren Gegenstand finden, welcher der von Ihnen abgegebenen Beschreibung entspricht, informieren wir Sie umgehend.

Mit freundlichen Grüßen

DB Station&Service AG

Ich hatte ja ehrlich gesagt nicht damit gerechnet, dass mein Koffer wieder auftaucht, den ich Trottel da im Zug liegen gelassen habe, als ich neulich aus Deutschland zurück geflogen bin. Der Tag war eine Katastrophe, wo so gut wie nichts geklappt hat, warum sollte ich da ausgerechnet mit der Bahn Glück haben?

Ich habe schon am Wochenende einen neuen Anzug und neue Schuhe gekauft. So ein verlorener Koffer kann ganz schön teuer werden, au weia. Von den schönen Vintage Manschettenknöpfen mal abgesehen, die total unersetzlich sein sollten.

Wider die Wegwerfgesellschaft

Letzte Woche haben wir unser Büro in Drammen aufgelöst. Ich war seit Beginn der Pandemie nicht mehr dort, und werde ja auch in Zukunft nicht mehr dort arbeiten, und für einen Mitarbeiter, der zwei Tage die Woche dort sitzt, ist es zu groß.

Neben der Frage, wohin wir die Server dort umziehen, und in welchen Schritten, mussten auch die Büros selbst geleert werden. Außer Möbeln bedeutete das eine Menge Elektronik, die sich über die Jahre angesammelt hat. Da habe ich gemerkt, dass ich doch einer anderen Generation angehöre. Ich habe mir meinen ersten Computer noch vom Mund abgespart, und bin nicht mit einem iPhone aufgewachsen, das jedes Jahr für da neuste Modell eingetauscht wird. Es tut mir weh, funktionierende Geräte in den Elektroschrott wandern zu sehen, und ich habe eine Menge Kram gerettet, den niemand anders noch haben wollte. Nachhaltigkeit fängt im eigenen Haus an.

So besitze ich jetzt u.a. ein Apple TV, wenn auch ein älteres Modell, was prima ist für meinen Bedarf: Ich gucke entweder Netflix oder Filme und Serien vom Plex-Server in meiner Wohnung, und für beides habe ich bisher meinen Spiele-PC anschalten müssen, was ziemlich lange dauert, laut ist, und auch mehr Strom schluckt, als nötig.

Eben jener Plex Server lief bisher auf einem Raspberry Pi 2, der leider ziemlich schwachbrüstig ist. Neuerdings läuft er jetzt auf einer ASUS Chromebox, die auch noch im Büro stand, und auf der ich jetzt ein Linux installiert habe. Das Gerät ist keine Wunderkiste, aber trotzdem ca. 50 mal so schnell wie die olle Himbeere.

Jetzt muss ich nur noch die Kamera zum laufen kriegen, die ich im Regal gefunden habe. Eine Canon EOS 400D, für die die Batterien fehlen. Kein ganz frisches Modell, aber bessere Bilder als mein Telefon sollte sie wohl machen. Ali Express to the rescue!

Die Uhr tickt…

Ende August habe ich meine Kündigung eingereicht. In drei Monaten fange ich einen neuen Job an, als technischer Gründer und CTO eines Indie-Studios zur Spieleentwicklungs. Ich bin aufgeregt, zum ersten Mal nicht für jemand anderes zu arbeiten, sondern Besitzer einer eigenen Firma zu sein. Auch wenn die Firma aus Gründen in Schweden gegründet wird, und ich, damit ich aus Norwegen arbeiten kann, meine eigene Zuliefer-Firma gegründet habe. Ich werde dringend einen Steuerberater und Hilfe bei der Buchhaltung brauchen, das ist alles komplizierter als einfache Lohnsteuer zu zahlen.

Auf der alten Arbeit brennt jetzt ein bisschen die Hütte, weil ich da als erster Entwickler schon sehr viel Wissen habe, das nirgendwo dokumentiert ist, und an andere übertragen werden muss. Und weil ich ersetzt werden muss, der Arbeitsmarkt aber wohl niemand wie mich hergibt? Ich fühle mich jedenfalls sehr geschmeichelt von dem ganzen Lob, das ich plötzlich für meine Beiträge bekomme. Ich werde den Job ein wenig vermissen, sie waren alle gut zu mir, und haben mir viel Freiheit gelassen, meine Abteilung so zu gestalten, wie ich sie haben wollte.

Für den neuen Job muss ich jetzt noch einen neuen PC anschaffen, mit moderner Grafikkarte, CPU, und viel Speicher. Die sind leider derzeit nicht so leicht zu bekommen, es gibt da Engpässe. Und natürlich muss alles richtig gemacht werden, damit wir die Mehrwertsteuer erstattet bekommen, und … sagte ich, dass ich BWL zwar studiert, aber nie verstanden habe?

How the Grinch stole Printsmas

Oder: Computer erleichtern die Arbeit.

Es ist bald Bundestagswahl, und alle Jahre wieder bedeutet das, dass ich mich ins als Auslandsdeutscher ins Wahlregister eintragen muss, um Briefwahl machen zu können.

Dafür gibt es, der Digitalisierung sei Dank, ein PDF zum Download auf den Webseiten des Wahlleiters. Und das ist sogar ein PDF, das man am Computer ausfüllen kann, ich muss also nicht darauf vertrauen, das jemand meine Handschrift entziffert. So weit, so prima. Gestern habe ich das also ausgefüllt, heute musste ich es nur noch drucken, denn für das elektronische signieren und einsenden von Formularen hat Deutschland im Gegensatz zu Norwegen noch keine Lösung gefunden.

Da ich aus Prinzip keinen Drucker besitze (alle modernen Drucker haben katastrophale Software und keinen Support), muss ich das in der Bibliothek an einem der öffentlichen PCs machen, für mickrige 5 kr pro Seite. Wegen Covid-19 sind von den PCs nur noch 3 in Betrieb, und die waren natürlich alle besetzt.

Aber es gibt für das von der Bibliothek eingesetzte System auch noch eine App für das Handy. Während ich warte, installiere ich diese App. Sie heißt “Princh”, ich vermute, das ist eine Kombination aus Print und dem Grinch?

Das Intro (ein Tutorial? Für’s Drucken?) erklärt mir, dass ich das zu druckende Dokument in seiner App öffnen muss, und dann über “teilen mit” mit Princh teilen. Die App selber kann also keine PDFs öffnen. Nachdem ich das PDF auf das Telefon geladen habe, versuche ich es zu öffnen, aber “Diese Datei kann nicht geöffnet werden”. Ich habe offenbar keinen PDF Viewer. Aber wenn ich das PDF in GMail öffne, wird mir angeboten, das Dokument mit dem Google Drive PDF Viewer zu öffnen. Warum nur dort? “Teilen mit … Princh” geht leider nicht, denn die App hat sich offenbar nicht im “Teilen” Bildschirm registriert. Software schreiben ist schwer. Kann man nichts machen.

Inzwischen ist ein PC frei geworden, ich kann also das Gefrickele auf dem Telefon abbrechen, und das ganze im Browser wiederholen, wie der liebe Gott es gewollt hat. Chrome öffnet mein PDF, und auf den ersten Blick sehe ich, dass die von mir sorgfältig ausgefüllten Felder nicht mehr alle ausgefüllt sind. Eine halbe Stunde Vorarbeit für die Katz. Wann habe ich das letzte Mal in Deutschland gewohnt, an welchem Datum bin ich nach Norwegen ausgewandert, und wie lautet meine Reisepass-Nummer? Informationen die ich gestern noch mühselig recherchiert habe, sind heute spurlos verschwunden. Zum Glück finde ich aber noch das PDF von der Europawahl, wo das meiste davon drin steht (und nicht verloren gegangen ist). Leider ist Chrome schnarchlangsam, und ich muss das PDF im Adobe Reader öffnen, um es ausfüllen zu können.

Fertig ausgefüllt, jetzt nur noch drucken. Dabei geht ein neues Fenster auf, “Princh for Desktop”, die Windows-Version vom Grinch. Ich würde 6 Seiten drucken wollen, wie ich denn die 30 kr. bezahlen möchte? Vipps ist keine Option, also wähle ich die Visa Bankkarte. Nachdem ich meine Nummern eingetippt habe, will Visa 3D Secure einen Sicherheitscheck machen, und ich habe die Wahl, die stolze Summe von 30 Kronen mit a) meiner Bank-App, b) einer SMS, oder c) BankID Mobil zu bestätigen. Alles machbar, aber keine der angebotenen Optionen kann ich anklicken, bzw. ich kann, aber es passiert: nichts. Super. Ich fürchte, dieser Princh ist eine Electron-App, und 3D Secure benutzt irgendein Browserfeature, dass sie nicht kennt?

An dieser Stelle gebe ich auf, und finde einen Bibliothekar. Der zuckt mit den Schultern, sagt, ich könnte auch am Schalter bezahlen. Aber erst einmal müssen wir zum Computer zurück, Abbrechen drücken, und statt dem Visa-Symbol einen unscheinbaren Button drücken, der mich nach meinem Namen fragt. Daraufhin erscheint auf dem Schirm am Tresen der Bibliothek eine Zahlungsaufforderung. Zurück am Tresen klickt er zweimal mit der Maus, der Betrag von 30 Kronen erscheint auf dem USB Kartenleser, ich schiebe meine Karte ein, und: nichts. Kartenzahlung klappt nicht. Bargeld akzeptiert die Bibliothek seit einer Weile auch nicht mehr, wegen des Mehraufwands für das Personal, der dadurch entsteht. Aber sie haben eine Vipps-Nummer (die Bibliothek, wohlgemerkt, nicht ihre Drucker-Software), und nachdem ich dahin meine 30 Kronen vom Handy geschickt habe, gibt er meinen Printjob frei.

Ist also ganz einfach, Oder?

Ich konnte es mir nicht verkneifen, zu fragen, ob sie denn mit dem System im großen und ganzen zufrieden seien. Früher habe es gut geklappt, sagte er, aber seit bei Visa die Frage nach der Bestätigung kommt, ginge es nicht mehr so einfach. Ja, genau so dachte ich mir das auch.

Ich verstehe das Ziel, dass Kunden sich im Self-Service etwas ausdrucken können, aber in der Praxis werden hier eher mehr Arbeit für die Bibliothekare und eine geringere Kundenzufriedenheit erzeugt. Mal abgesehen davon, dass das System wahrscheinlich selbst wenn es reibungslos funktionieren würde, zu kompliziert für den “normalen” Bürger ist, und es um mickrige 5 Kronen pro Seite geht. Selbst auf dem Honor-System würde das besser funktionieren: Ich drucke mein Zeug ganz normal, und lege die 30 Kronen auf den Tresen. Da “klaut” vielleicht mal jemand einen Ausdruck, aber dafür braucht man keine App, kein norwegisches Bankkonto, und keine Zeit von Bibliothekaren vergeuden.