Common issues in Distributed Systems Architecture

Designing a distributed system requires quite some work, it’s a complex task that requires teams effort and a lot of good software design. But before you start digging at this monumental task you should first be sure that in order to solve your problem a distributed system is actually needed, because in a distributed system, as we will see, we use multiple layers to abstract away complexity, this requires us, if we are lucky, to maybe use a completely new technology or provide our own if none exists.
Read more →

P1883 (LLFIO) review

std::filesystem brought in a nice set of features to C++’s standard library in 2017 and it became much easier to write cross platform code that deals with paths. Long gone are those days when for Linux you had to use / as path separator and on Windows the opposite . While working strictly with paths has become easier and you can pretty much ignore the peculiarities of different systems, you actually can’t escape from specific platform code when you start to use the files that those paths reffer to.
Read more →

std::any aka variable variables

While std::any is not a new addition to the standard library, it was added back in 2017, I only started to take advantage of it from like a year ago, mostly because I was solving other time consuming problems and refactoring old code was not among the priorities at the time. Before we dive in, you can find the complete code in my repository. So what is std::any? According to cppreference:
Read more →