Engineering Management Books

We live in the world where there are so many offerings of information in all possible formats: podcasts, videos, blogs, etc. But reading a good book is something that you’ll never regret.

Writing testable Go code

Writing testable Go code

When I say “testable code”, what I mean is code that can be easily programmatically verified. We can say that code is testable when we don’t have to change the code itself when we’re adding a unit test to it. It doesn’t matter if you’re following test-driven development or not, testable code makes your program more flexible and maintainable, due to its modularity.

Writing REST API Client in Go

API clients are very helpful when you’re shipping your REST APIs to the public. And Go makes it easy, for you as a developer, as well as for your users, thanks to its idiomatic design and type system. But what defines a good API client?

Mounting Google Cloud Storage bucket to Kubernetes Pod

Mounting Google Cloud Storage bucket to Kubernetes Pod

You may ask why doing this if we can use PersistentVolume? Though there may be multiple scenarios when mounting GCS bucket to you Kubernetes Pod is a good option:

Google Home Action to manage your Kubernetes cluster

I always wanted to find a good use case of Google Home to make some DevOps tasks funnier. For example voice deployments, system metrics, etc. Since I use Kubernetes a lot, I thought it would be fun to control it via voice commands.

Rate Limiting HTTP Requests in Go based on IP address

If you are running HTTP server and want to rate limit requests to the endpoints, you can use well-maintained tools such as github.com/didip/tollbooth. But if you’re building something very simple, it’s not that hard to implement it on your own.

Building Desktop App in Go using Wails

desktop+wails.jpg

This post is a text version of packagemain #6: Building Desktop App in Go using Wails video.

As we all know, Go is mostly used to build APIs, web backends, CLI tools. But what’s interesting is that Go can be used in places we were not expecting to see it.

Database Migrations with Go and Kubernetes

Applications with database layer mostly need to execute database migration as part of its deployment process. Usually, running migrations is the first step when deploying the application.

Google Cloud Functions in Go

googlecloudfu.png

Earlier this month Google Cloud Functions team finally announced beta support of Go, the runtime uses Go 1.11, which includes go modules as we know.

Ultimate ClickHouse Helm Chart

clickhouse-helm.jpg

Seems like ClickHouse is experiencing growth in industries like IoT, Web Analytics, AdTech, Log Management, because of its robustness with big amounts of data.