After reading all that (ok skimming), he does mention nullable types, but doesn't go into them at all. What's wrong with having the option of defining if something can be null or not? This is how I understand nullable types, don't known about monads. You only have to check if it's null if you have defined that it can be null.
Seem to me that whether or not people will be asked to "come out of retirement" will completely depend on how good the LLM's will be in 20 years.
This seems to happen a lot in the discussions around LLM's. Some people discuss it like LLM's will not get any better, others discuss it as if LLM's will continue to get better forever. But only time will tell.