Disclosure: On this site you won’t find specific advice on “how to call function xyz()”. Interpreting C++ ARM and #pragma dwim is also out of scope.

We’re treating our readers as intelligent beings who can use Google and/or StackOverflow, where all such specific questions were answered more than once.

What you will find is opinions, more opinions, and even more opinions on all the aspects of software development - and with a large chunk of them based on real-world experience too.

Your mileage may vary. Batteries not included.


Real-World 802.11ac Wi-Fi Testing: 7×6 Routers-x-Adapters Matrix. Part I. Routers.

Quote: “Whatever throughput numbers are promised by router manufacturers, in real world should be divided by the factor of 2.5x-5x”
Another Quote: “Each router was tested with each of the cards/adapters, which gives us 42 tests on 2.4GHz band and 42 tests on 5GHz”

OLTP Database Optimization 102 – DIY Heterogeneous Replication (Part II)

Quote: “The point of Super-Replica is that it is a replica Slave DB which is larger than original Master DB”
Another Quote: “this “don’t write some HISTORICAL data to Master DB” approach can easily allow to reduce the load on the Master OLTP DB by a factor of 2x-3x”

OLTP Optimization 102: DYI Heterogeneous Replication. Part I (Basics)

Quote: “there are still several Big Fat Reasons™ to use DIY replicas”
Another Quote: “With the Replication Messages described above, it is ok to apply Replication Messages to Slave DB which is newer than exactly necessary.”

OLTP DB Optimizations 102 – Group Commits

Quote: “if we can commit several transactions at the same time – RDBMS needs to fsync() our DB logs to physical disks only once”
Another Quote: “if going our preferred way of single-writing-DB connection – make sure NOT to use RDBMS-level Group Commit”

OLTP DB Optimizations 102 –100% Coherent App-Level Cache for Single-writing-DB-connection

Quote: “with our app-level cache, we’re guaranteed to get exactly the same results as if we’d be querying the underlying database.”
Another Quote: “why settle for invalidation when we can modify cache accordingly, saving on the extra DB request when we’re dealing with the same USER again?”

CPPCON Day #5. Miscellaneous

I’m back from #CPPCON2017 now, and can report on the last day of it. First (and IMO foremost <wink />), there was my own talk on “Eight Ways to Handle Non-blocking Returns in Message-passing Programs: from C++98 via C++11 to C++20”. Not sure whether it was exciting enough (and 3 or 4 people left the […]