Have you ever heard of “Warnock’s dilemma”?

Has it ever happened to you that you sent an email that included a proposal with a request for comments, and never received any replies?

Or you’ve prepared an article, shared the link to the draft document seeking feedback, and you’ve not gotten any reaction?

You may be asking yourself: “Did anybody actually read what I wrote? Do they agree or disagree with my proposal? Do they actually care?

How can you  tell?

The problem of interpreting a lack of response that you’re experiencing has been coined Warnock’s dilemma, and it’s a well-known phenomenon in distributed asynchronous communication (originally identified on mailing lists, but also applies to any other form of asynchronous communication):

The problem with no response is that there are five possible interpretations:

1. The post is correct, well-written information that needs no follow-up commentary. There’s nothing more to say except “Yeah, what he said.”
2. The post is complete and utter nonsense, and no one wants to waste the energy or bandwidth to even point this out.
3. No one read the post, for whatever reason.
4. No one understood the post, but won’t ask for clarification, for whatever reason.
5. No one cares about the post, for whatever reason.

— Bryan C. Warnock

I recently stumbled over this term after reading Florian Haas’ excellent blog post This Meeting Should Have Been an Email (which I highly encourage you to read if you’re looking for ways on how to collaborate more effectively in a distributed organization).

In his article, Florian makes a strong case for turning distributed organizations into asynchronous ones, by converting as much conversations as possible from phone calls, Slack discussions or video conferences into well-structured documents and then soliciting collaboration over these in written form instead.

While this approach resonates very well with me (and it’s something where I think many organizations could do much better), I believe there are two challenges that need to be overcome in this approach: reaching consensus on a contentious topic that triggers a long discussion thread and how to deal with the opposite: not getting any reactions at all.

I did raise my thoughts about the challenges in this type of communication to Florian. Especially if you’re trying to seek an agreement on something, silence is the weakest form of consensus. Because of this, we’re tempted to summon people in video calls to ensure we’re “on the same page” on a topic, trying to capture the non-verbal cues that indicate if you’re in agreement about something.

This question prompted him to summarize our discussion and his thoughts in a follow-up article: Warnock’s Dilemma, Objections, and Acknowledgements.

I think what he wrote matches my personal observations on this topic quite well and lists a number of useful suggestions on how to overcome this challenge. Thank you, Florian!

So when you’re seeking for feedback on something you’ve wrote, try to encourage reactions by including some very specific asks or provocative thoughts about what kind of input you’re seeking for.

If you have been requested to provide feedback or comments on some content, please do spend a short moment to at least acknowledge that you’ve read the document or email, even if you have nothing to add or comment!

This could be as simple as adding a reaction on a chat message (e.g. a “100%”, thumbs up or plus sign emoji), a “LGTM” comment on a Google doc or something similar. Anything helps! Your co-worker will appreciate it.

At least you’re giving the writer the virtual equivalent of a “nod”, which is tremendously helpful for them, as they no longer have to guess your reaction and draw their own conclusions.


Web Browser Add-Ons to boost your productivity

I’m using Mozilla Firefox as my primary web browser, this is the application where I spend a large portion of my working day on.

While it comes with a nice set of features out of the box and is under constant development, there’s also a great ecosystem of add-ons and extensions that make my daily life easier.

Here are some of the add-ons that I can highly recommend (and many of them are available for other browsers like Google Chrome / Chromium as well):

  • Copy PlainText – a tiny extension that removes the formatting from the selection before copying/pasting to/from the Clipboard. This is very useful when pasting text into rich-text editors.
  • Link Text and Location Copier – this extension helps you creating links right from the context menu. It copies a link’s text and location, the page title and URL, or selected text and page URL as either plain text, HTML, Markdown, BB Code, rich text or any custom format you want to define. This is a life saver if you often need to share links in other documents or via instant messengers.
  • Video Speed Controller – Speed up, slow down, advance and rewind any HTML5 video with quick shortcuts. This is useful on video platforms that don’t support changing the playback speed and you want to reduce the time you need to spend on watching a video.
  • Linkificator – this add-on parses text parts of HTML pages to match hypertext patterns not correctly encoded (i.e. not part of an anchor) and add an anchor to enable a standard mouse click to access the target as specified by the hypertext. If you’ve ever been annoyed by non-clickable URLs in a document, this add-on comes to the rescue!
  • Neat URL – this extension cleans URLs, removing parameters such as Google Analytics’ utm parameters. This is handy for sharing URLs without having to manually remove the tracking crap.
  • Tab Mover – a Firefox Addon for quickly moving tabs between windows via the context menu. It can move tabs between two normal windows, two windows in incognito mode and from a normal window to an window in incognito mode. Since it is not possible to directly move tabs between normal windows and windows in incognito mode, Tab Mover can perform the equivalent of moving a tab by closing and reopening such tabs in another window.
  • Tabby – a Window and Tab Manager that helps you easily manage a lot of windows and tabs. It can help you open, close, pin, and do many other things on tabs and windows quickly. You can also drag around tabs to move it, open last used tab/window by using some simple keyboard shortcuts, and much more!

