Skip to main content


The Build System Is Dead. Long Live The Build System!

Have you ever been working on a really large product? If you have ever worked with C++, C#, or Java programming languages you've definitely been involved in writing build scripts for make, make, maven, babel, or other, possibly even custom-developed build systems. And that's... That's a pain in the ass...

AoT Compiled Languages Metaprogramming: A Nascent Trend Or Another Esoteric Practice?

This is a humble endeavor to briefly cover the modern state of metaprogramming. Not All Runtime Code Is Written By Programmers Metaprogramming itself is not a new approach to writing software. It originates in the 1970s and since that time even became a popular coding style for Lisp programmers. It is also widely used in interpreted languages like Python for different purposes like unit-testing and alternating existing code behavior (for example, the  gevent  library uses this approach to  patch standard library objects  to express its behavior via standard library APIs).

Text Files Do Not Exist

Discussing two misleading terms of software engineering: text files and binary files. It's a bitter truth for every experienced and even beginner coder. We all know that everything stored in memory (of all kinds) is physically stored as a sequence of bytes in binary form, basically, as meaningless byte sequences that only programmers give meaning to with a code. Thus, there is no difference between so-called text files and binary files at a low level, and I believe we also have to stop making this difference at higher abstraction levels in our code.

Nim Native Dialogs Package v.0.1

With this short post I'd like to introduce you my small Nim language package called native_dialogs which is intended to implement framework-agnostic way to call underlying operating system file save/open/etc. dialogues.

1st Nim Workshop (Kyiv, Ukraine)

My latest article was on the work I currently doing on Nim programming, namely, working on nimongo , and everyday this language takes more and more of my time at work, and outside of work, as it brings a lot of fun and addiction.

Curing Qt UTF-8 console pain on Windows

It happens that sometimes I have to write console application in C for Windows, and having only ASCII output is not always an option: basically, I need to have a possibility to perform text output in Ukrainian which is okay when you use UTF-8. Unlike others, Windows use legacy code pages system to make console work with natural languages text in different countries with different localisations, and that's a weird thing for Linux/Mac user.

Nimongo - pure Nimlang MongoDB driver

Lately I've spent much time coding in Nim. If you're still not acquainted with this fascinating, one of the fastest growing programming languages, please visit its official site , and get your grips on it. To be short, it's a statically typed compiled programming language that translates its source code ANSI C, which is then compiled into native executables. Such flow makes it easy to employ Nimlang on a broad range of software and hardware platforms.

My First Authorship Experience: "Building Your First Application with Go"

My Story of Go I've started working with Go language far before the first official release of Go 1.0, and this language seemed, I think, beautiful for me from the first steps. While Go language in its current state (version 1.2) still remains quite raw from some points, it is still finished enough to be successfully used in production for different goals. I personally use it for building web services, and the most magnificent is that you basically need only standard library to start doing web application development in Go.