This is tech. 20 years of tutorials are always becoming slightly wrong.
Don't tell me you're still using bare pointers, `new` and `delete` in your C++ classes instead of using smart_ptr fields, or explicitly declaring local variable types instead of using `auto`...
It's an amortized zero cost because training material is continuously out of date and churning anyway. Amortized in the sense that the cost would be paid one way or the other, because people would still be updating their documentation.
You can make the same argument about breaking changes. Code is constantly changing and needs to be updated, so breaking backwards compatibility is zero-cost?
In reality each change that requires updates to documentation (or code) is of course not actually zero cost.
Don't tell me you're still using bare pointers, `new` and `delete` in your C++ classes instead of using smart_ptr fields, or explicitly declaring local variable types instead of using `auto`...