17

All file systems I've encountered have been based on folders - you have a root folder, which contains files and subfolders, which in turn contains files and subfolders, and so on.

Is there a better alternative to organizing files, and will it replaced the current system any time soon? Feel free to include some history about file systems, if you judge that's in order in your answer.

Interpret the term "better" any way you please.

4
  • 9
  • 2
    A full file path is nothing but a unique name to me and a folder is a file name with a wildcard that potentially lists files starting with that name. I don't think of a dictionary as hierarchical just indexed and sorted. Searching is great when you know what to look for. Chronological comes in handy if you know when a file was last/first used. Tags are a nice way to organize a single file in more than one way. At some point, you are stuck browsing for the file. Traversing a tree is fine in most cases.
    – JeffO
    Feb 11, 2016 at 18:37
  • 3
    I miss Google Drive's label system, where there weren't folders really. Any file could be placed into multiple labels, allowing you to organize in several different ways at once. So much easier in my opinion.
    – RubberDuck
    Feb 11, 2016 at 22:40
  • 1
    @RubberDuck OSX allows you to do it too, and I've always thought too myself "wow, that makes way more sense", because it's very often the case that a particular file belongs to more than one logical category. However, even though I feel that way, I don't take advantage of tags, because 1) I'm so used to organizing things in file hierarchies, and 2) applications understand file systems but not tags.
    – gardenhead
    Feb 12, 2016 at 2:54

4 Answers 4

9

Is there a better alternative to organizing files,

Yes.

will it replaced the current system any time soon?

No.

You can't replace the hierarchy as a way to organize concepts.

All file systems have hard links: the current file systems are not hierarchical.

People use them that way because people like that.

However, the file system is a "networked" database (not a hierarchical one). We just don't make much use of the network capabilities for one obvious reason. Anything other than a simple hierarchy is confusing.

7
  • 1
    hard links are forbidden to form cycles, so it's still hierarchy (not a tree though).
    – vartec
    Mar 17, 2011 at 10:41
  • 8
    -1 Because you need to qualify and explain the "better" system, instead of just saying "yes"
    – Darknight
    Mar 17, 2011 at 10:54
  • 1
    @Darknight: We already have a non-hierarchical graph. What we have right now is not a hierarchy. It's already better. There's not much explaining to do. The assumption underlying the question is faulty.
    – S.Lott
    Mar 17, 2011 at 11:03
  • 4
    I don't understand how a folder-based file system is not a hierarchical system. Could you please explain further?
    – gablin
    Mar 17, 2011 at 21:47
  • 1
    A concrete example for a file system that's decidedly non-classical: git. While git undisputably creates a file system, its commits form a structure that is not hierarchical. They form a DAG in its most general form, which allows any combination of branching and merging. Most files are even referenced by a ton of different commits, up to the points where they changed in history. Also, file/tree/commit objects can never change. And it's precisely these peculiarities that make the file system that git creates so highly useful. Feb 11, 2016 at 21:03
8

I don't think so, since there have been some attempts (e.g. WinFS), which all have been killed off. The "folder" structure is very common hierarchical structure. I can be viewed as taxonomy. I feel that it's a natural way to organize resources.

On the other hand, you can have front end views, like "recent files" or "all my music". But there is no real reason to implement that on low level, in the filesystem itself. You can have data structure for that build on top of the hierarchical filesystem.

7

Some experimental operating systems don't even have any files. They have some orthogonal persistence machinery. Look at some academic OS projects (Coyotos, Grasshopper, IsaacOS, etc...).

And old Lisp Machines in the 1980s might also had no file systems as we know them today.

The inactive tunes.org site had some discussions (from the previous century) about OS without files.

The issue with non-file based OSes is that they need to re-implement everything; even a C compiler needs some filesystem.... And sadly, there are few economical incentives to develop such an OS from scratch.

Notice however that our terabyte disks are a dirty mess (hierarchical file systems are not the best way to organize data in them), and it would be great if we could have something better than Unix inspired file systems (which have been copied in Windows).

Hierarchical file systems have been invented with Multics (1969); Unix copied them.

5

I think the folder based, tree-like file system is common but it's not the best. Indeed i believe a good classification of a file is better than to place a file in a certain 'place' e. g. folder.

Files are different in content and so, a mp3-file contains different meta information compared to let's say a png-file. Shown in a list with columns a problem occurs, just columns like size, creation-date etc. are in common.

If you look at windows explorer for example, the columns change when certain file types are detected. If you habe lot's of mp3-files in a directory for example, columns like Album, Title etc. occur. If amongst these files there is a png-file, these columns/cells don't make sense for that particular file/row.

I have found out that many times it would make sense, to place a file into more than one folder, just because there are more than one classification properties that identify the file. But why should a 'place', a 'folder' classify a file?

If i have a car, it doesn't matter if it is in the garage, in a parking lot or elsewhere, it's not the 'place' that identifies my car, but it's properties.

When all my files are classified properly and accurate by meta-data, it doesn't mind where it is stored, it's just in some 'cloud'. If i need to obtain a certain file, this should be done by specifications of the meta-data.

1
  • On Linux, a given i-node could have several hard links to it. So a file can belong to several directories Feb 12, 2016 at 17:14

Not the answer you're looking for? Browse other questions tagged or ask your own question.