basics of C++ systems programming