What I'm Thinking

I had heard before that Go dominates as the programming language of the cloud and wanted to investigate that claim. In this post I looked at the repositories of all Cloud Native Computing Foundation (CNCF) projects and assembled statistics on the programming languages used.

... Read More

When I first dealt with consuming Protobuf messages in Apache Flink it took me some time to get everything working. In this post we will go over a simple example from a project I worked on that demonstrates how to consume Protobuf messages in Apache Flink.

... Read More

My Sirius XM now playing tracker has been running for six years without any major interruptions. Today I gathered all the data collected to date and am open sourcing the dataset for anyone to use.

... Read More

If you are like me, you may have an old, but still perfectly functioning printer which you would like to print on from anywhere in your house. In my case, I even kept an old Windows PC just for printing. That PC is soon going to recycling, now that a Raspberry Pi helped make the printer reachable from any computer, phone, or tablet on the home network. This post will show how to easily achieve this.

... Read More

Apache Pulsar is a distributed pub-sub messaging system that I have recently enjoyed testing for some projects of mine. It has grown very much on me and am now preferring it over Apache Kafka. In this post we will go over installing and getting started with an Apache Pulsar instance running on Kubernetes.

... Read More

A while back I needed to identify time windows within a time series dataset which led me to discover some interesting SQL functions I was not aware of. In short, what I refer to as a window is a start and end timestamp during which certain defined conditions were true. This post will explore a bit more of the problem definition and go over an example SQL query to tackle it.

... Read More

GraphQL subscriptions are extremely useful in situations when a server needs to update its clients. A chat application is a great example to demonstrate this, as when new messages arrive we want to distribute them among all chat participants as quickly as possible without polling. When I first started looking at implementing GraphQL subscriptions in Go it took me a bit before I had my aha moment and everything clicked together. Also, at that time there were not a whole lot of examples that I could look at or reference. This post will go over a concrete chat application example using GraphQL subscriptions and a backend built in Go with gqlgen.

... Read More

Pragmatic Programmer Tips
6 September 2020

One of my favorite software engineering books recently released a new edition and has been an absolute pleasure to read again. The Pragmatic Programmer is back with a 20th-anniversary edition and a fresh look at the modern software development landscape.

... Read More

If you are like me, and have all of your Apple devices constantly prompt you for your Apple ID password only to inform you that your Apple ID is locked, here is something that you could do to prevent it.

... Read More

When performing my analysis and graphing for my previous post I ran into a problem of identifying and displaying missing time series data. From a series of data that occurs daily, I wanted to identify if there were missing days, and to graph them so that they can easily be seen.

... Read More