Do you have all these “Untitled.xls” , “Untitled 2.docx“, “Copy of Untitled.jpg” files on your computer? This article will change your life (and your files) forever!
First things first: there are tens, if not hundreds, of different file naming schemes. Each comes with their own naming conventions, prefix and postfix characters, separators, and ordering conventions. There’s no single naming convention that should or could be followed over others for your project. Each of the schemes comes with its very own pros and cons.
But the thing to notice here is that the central idea of all of these conventions is the same: keep things as neat and tidy as possible. Give files and documents some descriptive name, keep them ordered, maintain a meaningful directory hierarchy. Now, that’s obviously easier said than done.
But why should we even be concerned about following a naming scheme? Simple, to not create a complete pandemonium. Because what you find useful today chances are you are going to find it useful again not tomorrow, but 1 year and 13 days later.
So after 1 year, you find a folder called
“Copy of New folder 7”
and inside it, you see a handful of files that spells something like this:
Untitled 1.xlsx
Copy of Untitled 2.xlsx
This is a new approach to.docx
etc.
So, what are they? Yes, this is exactly why you need to start naming them properly. Not only the files but the directories as well.
This can’t be stressed enough, you should always, always use a name that is as meaningful and descriptive as possible. But at the same time keep in mind that it shouldn’t get overly lengthy or wordy; it isn’t an essay.
The naming scheme should have an easy to follow structure. You should not need to think for at least 5 minutes before you actually come up with a name.
Make it short and sweet. But at the same time, the name should contain enough information so that even a stranger can at least tell what the file is about. Think about the same you a year from now. Do you have a photographic memory? If not, you certainly are going to forget a lot of the details that you don’t even need to force yourself to remember now.
EXAMPLE:
Bad filenames:
Some Article.docx
IMG001.jpg
Good and descriptive filenames:
Article: my article about death star for 3019 December Deathstar Conference.docx
Selfie with the speaker Darth Vader from 3019 December Deathstar Conference.jpg
Name your files with this scenario in mind. Don’t be shy to give long filenames! Get into the habit of naming files properly, even if it belongs to some well-defined directory hierarchy. The thing that would matter 5 years down the roads is the file name, not the directory.
With good and descriptive names you can simply search for the file name instead of going through every directory and subfolders frantically.
Being consistent with your naming scheme is another important aspect. You should never, ever change the naming scheme that you are using in the midway. Do not change the naming format in the midst of a project. These can cause a serious amount of ambiguity and wastage of time.
If you are using the YYYY-MM-DD dating format, then do not change it to some other because that seems more useful or lucrative.
Similarly, if you like to use “_” as separator do not start using CamelCasing all of a sudden just because you read somewhere that it is more productive and more discernible. Feel free to use spaces! Yes, spaces are good then you can easily search for a phrase inside filenames.
EXAMPLE:
Bad filenames:
30190101 article about death star for 3019 December Deathstar Conference.docx
3019 01 01 Selfie with the speaker Darth Vader from 3019 December Deathstar Conference.jpg
Good filenames with consistent rules with dates:
3019-January-01 article about death star for 3019 December Deathstar Conference.docx
3019-January-01 Selfie with the speaker Darth Vader from 3019 December Deathstar Conference.jpg
Should you use all lower case letters or upper case letter followed by lower case letters for the name? A name consisting of all capital letters is usually not recommended. Well, whether you should use all lower or upper case followed by lower case letters is generally determined by the separator that you use.
For example, those who use “_” as separator tend to prefer to use all lowers (mainly because you usually denote the start or end of a specific word by “_”).
On the other hand, people who like to use CamelCase usually don’t employ any separator. They denote the start of a new word by capitalizing the first letter.
At the end of the day, it is up to you if you prefer to use UPPER or lower case letters.
(!) IMPORTANT NOTE FOR PROGRAMMERS: If you are programming something then whitespace (” “) is not a good example of a separator. While it might seem just as good as the underscore (“_”) character, it can cause trouble if the command line or bash is used for file navigation. Whitespace is used as the default separator for the bash. Hence it would slice the file path at the first occurrence of the whitespace, and most probably cause an invalid path error. The workaround is that you either have to wrap the path in double quotes or use escape characters. Both of the ways defeats the actual aim of the whole naming scheme – easy manipulation of files. So if you are a programmer then PLEASE DO NOT use whitespace inside filenames if you are a developer. Other programmers will thank you for using “-” or “_” instead of spaces.
Example of naming for regular users:
Bad use of letter cases:
ARTIcle abouT DEATH START FOR 3019 decembeR deathSTAR conference.docx
selfie WITH the speaker DARTH VADER from 3019 December DEATHSTAR CONFERENCE.jpg
Good use of letter cases:
Article about Death Star for 3019 December Death Star Conference.docx
Selfie with the speaker Darth Vader from 3019 December DeathStart Conference.jpg
Example of naming for software programmers:
Bad use of letter cases:
Article-about_Death Star for_3019_December_Death_Star_Conference_.docx
Selfie-with-the-speaker Darth Vader from__3019_December-DeathStar-Conference.jpg
Good use of letter cases:
3019_december_article_about_death_star_for_3019_december_death_star_conference.docx
3019-december-selfie-with-the-speaker-darth-vader-from-3019-december-death-star-conference.jpg
Try to keep the number of special characters in the name of the file to the minimum. First of all, most of the operating systems don’t even allow many special characters for naming purpose (e.g. some of the prohibited characters in Windows are “/“, “\“, “?“, “%“, “:“, “.” etc.). Try to stick to only the very basic characters such as underscore (“_“), hyphen (“–“), or space (again, as mentioned before, do not use space if you are a programmer!). If you are a power user then also do not use space if your files are not going to be manipulated from the command line.
Using the underscore or hyphen has some additional advantages. Most of the stuff that is used on the internet uses either underscore, dash, or percent symbol as the separator. So it’s a perk that the content remains internet-ready. You don’t need to reformat the file names to make them compatible with simple storage or sharing solutions. However modern solutions do support spaces too.
EXAMPLE:
Bad filenames:
!!!??30190101 article about death star for 3019.December.Deathstar.Conference?.docx
3019--0101(?)_ Selfie!!! with!! the!! speaker???? Darth Vader!!!!!! from 3019 December Deathstar Conference.jpg
Good filenames with consistent rules with dates:
3019-January-01-article-about-death-star-for-3019-December-Deathstar-Conference.docx
3019-January-01-Selfie-with-the-speaker-Darth-Vader-from-3019-December-Deathstar-Conference.jpg
Using dates is another one of the very practical yet easy ways of keeping track of the files. By simply including the last modification date in the file name you can make it much, much easier to sort the files chronologically. All the modern operating systems by default keeps track of the last modification date for us. But why should we go through the pain of inserting them manually in the file name? One of the main reasons is that you can simply sort the files if they have date or time in the name even from the command line (or any file explorer where you might not have access to the date of the file).
A good way of storing the timestamp in the file name is to encode them in the YYYY-MM-DD format (aka ISO 8601 format) and store it before anything else. This way you are always guaranteed to find the file that has been updated at the latest. Also, following one single dating convention makes sure that months are not going to be mistaken as the date and vice-versa.
You can take it even one step further and store the time of the update along with the date. This could be useful for collaborative projects where one needs to work on the latest version instead of some earlier version. But with the advent of git and various collaboration tools, it is becoming less and less useful.
EXAMPLE:
Bad filenames:
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference.docx
3019_on_January-1-Selfie-with-the-speaker-Darth-Vader-from-3019-December-Deathstar-Conference.jpg
Good filenames with consistent rules with dates:
3019-Jan-01-article-about-death-star-for-3019-December-Deathstar-Conference.docx
3019-Jan-01-Selfie-with-the-speaker-Darth-Vader-from-3019-December-Deathstar-Conference.jpg
There are hundreds of software products to provide a built-in version control systems right on the file level, especially for programmers: GIT, SVN and some others.
But if you are not a programmer then it is OK to include the version information right into the file name. Just like the timestamp, the version information helps determine the latest version of a file. It becomes even more crucial if you are part of a collaborative project or making multiple documents or iterations. For example, “20180709_ResourceManager_v3.txt“, and “20170212_DataExtractor_v1.txt“.
EXAMPLE:
Bad filenames:
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-NEW.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-EVEN-NEWER.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-THE-NEWEST.docx
Good filenames with consistent rules with version information in the filename:
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v1.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v2.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v3.docx
In a collaborative environment, when a document is edited by multiple persons it is always good to mention these names right in the filename. This way you can easily search for documents made by specified persons. Also, if you are submitting this document or file then it will be much easier for the other side to recognize who sent this particular file.
Usually, using the last name followed by the first letter of the first name is a good idea.
EXAMPLE:
Bad filenames:
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-NEW.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-EVEN-NEWER.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-VERSION-THE-NEWEST.docx
Good filenames with consistent rules with version information in the filename:
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v1.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v2.docx
January3019-01-article-about-death-star-for-3019-December-Deathstar-Conference-v3.docx
So, how long should the file name be? If you use old computers (like really old: with MS-DOS or Windows 95) then symbols will cut to 255 symbols. But these computers and old operating systems are rare these days! You should NOT make filenames shorter or add abbreviations just for the sake of making it shorter. If the file name is short then there is a possibility that you are missing something. So, don’t invent new abbreviations and better use full names.
EXAMPLE:
Bad filenames:
30190101-article-about-DS-for-3019-Dec-DS-Con.docx 30190101-Selfie-w-D-V-from-3019-D-DS-Con.jpg Good filenames with no abbreviations is clearly better and will be easier to find:
30190101-article-about-Death-Star-for-3019-December-Death-Star-Conference.docx
30190101-Selfie-with-Darth-Vader-from-3019-December-Death-Star-Conference.jpg
Good news the rules are almost the same! But the thing about hierarchical structure if you are using subfolders. Don’t create many sub-sub-sub-sub-folders too!
Bad sub-folders:
\30190101-articles-DeathStarConference\Article.docx
Good sub-folders:
\articles\conferences\DeathStar\3019\Article.docx
For images and video, it is always worth mentioning size and quality. For example, is it HD (High Definition), FHD (Full High Definition), or UHD (Ultra High Definition)?
Also, you may want to indicate that this picture or video was edited, for example: “20191023-TravelToPoland-1000×600.jpg” or “20170507_skiing_32_cropped.jpg”.
Now you become almost an expert in naming files and folders, so enjoy and apply what you have learned, and may the force be with you!