Posts
Haproxy reloads and HTTP keep-alive
This December 2019 production outage is brought to you by Haproxy and HTTP keep-alive.
Breaking DNS with consul and dnsmasq forwarding
Last month, I broke DNS on a production cluster by attempting to resolve a hostname.
Automatically installing requirements for a Python CLI application
Sometimes when I write small commandline applications in Python, I need to depend on some library in PyPi.
Nextcloud & Cloudflare: Investigation into excessive data usage
Or, how 3 well designed components behave stupidly together.
Creating a parser in PHP
For my latest project, Norch-PHP-Client, I had to create a simple parser for a user-supplied string.
I'll try to describe the process I followed to create the parser here. It was a struggle to get to a minimal parser, but it certainly was an educational experience.
The parser is built in two pieces, a lexer and a compiler. This is something I remembered from how C compilers and friends are built.
Instructions: Setting up Conky
In this post, I'll show you how to set up Conky on Ubuntu in exactly the same way I did.
This is a follow-up to my earlier post on Conky. (Some people say it looks like the user interface from Minority Report. I have never seen the movie, so I have no idea how it looks like.)
Tweaking Ubuntu Gnome with Conky
Instructions: Using a GitHub OAuth token with Composer & Travis CI
I use GitHub to host my open-source projects. Most of them are PHP libraries.
For testing those libraries, I use Travis CI. Every commit I push to the GitHub repository gets tested by their CI (Continuous Integration) server.
Of course, I use Composer for managing dependencies on my PHP projects.
Usually everything works out fine, but sometimes the dependency installation fails because I reached the GitHub API limit. That's 60 calls per hour per IP address for unauthenticated requests. Since Travis runs a lot of tests for various projects, it is possible that an earlier project already exhausted the API limit.
Because composer keeps waiting for input of a username and password, Travis aborts the build after 10 minutes, and it shows up as errored.
subscribe via RSS