Eight Queens: A Simple Backtracking Algorithm In Golang

The Eight Queens Puzzle, a popular computer science question reads: How do you place eight queens on a chess board so that they do not attack each other? The queen is the most powerful piece in a chess game. She can move in any direction and as far as she likes. This means a queen placed on the board attacks quite some fields. None of these fields can be used to place another queen because they would attack one another.

Go Contain Me (SREcon Americas 2018)

My first day at SREcon Americas 2018 was very exciting and inspiring. It started with the Containers from Scratch workshop by Avishai Ish-Shalom and Nati Cohen. They developed a syscall-level workshop about Linux containers that I can highly recommend. It deals with a program containing and isolating itself step by step using Linux systemcalls. In the end, the program would fork to drop the last bit of privileges that is left.

Merging Huuuge CSV Files Using Golang Channels

More often than not in engineering, the saying all you need is less holds true. The story I like to share today does certainly belong into that category. It is about a fearless SRE working in a fitness company who had the honoring task of migrating exercise data from a not-so-reliable database to a shiny, new microservice. What in the good world is exercise data, you may ask? Legitimate question!

How to score The Daily Show tickets using Twilio and Golang

I’m a big fan of Comedy Central’s The Daily Show previously hosted by John Stuart who handed over to Trevor Noah in 2015. The show is recorded in New York City in front of a live studio audience. Tickets to the show are free but limited. And therefore they are hard to get. There are two types of tickets: GENERAL GUARANTEED tickets which guarantee a seat in the audience if you arrive in time, and GENERAL - ENTRY NOT GUARANTEED tickets that might get you in when you wait in line next to the studio.

My Little Helper: Slack Bot

As a Site Reliability Engineer (SRE) I spend a significant amount of my time on the Linux console. Furthermore, I spend some time writing software and tooling. But I also spend a lot of time on Slack (substitute with your organizations preferred chat platform) communicating with humans.1 Bridging these domains often requires copying and pasting of information including sometimes reformatting. At one point, I was so annoyed by moving console output from a terminal window to Slack that I decided to find a better way.