Upgrading to HTTP2

Upgrading to HTTP/2 on Apache is incredible easy on a Debian testing: First, let’s get Let’s Encrpyt, so we have HTTPS traffic. $ apt-get install certbot python-certbot-apache In the wizard enable all sites. Preferable force redirect to HTTPS. Once that is installed, you can enable HTTP2. Note: If you are using HTTP2 with Prefork you […]

Lessons Learned: Writing a filesystem in D

I recall when people first proposed writing a read-only filesystem for an internal project at work. While I cannot talk much about what we have implemented, I can at least say it made and still makes sense to solve our problem by implementing a filesystem. Filesystems can be written in many ways and their implementation […]

The D Language: A sweet-spot between Python and C

The D Language: A sweetspot between Python and C Python has been one of my favorite languages since I started contributing to the Mercurial project. In fact Mercurial being in Python instead of git’s C/Bash codebase was an incentive to start working on Mercurial. I admired it’s clean syntax, it’s functional patterns, including laziness through […]

Mercurial vs. Git vs. Bazaar: The aftermath

Over the last years, the version control system community has fought, what some people would call the “VCS war”. People were arguing on IRC, conferences, mailinglists, they wrote blog posts and upvoted HN articles about which was the best version control system out there. The term “VCS war” is borrowed from the “Editor wars”. A […]

Short update…

$ curl -I http://blog.experimentalworks.net | grep X-Powered-By X-Powered-By: HPHP *yay*

Mercurial Bundle Reorder

A short reminder to myself. There is a small undocumented feature. It will try to linearize a changegroup by doing a deep first walk of revs and store them in that order. This creates long lines of revisions, in which each revision is stored after it’s parent. This assumes that changes are minimal between a […]

Play around: BGP and the DN42

As far as I am concerned, networking is one of the most fascinating aspects of computing. Connecting people and systems sounds like an easy problem to solve, but looking into the details and the scale of something like the internet, shows that networking is far from easy. While most developers and administrators understand the basics […]

Moving again

It’s been a long time since we moved to a new server, but now it’s finally moving time again. This means, no longer we are running Solaris but now we are back on Linux with KVM virtualisation. There isn’t much to say about it, we are running standard KVM hosts with virtio for both network […]

Probing PHP with Systemtap on Linux

DTrace is a dynamic tracing tool build by Sun Microsystems and is available for Solaris, MacOS and FreeBSD. It features a tracing language which can be used to probe certain “probing” points in kernel or userland. This can be very useful to gather statistics, etc. Linux comes with a separate solution called systemtap. It also […]

Bookmarks Revisited Part II: Daily Bookmarking

Over the last years, Mercurial bookmarks have changed and became a mature core feature. We go into detail about the current way bookmarks work and how to use them for daily work.