Blog
-
C++ Debugging: GDB, LLDB, Sanitizers, Leaks,
Production-grade C++ debugging: GDB/LLDB advanced usage, ASan/TSan/UBSan/MSan, Valgrind, core dumps, data races, deadlocks, and logging patterns.
-
C++ Header Guards: #ifndef vs #pragma once, Portability,
Compare #ifndef/#define/#endif with #pragma once, fix redefinition errors, name guard macros safely, break circular includes with forward declarations.
-
C++ std::optional Complete Guide | nullopt· Monadic Ops
std::optional vs nullptr and exceptions: value_or, and_then, transform, or_else, performance, and production error-handling patterns (C++17–C++23).
-
C++ HTTP Fundamentals Complete Guide
Master C++ HTTP: RFC-compliant request/response parsing, header handling (case-insensitive, duplicates), chunked transfer encoding, Boost.Beast parser.
-
C++ Adapter Pattern: Complete Guide
Adapter pattern in C++: object vs class adapter, payment/API examples, unique_ptr—bridge incompatible interfaces for legacy and third-party code.
-
Go in 2 Weeks #02 — Complete Guide
Go pointers, slices, and maps for C++ developers: safe *T, len/cap/append, map lookup with ok, and how slices differ from std::vector.
-
Go in 2 Weeks #03 — Complete Guide
No class keyword in Go: structs, methods, pointer vs value receivers, embedding, and NewXxx constructors compared to C++.
-
Go in 2 Weeks #06 — Complete Guide
Go goroutines vs C++ threads: lightweight stacks, channels, buffered vs unbuffered, select, WaitGroup, worker pools, pipelines.
-
C++ ADL (Argument-Dependent Lookup): Namespaces & Operators
Argument-dependent lookup in C++: finding functions in associated namespaces, swap idiom, operator overloads, pitfalls, and disabling ADL.
-
C++ Aggregates & Aggregate Initialization
What is an aggregate type, how brace initialization works, C++17/20 changes (bases, designated initializers), arrays, and production patterns for config...