Don’t write your own persistence layer: why we chose RocksDB

Posted by Edouard on 04 Jun 2021

Our use case

In a nutshell, Quasar helps you anticipate the unpredicted.

Read More

Tags: c++, quasardb, rocksdb, leveldb

Why C++?

Posted by Edouard on 09 Feb 2021

Why C++?

Read More

Tags: c++, programming

auto abuse considered harmful

Posted by Edouard on 27 Apr 2020

Auto is a keyword introduced in C++ 11 out of the necessity to capture lambdas.

Read More

Tags: c++, auto

Using C++ containers efficiently

Posted by Edouard on 23 Mar 2020

Hello, dear reader! I think you have many assumptions about the performance and usage of data structures in C++. This blog post is me, destroying your world.

Read More

Tags: c++, performance, containers

Demystifying constexpr

Posted by user on 22 Nov 2016

C++ 11 and C++ 14 came with a lot of new features. People tend to focus on lambdas and rvalue references, but today I’d like to talk about constexpr.

Read More

Tags: c++, constexpr, Uncategorized

Boost.Filesystem and error handling

Posted by user on 04 Feb 2015

Many Boost.Filesystem functions and methods (and the pattern also exists in Boost.Asio) will throw a boost::system::error_code in case of error, and sometimes it is not as obvious as you might expect, case in point:

Read More

Tags: boost, c++, error, exceptions, tie, Uncategorized

std::chrono ambiguities

Posted by user on 30 Jan 2015

Precision is costly - As you saw in our previous post getting a timestamp as precise as possible is expensive in precious cycles. We do it only when we really need it because we really care about writing the world fastest database.

Read More

Tags: c++, chrono, libc++, stl, Uncategorized, visual studio

The Nagle Algorithm

Posted by user on 25 Nov 2013

I'm used to read technical inaccuracies when it comes to system programming, and writings about the Nagle algorithm are very high in the list.

Read More

Tags: asio, c++, nagle, networking, Uncategorized