A Polyglot Programmer’s Notebook

Go Tools Quick Roundup

When I was new to programming, I tried to spend a lot of time on core fundamentals of the language, or whatever batteries were included. In my first serious language, C, that meant C syntax plus the C standard libraries.

These days I do try to spend enough time on the basics of a language to be productive, but I also quickly start thinking about projects, which inevitably leads me to look beyond the language core to see what tools might support projects.

Some tools I bumped into recently that I want to hack around with are:

  • SQLX is a set of further utilities wrapped around the core package database/sql. It is well respected in the community. From what I’ve seen so far, this is because it threads the needle nicely between a fan-boyish, minimalist insistence on using only the core go packages and some sort of Frankenstein Monster ORM. “Simple is better than complex”, if you’ll pardon my Python.
  • GO-BINDATA. If you’d cut some of your programming teeth on Charles Petzold’s Programming Windows in the early 1990s as some old guy friends of mine may have (ahem), you would be familiar with resource compilers, which were a way to bind things like static text or icons into your executable. One of my gazillion side projects that I don’t have time to start – let alone finish – is a simple, go-specific port of Jupyter to Go. Hey, this one might be a fun one to augment my other idea for a golang sample tool. Hmm… this is getting cooler, especially since one could just drop in highlight.js.

OK, I realize that while thinking out loud I just drove myself, this article, and you my dear reader over the cliff. Please accept my apologies.

You stay here with the car. I’ll go get help.