User-level Git Exclusions

I recently adopted JetBrains IntelliJ IDEA IDE with the rapidly-improving Go plugin for working on Go code (of course using IdeaVim!). I’ll post more about using IntelliJ as an IDE for Go in future (it recently grew support for debugging using Delve), but the only downside for me so far is that it generates a directory in each project you work in to contain caches and so forth.

[Read More]

Windows AMIs Without The Tears

Twice in the last couple of weeks I’ve helped automate build infrastructure in AWS, first for Event Store and then secondly for another company. Both times we got 90% of the way there using great tools like Terraform and Packer, and fell at the last hurdle: how do you build Windows images in an automated fashion (i.e. no point-and-click)?

[Read More]

Reading .NET BinaryWriter serialized strings from Go

I recently had the need (for a side project) to be able to read a file written from a .NET application using the BinaryWriter class from an application written using Go. The MSDN documentation was somewhat vague on the format in which strings were written, but it turns out to be a LEB128 encoded length prefix and then the UTF8 bytes which make up the string.

[Read More]
dotnet  go 

Event Sourcing in Go

As one of the contributors to Event Store, it should probably not be surprising that sooner or later I’m going to get around to figuring out nice patterns for implementing Event Sourcing in whatever languages I’m working in!

[Read More]

Moving to Go - What I Wish I'd Known

Quite a few people I know are expressing interest in learning Go, so I decided to put down a couple of notes about my experience after having had the same conversation a few times over. None of the points are particularly original and are mostly here so I can point people at one place when they ask me about it! Your mileage may vary on any of this stuff and it’s in no particular order!

[Read More]