From Things to 2Do

I have a long history with various productivity systems and was always eager to try a new app and/or system. But for the past three years I mostly relied on Things. After a short stint with paper notebooks I moved over to 2Do.

Things is an extremely stable task management application that worked particularly well for me when I was still a student: Having the inbox and a loose sorting of tasks within projects and areas of responsibility merged everything into one perspective for me: the “today” list. It synchronized flawlessly across all my devices. Here and there I pondered on missing some sort of sub-tasks. But aside from short dives into Wunderlist and Omnifocus I was quite happy with Things.

But once I started working full-time this changed a bit: I wanted to have a better separation between work and personal stuff. And also there were way more circumstances in which I wanted to jot down subtasks. So I started using paper notebooks again. Inspired by the Bullet Journal I was using one page a day where I would write down the todos of a day. Stuff I didn’t do yesterday would be on the start of todays list again. For planing longer ahead I would try to make notes into my calender.

I still liked this system a lot and carry a paper notebook with me every day. But should I really have to use two separate systems? The analog day-to-day solution made me feel overwhelmed from time to time when planing out the week ahead. So after listening to CGP Grey talking about 2Do I decided to give it a try. And after the trial expired I still stuck around with it and finally migrated all “Someday” tasks and projects over to it.

There are two three particular features that make the switch worth it:
(1) Timed reminders: Things only knows due dates, with 2Do I can also set due times, often it’s nice to be reminded at a specific time.
(2) Sub-tasks: In Things projects felt like an organizational overhead, but here it’s much more convenient and I use it more like a task – sub-task kind of thing.
(3) Differentiating between different perspectives: I use the List Groups as my kind of personal-vs-work filter, so I won’t constantly stumble over the fact that I should grab some lightbulbs for my kitchen when finishing a work project.

I am just a few weeks into using 2Do and probably still have to find the sweetspot for when to use which type of task/project/list/subtask. And of course I am looking forward to the long-awaited Things 3, but for now I have a system that works quite well for me.

The Renaissance of E-Mail Newsletters

Just as the weekend rolls around and I start clearing out my inbox from the stuff that has accumulated of the week, I find myself enjoying a particular kind of mails: Curated newsletters.

Over the past couple of months I subscribed to a growing number of newsletters. Newsletters which mostly feature a digest of what has happened in technology this week, allowing me to be aware of what’s going on in the world of (web-related) technology.

It’s a funny prank of history that email became one of my sources of information again. As that’s also how it all started for me. When I started getting into development I signed up for e-mail lists, although mostly to observe whats going on, I can’t recall actively participating in discussions. Later RSS rolled around where I would find myself in a list of well over 100 individual subscriptions and especially falling for blogposts including lists like “21 awesome items of something (which you will never need)”. With the dead of Google Reader, RSS died for me as well. At that time I picked up on all the various social media channels as a substitute: subscribing to more Twitter accounts than anyone could seriously follow. All for the main premise of knowing what’s “important”. A few years ago I started clicking through Hacker News and skimming through Reddit and Medium on a regular basis. The godfathers of timesinks.

I still fall for these way to often, but I try to avoid them. The current cure for my Fear-Of-Missing-Out comes from e-mails on a relatively fixed schedule. They all feature a similar structure: A categorized list with a small number of links and short explanation or quote. This also allows me to often just skim the mails completely and still satisfies my inner completionist.

So here some of my current favourites:

Talk @ OOP 2016: An Agile Project Review

Christian and I gave a talk at this year’s OOP conference here in Munich. It’s full German title was “Agiler Projektbericht: Entwicklung eines Content Delivery Repository für innovative IoT Umgebungen” – essentially it took pieces from my talk at the PHP Usergroup and extended it with a lot of information about how we actually work on this project.

Given that we overall follow the SCRUM process, it was nice to actually take a step back and see where we diverge from the idealistic agile process and where we found our own patterns. The discussion following the presentation allowed us to also get an understanding on how other teams and companies solve similar challenges.

Here is the video of the whole thing (in German):

Use Docker Machine with Mounts from a Second Drive

Last weekend I fiddled with some HipChat data and ElasticSearch and Kibana a bit. The Docker ELK stack is a great way to use the latter locally. I’m using it already on my work machine, so I happily checked it out and ran docker-compose up … only to get some odd error on my private Mac now:

System error: not a directory

What? I check my work machine: No problems there, same versions of all components. Odd. Turns out, I’m not the first one to encounter this. It seems to be the mount of the Kibana-config-file which causes this issue.

No “easy” fix in these links, so I jumped in and added COPY statements to the Dockerfile. Rebuild the image over and over till everything worked the way I wanted it to work. With each rebuild I tried to get closer to the problem or find a workaround not involving copying on build.

In the end it was StackOverflow to the rescue: Turns out docker-machine only mounts a main dir into the machine, making all path references fail which are not beneath this mount. In my case (on a Mac with a second HDD) it only mounted /User, but my project files were in /Volumes/HDD. Hence the reference in docker-compose couldn’t be resolved and resulted in the error above.

