John Everett Refior


GoBits Technical Blog

Defer is often seen doing post-function cleanup or other time-insensitive work. What may surprise some people is that the caller could be blocked until the cleanup is done.

A simple bash function to install the latest – or any desired – version of Go. Another one to switch versions.

How I fixed the problems I encountered when upgrading from Fedora 24 to 29. Also: a PostgreSQL 9.5.7 to 10.7 cluster migration; and upgrading Gogs.

Unix domain sockets offer efficient, secure communication between processes on a Unix/Linux machine. It’s easy to start using a Unix domain socket in Go if you already know what to do, but documentation in the Go standard library does very little to help users gain that knowledge.

Picture keeping the total lines of code for your application the same, but shrinking the application-specific code by growing the library code.

Duration of Daylight

I created a page where you can see how long the days will be, all year, anywhere in the U.S.: Duration of Daylight


I wrote a Perl module to analyze past transactions in a personal stock account, it's free to use and the code is on GitHub: Finance::StockAccount

About Me

My name is John Refior, I'm a software engineer and lawyer (I used to do volunteer legal work). I mostly write backend web services, but I have experience as a full stack developer and basic Linux sysadmin skills.

GitHub | StackOverflow | Twitter | jrefioratg-m-ai1