"Undo send" seems to me to be inherently inferior to having some self-discipline and patience. Whatever last second doubts you've had are now simply pushed forward. Except now you've set a timer, which creates additional chance for failure -- either on the back end or on the user side, e.g. the timer expiring just as you try to panic cancel -- that there isn't when you just don't hit send in the first place.
I get that products have to be designed for human comfort over pure technical effectiveness, but this is design that appeases -- at a very surface level -- one of our least helpful indiscretions.