> For me, in large part, the borrow checker is encoding in the compiler rules that you should be following in C++ anyway.
My experience was sort of the inverse of yours: I knew a little C++ before learning Rust, and being educated by the borrow checker has really helped me writing C++.