The last couple of days I spent on writing a web service to notify people of new La Trappe Quadrupel Oak Aged batches. Why did I spent my free time on that? Well… Reddit made me do it! And I also really like that beer 😜🍻 Where can I find this important service? Go checkout […]
Tag Archives: golang
Data-Driven Testing in Go aka Table Testing or Parameterized Testing
When writing tests, we want to focus as much as possible on the actual test cases and test data, and not on implementing the individual cases. The less time you spend in writing code to implement a test-case, the more time you can spend on actual test data. This is where data-driven testing comes in […]
Running `go fmt`, `goimports` and `golangci-lint` on save with GoLand
Recently I started using GoLand for Go development. This means that I’m constantly adapting to this new editor and looking up how to do certain things. One of the things I really liked in Visual Studio Code was the formatting/linting/goimports on save. It appears that it is super simple to enable this in GoLand. Go […]
HTTP Test Recording with Go and go-vcr
When testing code that interacts with HTTP APIs, it is often cumbersome to test them, and especially to automatically test them with real data as part of a continuous deployment process. To tackle this, it is useful to record your API requests and responses. This can be done in Go by using go-vcr, which gives […]
Go mobile example: running Caddy on iOS
I while ago I did a small experiment to run Caddy on my iPhone. I currently have no time to do something with it, and actually build a useful Caddy iOS app, but I wanted to do a quick writeup about how you can achieve this. So others can maybe do something with Caddy on […]
Running Caddy as a service on macOS X server
Installing Caddy Download Caddy from the official website. Give the executable root permissions1: $ chown root ./caddy $ chmod +s ./caddy Caddyfile Caddy reads it configuration for the Caddyfile. More information can be found in the official documentation. Launchd config Create a launchd plist file: ~/Library/LaunchAgents/com.caddyserver.web.plist. This file should look like this: <?xml version=”1.0″ encoding=”UTF-8″?> […]
Running Gogs (Go Git Service) as a service on macOS X server
This guides explains how you can run Gogs git server as a service on your Mac using launchd. Command line tools First you need to install Xcode from the Mac App Store. Once installed, you also need the Command Line Tools, you can initiate the download process by executing $ xcode-select –install in the Terminal. […]
Two months ago I started to “Serve The Web Like It’s 2016”, and I’m still loving Caddy!
Caddy? Wooha, hold your horses, what is Caddy?! Caddy is a web server like Apache or Nginx, but different: Caddy is a modern web server (supporting HTTP/2) with elegant and easy configuration. It comes with automated HTTPS (with Let’s Encrypt) and a growing number of extensions (including Git support). It’s open source software, written in […]
Getting a Mac ready for development
Apple computers are awesome: they are fancy machines which make your daily life easier. But every developer knows that there are a lot of things to install and configure before you can actually start programming. This guide is an overview of how I configure my Mac for development. I’m sure everyone has his own habits […]
Running Caddy Server as a service with systemd
In a previous blogpost I explained how to run Caddy (a brilliant and simple web server) as a service using Upstart. Systemd, however, replaced Upstart on most of the operating systems, so it makes more sense to have a guide for systemd. Caddy executable We don’t run Caddy as root to keep things as secure as […]