Toolbox

Some things I found to be useful for daily programming.

Programming

  • Geany: very fast IDE, not the memory and CPU monsters out there like Eclipse/Netbeans.
  • Valgrind: code analysis tool, I use mainly the memory checker and the profiler.
  • KCachegrind: graphical profiler presenting runs of valgrind performance checks in a nice way.
  • xxdiff: 2 and 3-way graphical diff tool, I use it because of nostalgia (aka: I got used to it).
  • entr: for executing a command on changed files, e.g. make.

C Programming

Database Modelling

Data processing

  • XMLStarlet: XML processing on the command line for fast and dirty XML processing
  • JQ: JSON processing on the command line very much alike as with XMLStarlet

Infrastructure

  • Using libvirtd now instead of VirtualBox (sorry, Oracle). Main reason: it’s still a little bit un-ready round the edges but hey, it’s really open source. :-)
  • LXC: lightweight and surely nicer to use than Docker (IMHO). Still a little bit alpha quality though.
  • unison: file synchronizer, I’m using it since years to sync my home directory between three or four machines, sort of a very easy backup.
  • The backup from the local LAN to the cloud happens via FTP and some copy jobs within Bacula.

Books

Other

  • Ion3: tiling window manager with strong keyboard and Lua scripting support. Sadly the original author got into fights with the open source community :-(
    I’m currently using the fork Notion.
    Read http://raboof.github.io/notion/ if you want to learn how to use such a window manager.
  • Joe: my editor for all quick editing jobs. Having used a lot of Wordstar and Turbo Pascal IDEs in my youth, jstar is the editor I can’t get rid of in my brain. :-)
  • meh: as fast and easy an image viewer can possibly get. I use a fork which adds QOI support (see https://github.com/andreasbaumann/meh/tree/qoi)
  • MuPDF: an equally fast PDF/XPS viewer.
  • Trojitá: a simplistic and really fast mail reader for IMAP accounts. For long-term archiving of email I’m using Mutt with POP3 and a maildir directory (proved to be extremely stable over time).
  • Luakit: webkit-based browser, highly customizable with Lua scripting
  • irssi: for chatting (terminal)
  • newsboat: a RSS feed reader looking like mutt (I’m using the old pure-C++/non-Rust version I forked as newsboat-og)
  • Wordgrinder: really nice text editor if actually all you want to do is writting some text
  • Suckless: pretty much every software there is 10 times smaller and easier to use than whatever makes up the default Linux user land. I’m a big fan of it.. it only should be the standard on every Linux system.
  • Ripcord: way faster alternative to Discord (and yes, I also pay for software - Slack), no video capabilities though, just audio and chat but that’s usually all I need. The electron based Discord and Slack are just so unbearably slow, if I need that experience I can as well start the browser version.

Deprecated

The following tools I used in the past, but not anymore:

  • Seamonkey: Seamonkey slowly gets all the “features” of Mozilla (slow, Rust build problems, out-of-memory when building and linking). So I lost interest in it. I replaced it with Luakit and mutt/trojita, irssi, etc..
  • Librewolf: fork of Firefox, without all the built-in stuff from Mozilla nobody needs or asked for. I’m no longer using it, as compiling it is too much of a hazzle with frequent rust incompatibilities..
  • openSUSE Build Service: for building release packages in the cloud. They deleted my home project and I’m no longer doing software development, really.
  • Travis CI: for continuous integration on Mac OSX. Don’t care about building on Apple anymore due to all kind of reasons..