Fork me on GitHub
  1. When Things Go Wrong

    Sometimes things go wrong at work. Bad things happen. And our jobs demand that we endeavour to avoid such things happening again.

    In my job, things like system outages are bad things. And when they do happen, we apply things like Five Whys to get to a root cause. Usually …

    Read more...


  2. SSH and tmux

    SSH is great. And so is tmux. But sometimes they can interact in ways which are not intuitive.

    Consider this scenario:

    • You ssh to some remote server (a bastion server) and start a tmux session. Perhaps you need to do something long-running, or you are worried about losing your connection …

    Read more...


  3. Reverse Tunneling with SSH

    The problem: You have SSH access to a locked-down server with limited access to the internet. Perhaps your company policy has decreed this to prevent sensitive data from leaving the server. But you need to get something from the internet onto that server. What to do?

    (Obviously, I'm not recommending …

    Read more...


  4. Memoirs: It's Public!

    As you may know, I have been working on a little something to organise pictures in the family so we can share them properly. Everybody having their own little isolated drives, albums etc is just a mess.

    Well... That turned out to be somewhat more complicated than I initially thought …

    Read more...


  5. About Java...

    Java is the COBOL of today.

    It is a language often used in education (fortunately nowadays Python is taking over there), but this just means that we have lots of “Java Programmers” with zero experience. And the only thing worse than a bad programmer is a bad programmer who thinks …

    Read more...


  6. Error Handling in Shell Scripts

    Once thing new shell programmers struggle with is error handling. The shell does not use exceptions like the programming languages most developers are familiar with; basically the shell mostly pre-dates the notion of exceptions in higher-level programming languages.

    Developers often conceptualise shell commands to be something similar to procedures: You …

    Read more...


  7. Naming Shell Scripts

    You're writing a shell script to do... something. Whatever it is, it will hopefully make your life easier in some way or other.

    But what do you call it?

    This touches on a pet peeve of mine. Whatever you do, do not call it somescript.sh. You should never use …

    Read more...


Page 1 / 4 »