It’s really sad that we all basically have to design code and data fields around the behavior tools like Excel. R will do the same thing for numeric fields (strip leading 0s), so it’s not just Excel here. But in the R case, you rarely read/write to the same file, so it’s less of an issue.
Then again, these issues have been known for decades, so a lot of things like your best practice are around for a reason…
More like we can’t name things (eg. gene names) the way scientists want because of needing to work with the data in Excel. So instead of OCT4 we get a different name because Excel mangled the name into a date for decades.
Excel is still the easiest way to look at tabular data, even if it isn’t part of the production workflow. And sadly, even if you save the file as txt, Excel would always mangle certain fields.
So yes… users have been working around Excel-isms for years.
Then again, these issues have been known for decades, so a lot of things like your best practice are around for a reason…