The solution:

  • Manually add the second drive as a Shared Drive in VirtualBox
  • Mount the directory in your docker-machine with the fullpath as it has on your machine (e.g. /Volumes/HDD/)

Fairly easy once I figured it out and while I cost me half a Sunday, I know a fair bit more about the underpinings of docker-machine and docker-compose. See Andi’s StackOverflow answer for all specifics.

Giving my first talk

On wednesday I gave a talk at the PHP Usergroup Munich. If you follow me on Twitter you’ve probably read about it. It was the first talk of this kind that I gave and I liked it. There is no video recording of it, but you can still have a look at the slides on speaker deck.

I want to share some personal thoughts not only on the talk itself but on the whole process behind it. Mostly because the whole topic of public speaking interests me for quite some time now.

First off it definitely was some out-of-comfort-zone kind of thing for me. I played with the idea of giving a talk here and then as I liked to do presentations at university. But I never settled on particular topic, let alone actually doing it. This time Scandio hosted the event and there was the chance to fill the open spot. Perfect chance to make something from it.

The talk itself was not focused on code but more a lessons-learned from the project I have been on for the last year. I found this to be the most challenging part: To frame the rather abstract concepts and ideas of how our system works in a short presentation while also trying to get into technical interesting topics. And - at least according to the feedback I got - I managed to do it reasonably well.

The Preparation

While preparing for the talk, I watched Zach Holman’s Talk on Talks again. Of course only after giving the talk I would understand some of his points.

So I had a rough outline and a first draft about two weeks prior to the event. But I only finished the presentation a few hours before it. I shuffled bits and pieces around until a few hours before the meetup. Most of the content was created on the weekend leading up to it. I just felt easier to sit down at home with a cup of idea rather than trying to force it while being at the office. I would definitely try to get it settled earlier the next time.

Giving the Talk

I was in the last spot after two more code-related talks. This circumstance allowed me to reference the stuff that has been presented earlier. Nonetheless I was a bit nervous, not to a negative extent, but enough to find myself rushing through some parts where I had a different idea of what to say.

My only sort-of test runs happened the evening before, and it lead to a few changes in the structure. For the next time, I would definitely try to do such iterations way more often. Overall it helped to just talk about it, because often enough I realized that something wouldn’t work. In most cases some information was missing to follow my line of thoughts. Or I would overcomplicate things. While I’m sure there still were enough rough parts in the presentation, I was hopefully able to eliminate the worst ones beforehand.

After the talk

Once I closed the lid of my laptop I felt some sort of relief and pride at the same time. But until then there were a few interesting questions from the audience, even technical ones which I hoped for. The people were nice and it was a good end to the day to discuss some other stuff over a beer afterwards.

Bottom line

It was a fun and educational thing to do for me. I will definitely try do it again. Overall it helped to bring all the information into a proper strcuture to get back to what we’re actually trying to achieve in this project. Also it’s now way easier to explain my friends and family what I’m doing all day long. I love this refreshed perspective and I’ll try to take it as a learning from this whole thing: Go back to the start and try to give a proper presentation of things to involved people, just so I get a clearer understandin myself.

Speaking at the PHPUG Munich

As Scandio is hosting the upcoming PHP Usergroup meeting here in Munich next week, I’ve got the honor to give a talk there. So on 2015-11-25 I will give a talk titled “Building a Content Management System for IoT Environments”. It will feature the project I’ve been working on for the past year: The challenges we faced and how we solved them with a PHP based system. You can find all details on Meetup.

I will post the slides and a recap afterwards. Must admit I’m both ecstactic and a bit frightened about it.

Taskpaper 3


I have been using Taskpaper on and off for the last couple of years. Especially whenever I want to break all my todos from various projects down into the smallest possible tasks, I always resort to Taskpaper.

Version 2 has been out for a while and it didn’t seem as there was much development going on. But in recent weeks Jesse Grosjean spoilered some screenshots and details about version 3 on Twitter and just now released the first preview version. And while it is still in preview, it’s just $9.99.

From my perspective it seems to be quite stable and still plays nice with nvAlt. And I must say I like the new layout quite a lot. Looking forward to where this is going.

Hot Chip @ Brixton

Hot Chip @ O2 Academy Brixton, 2015-10-23

The last time I saw Hot Chip was at Rock im Park 2008. Thanks to Frederik I had the chance to see them again in London last weekend. Hot Chip played an amazing show, much better than I hopped for.

Side notes: Inclined standings – why doesn’t every venue have these? (And: Live Photos are nice for creating gifs.)

Bringing Octopress and Jekyll back to Speed

Recently Jekyll and Octopress gave me quite some headaches: Just scaffolding a new post would take minutes. The same was true for generating the sites. After some digging around, it turns out that some old Gems were messing with Ruby in a way that would make it super slow.

