The principal argument against it is that we simply don't need it. To clarify, we - the readers, programmers, technical users - don't need it. Of course, there are other users, other perspectives, who may not be well represented here. In particular, the less computer savvy users do, in fact, need it.
An increasing number of people use computers. They both produce and use an increasing number of files. Networking has also caused these files to be scattered across multiple computers, from company file servers to Palm Pilots and iPods. They are not so much interested in the efficient algorithms, overhead of databases and other technical arguments. They are interested in their time wasted trying locate a file. This problem of trying to organize and locate files will only get worse, not better!
These users operate in non-technical domains which don't include the concept of paths and file names. Every time they must use file manager or file open dialog they must perform a domain switch. Worse yet, most of them lack either the desire or the skill to organize the files well. How many times have you seen a novice computer user with a desktop cluttered with file icons? Often they don't even know or understand directories. My father panicked when a file dropped off the recently used list in Word. He simply never used file manager.
Full file path is simply a unique key to a file, necessary to be able to reference files without any ambiguity. They serve the same role as a primary key in database systems. There are other system related attributes (few timestamps, ACLs, etc.) but no other domain specific attributes. Databases can store and handle many more attributes, so it is simple to add many more attributes that are domain specific. Besides the usual author, title, and similar, doctor's office can add health related attributes, or lawyer's office could add law domain attributes, etc.
In fact, there is no reason why any one attribute type should be the dominant one. File name should be only one of many equal attributes. Thus a GUI such as file manager should enable users to browse using other attributes. For instance, it could display a hierarchy where the 1st level are authors and second are titles. In fact, there are many different combinations possible. That is another article.
Offering the ability to define additional domain attributes and manage them (store, search,...) at the OS level removes the burden from applications. In addition, it offers the possibility of standardized, application-agnostic mechanisms to access file attributes. Compare it to the current situation where searching for information across many different file types, binary formats, is extremely difficult and painful.
Programmers are inclined and able to develop all sorts of tools to organize their files. We simply solve our problems by creating new tools. The wider user community cannot do this. They need help. From their perspective the problem of managing a large number of files is real and here today. Therefore we should move past the question if it is necessary and examine the best design/implementation solutions.
Also see: For a sample file manager based on these and other ideas see Dekk
- "Page 1"
- "Page 2"