
When development emphasis is on "prettier" and "quicker to market" instead of building applications properly from the ground up.
Got a finite-size buffer? Why not check for data size BEFORE you go stuffing it in there? It's not as if you lack CPU cycles these days (trust me, I used to write in Z80 assembler). Ditto for data types. And never assume that a value being passed to a function is valid just because that function's being fed by your own code.