librats vs libp2p: what a 5 MB peer-to-peer node buys you
Benchmarking librats, my C++ peer-to-peer library, against js-libp2p: 22x less memory, a 9.3x small-message gap, and a dead heat on bulk throughput.
Senior Software Engineer · Minsk
I write about the layer most documentation skips — Android NDK internals, embedded Linux bring-up, GStreamer pipelines, MinGW toolchains and the C++ details you only discover by hitting them.
Benchmarking librats, my C++ peer-to-peer library, against js-libp2p: 22x less memory, a 9.3x small-message gap, and a dead heat on bulk throughput.
Making ANSI escape colors work in the Windows console from C/C++ with ENABLE_VIRTUAL_TERMINAL_PROCESSING, instead of printing raw escape characters.
A full bring-up log of a custom AmLogic s805x (GXL) board: U-Boot, kernel and DTB, USB burning tool, HDMI, audio, Ethernet, I2C RTC and power measurements.
What the Android NDK error "C_INCLUDES must be under the source or output directories" actually means and how to fix LOCAL_C_INCLUDES paths.
Linking MinGW binaries fully statically with CMake to drop the libgcc_s_seh-1.dll and libstdc++-6.dll runtime dependencies from your Windows build.
Detecting CPU architecture (x86, x86_64, ARM, ARM64) at compile time with portable C/C++ preprocessor macros across GCC, Clang and MSVC.