This is just a subset of all the add-ons that I use, but I hope you find these useful! What other add-ons can you recommend?


Printing with a Brother MFC-7460DN laser printer on Fedora Linux 33

This is a follow-up to my previous post Configuring a Brother MFC-7460DN Laser Printer/Scanner on Fedora 23 (64-bit), as things have fortunately changed to the better in the meanwhile.

As described in this post, setting up this printer in CUPS on Fedora has become quite an ordeal, as Brother no longer updates the printer drivers for these old models and they don’t provide 64 bit binaries.

As I had to switch laptops a few weeks ago, I had to reinstall Linux from scratch and needed to reconfigure my printer settings as well. As I did not want to go through the same hoops again, I did some research and was happy to learn that Peter De Wachter has been working on an open source version of CUPS printer drivers for a wide range of Brother laser printers, which include the MFC-7460DN as well!

Sadly, the printer-driver-brlaser package is not part of the Fedora Linux distribution (yet), so I again had to go out and scour the usual places for a suitable RPM package. Luckily, an RPM package is available from the openSUSE Build Service! There’s no dedicated Fedora package, but downloading and installing the driver package for the openSUSE Tumbleweed distribution worked flawlessly.

To set up the printer, first download and install the RPM package directly from the build service repo:

$ sudo dnf install

The actual URL may vary if the package version is updated, so check the download page for the latest version if the download fails.

Now you can set up the printer using the usual CUPS printer configuration tools. In the printer driver selection box, choose “Brother MFC-7460DN, using brlaser v6” and you’re all set!

BTW, this works on Ubuntu Linux as well, they actually include the driver in their core distribution. However, the MFC-7460DN model is not listed explicitly in the driver selection, but choosing any other brlaser device just works.


Ceph Octopus Tech Talk Video now online

Yesterday, I had the opportunity to join Josh Durgin in a Ceph Tech Talk “What’s new in Octopus”, where we spoke about the key features and changes in the Ceph Octopus release (released in March). I took over the Ceph Dashboard part and gave a quick overview about the key highlights (starting at 5:48).

If you missed the live stream, the session has been recorded and is now available on YouTube. Enjoy!


Explore the World Around You Using Machine Learning

There are two Android apps that I have become very fond of when I’m outside, e.g. spending time in the garden or taking a walk. Both are tools that allow you to learn more about the nature around you, and they use machine learning for doing so.

BirdNET Audio Recording Screen

Let me start with BirdNET, an application that uses your mobile device’s microphone and GPS sensor to determine what birds are currently singing around you. If you have ever wondered what is chirping on that tree, simply take a recording, upload it to the BirdNET AI and it will tell you!

Sadly, the mobile app does not support uploading pre-recorded audio files, but they have a service on their web site that supports that. The App also keeps a log of your previous findings and provides links to Wikipedia, Cornell’s Maculay Library and their All About Birds site for every bird it recognized. They also have a Twitter account at @BirdNET_App.

Flora Incognita Start Screen

The second app I would like to mention is Flora Incognita. It allows you take pictures of unknown flowers and other plants to help you with determining their name and a lot of additional background information.

In many cases, taking a single picture of the flower is sufficient, sometimes the app asks you to take additional pictures of the leaves or the entire plant in order to find a match. It also keeps a record of every plant it discovered for you. They have an iOS app as well. They can be found on Twitter at @flora_incognita.


Deleted my Wire Messenger Account

Not that I have been advertising or using it much (there are way too many encrypted messengers around nowadays anyway), but I just deleted my Wire account after having read about some recent changes to the ownership and privacy policy of that product. I actually liked the UI, but I never managed to build up enough connections to use it regularly (and all of my contacts there are available via other messengers, too). These silent changes were really the tipping point for me to prune this one from my device.