gem cleanup

The solution was as easy as cleaning out old Gems. Now it’s finally fun again to use Jekyll and Ocotpress on this system.

The Quest for Bluetooth Headphones

For the last three years I mostly used pair of Sennheiser PX 200 II i wherever I was. I love their portability, the included headset and their sound quality. At work I had an extension cord running across my desk as the original cable wasn’t long enough. Having this cable annoyed me quite a bit. So after a colleague got himself a pair of Bluetooth headphones a couple of months ago, I want to get some myself as well. So after weeks of occasionally reading reviews and checking prices on Amazon I ordered a few on Amazon. Here is my interpretation

Disclaimer: This review is exclusively based on subjectivity and full of amateurish interpretations of sound.

The Contenders

I had a chance to test one of the wireless Beats (can’t remember which exact model) and the Sony MDR-XB950BT for about half an hour each; And the Sony MDR-10RBT, the Jabra Revo, the Sennheiser MM 400 X and the Plantronics BackBeat Pro for at least a day each. Here my impressions and thoughts on them.

Too much bass: Beats Studio 2, Sony MCDR-XB950BT and Jabra Revo

Even without any kind of Bass Boost or equalizer these three didn’t sound balanced but were tilted overly towards drowning everything in bass. I didn’t like it and dropped them quickly. Additionally the Jabra Revo had a somewhat mushy sound, which seems like a defect of the pair I had since most other reviews don’t mention anything therelike.

Third Place: Sennheiser MM 400 X

They are the smallest in this set. You could definitely hear this lack of size and therefore some atmosphere. But coming from their wire-bound counterpart I did like them a lot; they are extremely light and comfortable to use, and the sound is very clear. Listening to all the other headphones it got me thinking whether the extended use of such small headphones skewed my reception and like for bass a bit.

Nonetheless, once I tried to push the bass a bit further (using the fantastic Mac App Boom) they sounded even better and much more rounded. But I got constant troubles with the Bluetooth reception in situation where there are more multiple Bluetooth devices, e.g. the office with it’s multitude of Apple keyboards, Magic Mouses and Trackpads all cluttering the Bluetooth spectrum. The other headphones were more resistant to dropouts.

Runner-up: Sony MDR-10RBT

I do like them, they sound good, their reception is extremely good and they are very comfortable. Honestly, I cant really say anything negative about it. These are the ones my colleague settled one and he was kind enough to let me test them every once in a while.

Winner: Plantronics BackBeat Pro

These were last ones I ordered. I was already in between keeping the Sennheiser’s or ordering a pair of the Sony’s for myself. The first impression out of the box: They are huge, even for over-ear headphones and also a bit heavier than the Sony for example. But I like them the most, they sound pretty awesome.

Comfort & Controls

Their size has been my biggest concern: They are big and I probably won’t wear those in the subway. But they are comfortable nonetheless – even after a prolonged period of usage (5+ hours) they never get too heavy or uncomfortable.

The controls on the headphones are very easy to use: The touch controls of the Jabra Revos are surely an interesting user interface concept, but I would constantly end up skipping tracks when I just wanted to change the volume. All functions have their very own controls that are easily reachable, so I don’t have to fiddle around my ears.


The sound is just awesome. I don’t have much experience but to me they sound very well balanced. There is enough bass for some heavy metal stuff and the mids and highs sound very clean – however one does describe this in audio-language. Voices and podcasts also sound quite natural. Definitely the best audio quality of all the headphones I tested.

Other Features

I can’t really tell how good the noise canceling is for a lack of references. But it is noticeable in an office setting – I often find myself missing conversations when listening to music on a low volume and ANC is active. Often I see this as relief. Albeit initial skepticism, I use the “OpenMic” feature occasionally: it will record the sounds from the outside and directly push it through to the speakers. Great for listening to something around you quickly.

The Bluetooth reception is also very good. Only minor dropouts when I actively put a lot of other Bluetooth devices in between the headphones and the source. Otherwise they they’re superb. Even the lag for watching videos is still acceptable – at least good enough for the occasional YouTube video.

Batterywise the headphones tell me still have “Battery medium” – after approximately using them for at least 12 hours since a full charge. I will see how this evolves in the long run.

On Bluetooth Headphones in General

From this unrepresentative set of test objects, it seems that there is a significant difference regarding the stability of a Bluetooth connection. With Bluetooth 4 seeming to be the most stable especially in contrast to some Bluetooth 2 devices. The same goes for the sending instance: One can tell my older early 2011 MacBook Pro (Bluetooth 2.1) sounds much worse than the 2014 MacBook Air (Bluetooth 4.0).

And what sucks most about using almost any Bluetooth device on the Mac: The media keys of the headphones can only control iTunes, no Spotify or whichever other player that normally would respond to the media keys on the keyboard. But there are a couple of solutions to circumvent this: mac-bt-headset-fix and BTHSControl – I use the later one for now.