Olympus OM-D E-M10: Need for Improvement

I’ve been using the Olympus OM-D E-M10 micro four thirds interchangeable lens camera for a few weeks now.

After getting over a steep learning curve, this is a really great camera. I still have a number of gripes about it that I’d like to see fixed in a future firmware update (where possible) or at least in a future camera model.

Using Wi-Fi to Transfer Images to Your Computer

This camera has a big “WiFi certified” logo on the box and a Wi-Fi button on the touch screen. So I assumed that you could transfer images to your computer using your local WLAN network.


Continue reading “Olympus OM-D E-M10: Need for Improvement”

Romanian Keyboard Layout on German Keyboard

If you have a German computer with a German QWERTZ keyboard layout but you actually speak Romanian, or want to use the keyboard to type in the Romanian language most of the time, you can download and install the following keyboard layout on Windows.

It contains the Romanian characters ă, î, ș as main keys (without modifier keys):

Romanian / German keyboard layout

Continue reading “Romanian Keyboard Layout on German Keyboard”

Change Mac OS X Yosemite Green Fullscreen Button

Some advice on how to change the green fullscreen button in Mac OS X Yosemite to a zoom button as in Mavericks.

With Mac OS X 10.10 (Yosemite), Apple decided to change the green button in the window title bar to trigger fullscreen mode (in most applications):

The behavior of this button in all versions of Mac OS X up to 10.9 (Mavericks), was to “zoom” the window, that is, make it as large as the content displayed in the window.

The new behavior of this button in Yosemite is not very useful, for several reasons explained in my post Why the New Fullscreen Button in Mac OS X Yosemite Is Bad.

So if you feel that you want to have the old Mavericks behavior back, read on.

Continue reading “Change Mac OS X Yosemite Green Fullscreen Button”

Why the New Fullscreen Button in Mac OS X Yosemite Is Bad

In Mac OS X 10.10 (Yosemite), Apple changed the window interaction buttons. This change does not improve Mac OS X usability.

In Mac OS X 10.10 (Yosemite), Apple changed the window interaction buttons. This change does not improve Mac OS X usability. This post explains why this is so.

Before Mac OS X 10.10 (Yosemite), Mac OS usually provided three buttons for window interactions:

Window controls in Mavericks
Window controls in Mavericks

The green button was used to “zoom” the window, meaning that the window would enlarge to display all the window content. Because the application would decide how to handle the content, the zoom behaves a bit inconsistent: sometimes it would make the window as large as the whole screen (maximizing it), sometimes the window would only enlarge to fill a certain amount of the screen.

Mac OS X also displayed a fourth button to make the window fullscreen, for applications that supported this mode:

Fullscreen button in Mavericks
Fullscreen button in Mavericks

But in the latest version of Mac OS X, 10.10 Yosemite, the situation has become an unfortunate mess for the long term Mac OS user.

Continue reading “Why the New Fullscreen Button in Mac OS X Yosemite Is Bad”

Dvorak Keyboard Layout

How to use the Dvorak keyboard layout on Windows, Mac OS, Linux.

This post describes how to set up the Dvorak keyboard layout on Windows, Mac OS, and Linux.

Basically, the standard qwerty/qwertz keyboard layout is bad. That’s why the Dvorak layout was developed. The only problem is that not all good things make it and become a standard.

Let’s take a look at a typical German Dvorak layout:
This is a mixture of Dvorak German type 1 and typo 2 layouts, with minor other changes.

Read on for instructions how to set it up on your Windows, Mac OS X, or Linux computer.

Continue reading “Dvorak Keyboard Layout”

NHFS – Nonhierarchical File System

This page is about NHFS, a nonhierarchical file system.
I developed NHFS for my bachelor’s thesis in Cognitive Science. In short, NHFS allows you to file any file into any number of directories. Likewise, you may place any directory into as many directories as you like. NHFS therefore allows you to create a nonhierarchical directory structure with polyhierarchically connected files. All this is mostly backward compatible – this means, you can use it from any file manager, any other application, and also the command line.

Continue reading “NHFS – Nonhierarchical File System”

My Bachelor’s Thesis

File Systems and Usability – the Missing Link


Usability has never been a priority in file system design. Instead, developers focus mainly on technical aspects, such as speed, reliability, and security. But in recent decades, technological innovations have created a modern information crisis. This is characterized by an ever-growing abundance of easily accessible information. Additionally, the user is able to create and store continuously increasing amounts of digital data. This data is usually managed on the user’s personal computer. Conventional file systems, however, which constitute the most important systems for document management tasks, impose a strict monohierarchy onto the user’s document collection. The user is constrained by the file system’s inability to represent multiple categorizations of documents without utilizing band-aid solutions such as shortcuts. As a possible approach to these issues, a file system prototype is portrayed that permits a nonhierarchical directory structure and polyhierarchical file categorizations while maintaining backward compatibility with existing applications. Furthermore, suggestions are made for carrying out a usability evaluation which could be used to measure the achieved improvement compared to conventional file systems.

Download thesis: File Systems and Usability – the Missing Link


Solutions for the exercises in the book: Haskell – The Craft of Functional Programming

I took a course that used the book: Haskell – The Craft of Functional Programming by Simon Thompson, Second Edition.

Solutions to exercises

Although most of the exercises in the book are not hard if you know some programming, maybe it’s still good to look up somebody else’s solutions to the exercises in Haskell – Craft of Functional Programming.

Note that the correctness of these solutions is not verified. Most of them should be correct, though.

I don’t have access to the book anymore though and will not be able to help you with any of the exercises not in my solutions. Please talk to your tutor 🙂

Why use email encryption?

This page describes some reasons why email encryption is good and should be used by everyone. It is not about how encryption works technically.

What is encryption?

Encryption is a mechanism that ensures that only the correct recipient of a message is able to read it. When I send a message to Thomas, it is encrypted, that means it is changed in a way that nobody can read it. Only Thomas is able to change it back to the original message (decrypt it), and will then be able to read it.

Continue reading “Why use email encryption?”