Three Letter Extensions

Most file names in Windows end in what usually is called a three letter extension, which is three or four letters at the end of the file name following a dot . character.    The three letter extension is one way Windows at times (but not always) keeps track of what a file is supposed to be.   


For example, files containing ordinary text usually have a three letter extension of .txt and Microsoft PowerPoint presentations usually have a three letter extension of .ppt.    If we create a text file with Microsoft Notepad and save it as a file called MyNotes it will actually be saved as a filename called MyNotes.txt.   Some extensions are only two letters, like the .py extension used for Python scripts, and some have four letters, such as .xlsx, but we still tend to refer to extensions as "three letter extensions" even though some extensions are four letters, two letters or even a single letter.


Unfortunately, by default Windows hides the three letter extensions of files and instead tries to associate files with whatever program it thinks should be used to open that file.  This lobotomizing of file names on the fly by Windows is apparently intended to make Windows more "user friendly" for inexpert consumers and to try to prevent clueless users from hurting themselves by changing extensions on files, but it ends up being a policy with terrible downsides.   For example, it assists the most common way hackers use to take over computers.  It also causes inconveniences for people who are not clueless consumers.


It is flat-out dangerous because one of the most common ways for criminals to hijack a computer is to send malware programs by email which appear harmless to the clueless recipient.  For example, if a criminal sends email from an apparently trustworthy friend that contains a "PowerPoint" attachment called presentation.ppt.exe Windows may hide the .exe extension and simply show the file as what appears to be a legitimate PowerPoint presentation.  


When the clueless consumer who receives such a file double-clicks on it to open it, instead of PowerPoint launching the file, which cannot happen because the file is really a .exe executable and not a PowerPoint presentation at all, Windows will launch the file as a program that injects malware into the computer.   After injecting the malign package, most malware will then launch PowerPoint with some sort of innocuous presentation embedded in the executable so the clueless consumer who double-clicked on the file has no idea that he or she just surrendered control of the computer to a hacker instead of simply opening a PowerPoint presentation.


Reasonable people can certainly disagree on just what part of the above is whose fault, and whether it is more dangerous for Microsoft to hide extensions that indicate a file is an executable and not a PowerPoint presentation, or whether the locus of toxic idiocy lies squarely with clueless consumers who trust Microsoft not to do anything so gratuitously dangerous and blindly click on files sent to them by email.   But given the tidal wave of theft and malware everywhere sweeping across Internet the problem caused by such active misrepresentation of names is huge.


In all fairness to Microsoft it is not likely that if Microsoft did not have a policy by default of hiding extensions that any consumer who is so cluelessly stupid as to blindly click open attachments sent by email would ever notice that an extension on a "PowerPoint" presentation was .exe or that such an extension meant it was an executable program and not a PowerPoint presentation.  No doubt that for every consumer who might look at an .exe extension and think, "...hey... wait a minute...." there would be plenty of imbeciles who eagerly would think, "Wow! Cool! somebody likes me enough to send me spam!  ... maybe there's a stupid cat video in there!..."


But given that hundreds of billions of dollars in theft and hundreds of millions, if not billions, of computers are compromised by nothing more complicated than taking advantage of Microsoft's hiding of three letter extensions, it is probably reasonable to conclude that on the balance the hiding of such three letter extensions is not such a great idea.


Setting aside all concerns about malware the hiding of extensions complicates work in GIS and DBMS because so many different file formats are used in with extensions that are unknown to Windows, or which have misleading associations with consumer programs.  It is important to be able to see what a three letter extension is to know what a file is likely to be, and not to have to guess what, say, a TIF file is based on whether or not it has a Microsoft Paint or PhotoShop or whatever icon on it.   


File associations can be difficult even for experts to manage given the tendency of so many applications these days to "take over" file associations as specific to that application.   Every time you install a new video or music player, for example, it will often try to take over all audio and video file format associations so that every .mpg file you have will bear that application's icon on it, even if you only installed the player to be able to view just one particular type of video that your favorite video player cannot handle.


Everyone who is not an inexpert consumer should therefore automatically turn off the hiding of extensions by Windows.  A typical way to do so that works in most versions of Windows would be from Windows Explorer, choose Tools - Folder options, press the View tab and then in the Advanced Settings pane ensure that the Hide extensions for known file types is unchecked.  Press Apply to Folders and then press OK.


The above, of course, will not solve all problems of different file types and program associations with various file types for convenience.  But it is a step in the right direction.