The author completely misses the point of what CSV files are useful for.
They are useful when both ends of the communication understand the context. They know what the data types are, they know what the character encoding is etcetera.
This is a very common situation. CSV files are easy to process, easy to generate, and can be read by a human without too much bother (they are not "for people" as the author so irritatingly asserts). I have written so many CSV (and other delimiters, not just ',') generators and processors I lost count decades ago. It is so easy.
And what does "retire CSV" really mean? Just stop generating them then! The consumers of your data will probably insist you go back to them as writing all that code just to satisfy your fetish with metadata is not useful
Now I am whinging.....