I have a collection of files from the late ´90s and early ´00s. Many of them are .JPG, .MP3, .WAV, instead of .jpg, .mp3, and .wav. Why was that the norm at the time? I usually just change the extension myself.
Back in the days of DOS/MS-DOS, all filenames were in uppercase and restricted to 8 letter filename and 3 letter extension.
Because Windows was always just built on top of DOS and the FAT filesystem, until NT/Win2000, the actual file naming convention renamed the same.
Windows just held extra metadata to pretend it could have longer filenames.
Windows has always been garbage and ME was particularly bad, but the NT kernel was the right thing to do
Win2K was nice
Others have correctly explained that this is because filenames (on DOS) used to have only uppercase letters.
Interestingly, it’s not completely outdated. Many standalone digital cameras, even ones produced in the 2010s or 2020s, still produce filenames like IMG_1234.JPG or DSC00011.ARW or similar.
it was the style at the time

but actually (as the other comment says) uppercase file extensions were a holdover from when the entire filename could only be uppercase
Of course in those days 640
Megsof RAM was all we needed.“There’ll never be a need for more than that”, you’d say.
640k
640B ought to be enough for anybody
If you use ZFS like me, you can never have enough.
640kb more like! Don’t get me started on upper and lower ram DOS nonsense…
But does this game need himem.sys, or emm386.exe?
You mean 640 KILObytes. Even Playstation 3 had only 256MB RAM.
It was good enough for the Kaiser!
Back in the day when affordable homes were very much bigger compared to now. You could splurge a little on hard drives that could store big size letters. Now that affordable homes (tiny condos) are a teeny tiny bit smaller, it makes sense to shrink the size of the letters so that they fit in a smaller space.
Because DOS/early Windows had a filesystem that had very limited filenames. You had eight characters for the actual filename and three for the file extension. They were stored and displayed in all caps, but matching was always case insensitive.
That explains both the upper case and the three character extension limit.
Worth mentioning that this wasn’t a problem on other systems. Unix had long, case-sensitive names before DOS existed.






