Adding Context To Go Errors

When I first started writing Go I treated errors without the respect I gave exceptions in other languages like C#. I attribute this behavior to my misinterpretation of the phrase errors are values. I want to share a few habits with regards to writing error messages in Go that I think are useful for developers to use. The following suggestions are by no means the correct to write error messages.
Read more

Using Go Generate

Recently I needed to define some types who’s main purpose were to simplify the use of some exported package functions. The types represented hundreds of domain specific constants, with each type’s constants made available in separate text documents. This was not an impossible task but certainly not one I would enjoy doing. Fortunately, Go 1.4 introduced a new command, generate, that would make it easier to create these types.
Read more

Local Go Playground

The Go playground is an awesome tool for experimentation and education. Like many other Go programmers, it was where I wrote my first Go program. I find myself using it to test the odd code snippet or answer a forum post with some example code every once in a while. One thing I’ve always wanted the playground to support was my local Go packages. How cool would it be if I could test snippets with code I’ve previously written or downloaded.
Read more

Array and List Sorting

This post is an exploration of how the Array and List classes, from the System.Generic.Collections namespace, implement sorting in .NET framework 4.5+. My curiosity was peaked when no one I had discussed the topic with knew how it was implemented. I purposefully chose to look into arrays and lists because these are the collections I use most frequently in day-to-day programming. I think it’s worth knowing and I hope some of my readers learn something new.
Read more

Goodbye Wordpress

I’ve talked about it for a long time, but I’ve finally done it. I’ve finally removed my blog’s dependency on WordPress. I know I’m kind of late to the party but I’m really digging Markdown posts and static pages. For the unaware, Hugo is an open source static website generator. You can view the source code for my website on my Github. Cheers

Embedded Chromium Cefsharp

This post was written because I wanted to write a desktop application but don’t particularly like working with WinForms or WPF. As a challenge I decided I should try to use web technologies instead. The source code for everything covered is available at the bottom of the post. I chose React as my front end framework because that’s what I’ve been learning. This post is equally applicable to any other front end framework, including Angular and Ember.
Read more