Re: Null pointers
I've a background in C/C++ and find it utterly stunning that someone else from that background cannot see the damage done by null.
C++ mitigates it by having a reference type that cannot be easily initialised to null (its still possible to subvert), Rust improves the situation further. True, it just comes down to checking, but its like all other compile-time checks - if it helps prevent errors then some progress has been made.
Have a look at the C++ Core Guidelines to see how seriously some C++ luminaries take the state of affairs.