Slides and Video of my Ceph Dashboard talk at FrOSCon 14

Last weekend, I attended FrOSCon 14 in St. Augustin, Germany. I gave a presentation about “Managing and Monitoring Ceph with the Ceph Dashboard”, where I gave an overview and update about our work on the Ceph Dashboard, including a live demo.

Sadly, my poor little laptop ran out of resources near the end of the demo, so I could not fully conclude my presentation. But I hope the session was still worthwhile!

If you haven’t been able to attend it, I just uploaded the slides and the video recording is also available already. I’d like to say a very big “Thank You” to the video crew that performs the video recordings and post-processing, I was very impressed by how quickly they published them! Enjoy!


Enabling scroll wheel emulation for the Logitech Trackman Marble using Wayland and GNOME 3

For ergonomical reasons, I’ve been a long-time user of Trackballs as pointing devices instead of using regular mice. For several years now, I have been using a Logitech Trackman Marble together with a libinput tweak to use the trackball for scrolling by holding down one of the buttons while spinning the ball.

This worked well until some distributions decided to switch to using Wayland as a replacement for In the past, I have been reverting back to using (by setting WaylandEnable=True in /etc/gdm/custom.conf), as Wayland does not support the required libinput configurations. I found a workaround that creates a shared library that can be preloaded to implement this, but that looked somewhat hacky to me.

But as Wayland seems to be the way forward and my latest distribution upgrade caused some weird issues (my dual-screen setup did not longer work properly), I caved in and switched to Wayland again. At least all of my screens were properly detected afterwards, but scroll wheel emulation was broken. I did some research if the libinput support in Wayland had improved in that regard in the meanwhile, but it seems it doesn’t.

However, I found a solution for enabling mouse wheel emulation in Wayland/GNOME3 on the Arch Linux Wiki: simply run the following command in a terminal window:

gsettings set org.gnome.desktop.peripherals.trackball scroll-wheel-emulation-button 8

Now button 8 (the small button above the left button) acts both as a “back” button (e.g. when browsing web pages) as well as the modifier that turns the trackball into a scroll wheel, just like before. Nifty!


Pictures from FOSDEM 2019

I finally got around to uploading my pictures from this year’s FOSDEM 2019 conference in Brussels, Belgium.

I spent most of my time in the Software-defined Storage DevRoom, where I also spoke about the latest developments in the Ceph Dashboard. I also collected all Ceph-related FOSDEM talks on the Ceph blog.


FOSDEM 2019-02, Brussels


Using Delta Chat with email sub-addresses

I recently added Delta Chat to my ever-growing collection of instant messaging applications. What intrigued me was the simplicity and the use of well-established protocols like IMAP and SMTP – chat messages are sent and stored like email messages, with built-in encryption (based on Autocrypt, which is supported by Enigmail already as well). This allows me to send messages to everyone having an email address, and they don’t actually need to install the DeltaChat client to reply!

The concept of “chat over email” seems to be gaining some traction; from what I have gathered, the Delta Chat implementation may become the reference implementation for the Chat Over IMAP (COI) protocol that the Open-Xchange folks are working on for their own OX Talk application.

As I use as my private email provider, I wanted to make use of a nifty feature they support: email sub-addresses (sometimes also called “plus addresses”), which allows me to append a custom string at the end of the local part, e.g. This makes it possible to have a dedicated email address for chat messages and being able to filter them right into the DeltaChat IMAP folder that the chat client creates.

Setting this up in the Delta Chat Android app is fairly simple. As a plus address cannot be used for the server login, you need to open Delta Chat’s advanced server settings and use the email address without the plus extension as the login name for both the Inbox and Outbox settings.

Delta Chat Server Settings

That’s all you need to do on the client side. In order to enable server-side filtering in, log into their web interface and go to Settings -> Mail -> Filter Rules and click Add new rule. Now create two conditions:

  • Header: Exists, Name: “Chat-Version”
  • Any recipient: Contains: “<your plus address>”

This rule should apply if any condition is met, the action should be to file the message into the “DeltaChat” folder.

Using these settings, incoming chat messages sent from other DeltaChat users will not clutter up your Inbox anymore. In fact, you can disable the monitoring of your Inbox in the Delta Chat app now: Settings -> Advanced -> Watch Inbox folder (disabled)

Disabled “Watch Inbox folder” setting in Delta Chat