Recent Posts

It is quite common situation when you are building Docker images: some secret value/file is needed (temporary, for the duration of the build), and you are puzzled how to pass it w/o over-exposing, and make it accessible down the road, when the image becomes publicly available.

CONTINUE READING

In this post I will look into multi-core programming using Go. The language is good for concurrency, and handles multi-core parallel execution really well too. As a practical exercise Bitonic Sorter will be implemented. We will test the code on 8-core machine to see what benefit can parallelism provide.

CONTINUE READING

Go is amazingly enjoyable language. Experience with it will be even greater once major IDE providers (yes, JetBrains I am looking at you!) start producing full-fledged Golang IDEs (instead of somewhat limited plugins). Before that happens, you are stuck with assembling a good toolset manually, so let’s do just that, for Vim!

CONTINUE READING

This article describes a proper way to handle (asynchronously) a long-running job creation in the RESTful API.

CONTINUE READING

In this entry we will dive into the world of dynamic programming, by looking at one of the most simplest yet illustrative algorithmic problems, namely the problem of Interval Scheduling. We will start with special case of unweighted interval scheduling, and then elaborate from there into a more general case of weighted intervals.

CONTINUE READING

Projects

Talks