4 ms·
Man, even a guy on the team felt like WinFS wasn't a great idea... I still think it's potentially revolutionary and that the POSIX filesystem is just old and cl
by geokon 9y ago
Man, even a guy on the team felt like WinFS wasn't a great idea... I still think it's potentially revolutionary and that the POSIX filesystem is just old and clunky
I think most people would expect
/home/geokon/program1/src/
and
/src/program1/home/geokon
to have pretty much the same content
A tag based file system that made the two equivalent would eliminate all sorta of annoyances where you can't decide how to structure your file hierarchy (should you have bin/program1 bin/program2 src/program1 src/program2 or program1/src program1/bin program2/src program2/bin? both layouts have their advantages).
Something like a "path/path/bin/path/path/bin" wouldn't work.. but it's hard to find a case where you really need it. Currently I do from time to time come across 'include' folders inside of 'include' folders, but not for any good logical reason.. more b/c an in-source build vomited something up
You could also have tag based permissions so sharing files between users becomes a lot more sane (file1 has tag 'bob' and tag 'bill' so that they both can access it, instead of having it in .. /home/bob/ and then sim-linked to /home/bill/ or whatever other workaround you'd do in POSIX)
Yeah, the filesystem wouldn't work so great if you have thousands of tiny files... but I'd probably argue that you shouldn't have thousands of tiny files in the first place. If your program needs tens of thousands of tiny files then it should probably use something other than the filesystem
- angelsl 9y agoSo now we need to invent something else to organise source code repositories?
- macintux 9y agoI don’t know that he thought it was a bad idea technically but that it wasn’t necessary for the user-facing features they needed, and would have been much too disruptive for the remaining benefits such as you describe.
- pritambaral 9y agoPurely tag based filesystems are not better than hierarchical filesystems because hierarchy is meaningful. The 'pritam' in `/home/pritam` has a different meaning than the one in `~/Documents/taxes/pritam`. > Yeah, the filesystem wouldn't work so great if you have thousands of tiny files... but I'd probably argue that you shouldn't have thousands of tiny files in the first place. If your program needs tens of thousands of tiny files then it should probably use something other than the filesystem That's dismissing a core feature of many production file systems today, some of which are used precisely because they support this feature.
- geokon 9y agoThat's a valid counterexample! :) The first implies ownership and the other just designates folders with information about 'pritam'. `~/Documents/taxes/pritam` could be a folder on your accountant's computer and then it'd have a different meaning than on your machine. You're not wrong, but I think that that situation is rather rare and rather harmless. In the vast majority of cases the context doesn't change the meaning of the name much. The converse situation, where you have many folders with the same meaning, is a lot more common. You probably have dozens of 'src' 'include' 'build' folders on your machine; and you could have dozens of folders called "June" "August" "September" - all which carry the same exact meaning in their respective contexts. But we've been forced to recreate these redundant folders b/c the system forces us into use a tree structure for concepts that don't necessarily conform to it.
- acoard 9y ago>In the vast majority of cases the context doesn't change the meaning of the name much. It absolutely does, and in a vast number of cases I have duplicate folder names. I probably have a hundred different folders on my computer called "src". Knowing that it's ~/dev/projectName/src/ helps me know which src folder it is. For a non-software example, I always organize my client folders somewhat like: ~/clients/A/contracts, or ~/clients/A/designs, ~/clients/A/notes
- revelation 9y agoTag based permission system AKA SELinux. Tried, tested, determined to be superfluous bullshit whose only protection is in the jobs it saves at the NSA required to maintain any sort of SELinux ruleset.
- BenjiWiebe 9y agoSELinux does great at preventing privilege escalation exploits... Tried to root my phone, got a uid 0 prompt, but SELinux kept me from doing anything useful with my "root".