Awesome software

This is supposed to be the first post of a longer series that will cover software that I like very much. They will share the awesome software tag.

Which are the important points for me to consider a piece of software to be awesome?

Functionality
Above all, awesome software should do its job well. Usually this job is prettly clearly and narrowly defined, a jack-of-all-trades tool tends to do none of its tasks very well, in my experience.
Simplicity
Awesome software is usually simple to use. This does not mean that its job is a simple task, and it does not mean that it works out of the box. Rather, it menas that, it is straighforward to use when it is properly set up.
Speed
Awesome software should be fast. It’s just much more fun this way.
Bug-free
For a piece of software to be awesome, it should just work.
Concept
Usually, an awesome piece of software has very well thought-out concept both of the problem it is trying to solve and of its approach to address it.

In the end, this is very subjective, of course. In this series, I will just try to provide you with a list of interesting software you might try to look at. Just look at awesome software.

Interesting things

Obscure C++ features

Extending notmuch tags from messages to the whole thread

I am using notmuch and alot to read email at home.

As a fallback mechanism, I have written a small script that moves emails with certain tags into specific folders, such that parts of the tags can be seen from any email client accessing the mail folder.

Unfortunately, alot seems to tag individual messages instead of complete threads. This means that all the mails that I receive are correctly sorted, but the mails I sent are kept in the sent folder forever.

Luckily, it is easy to propagate tags from individual messages to the complete thread using:

for i in $(notmuch search --output=threads tag:<some_tag>); do; notmuch tag +<some_tag> -- $i; done

This is using zsh, but bash should work the same. I am sharing this here in case somebody might find this useful.

Site conversion complete

The whole website including all past blog entries has now been properly converted and is compiled using nanoc. This includes the private part of the site.

I will soon start to send out new passwords to everybody who had an account on the old site.

New statistics page.

New technology!

It has finally happened: After years of negligence, I have converted this website from Wordpress to a statically generated website using nanoc. For technical details see the about page.