← Back to team overview

ubuntu-phone team mailing list archive

Re: Potential to replace files/folders with tags

 

Well, I think that the connection between traditional file/folder system
and tag system could be very easily done:

Every file get's a unique ID (best would be to consist of letters AND
numbers). Then all the files are stored directly within the root folder and
their file name is their ID.

So the files have a never-changing identifier and therefore filename. When
you want to "rename" or "resort" or "retag" files this is only reflected
within the meta-table but programs can still access that file via their
path/ID.

Furthermore, this ID makes version tracking and synchronizing much more
simple since you don't have to mess with renamed files.

Nevertheless, this system makes no sense for system files or similar.
That's why I think it would be the best way to implement this for the users
home directories or any other special path.


I think that the file system layer should be directly accessible via
console. For the file manager, I would suggest something like a
"change-view" button which is set to tag-display by default for all
supporting locations.



On Mon, Feb 25, 2013 at 3:50 PM, David Jordan <djordan2@xxxxxxxxxxx> wrote:

> As someone who has worked with the "tags" vs "files and folders" problem
> quite a lot via the Novacut project, I thought I should chime in here.
>
> The problem with the traditional files and folders system is that it
> conflates two very different concepts, location and description.
> Applications need to know where a file is in order to work with it, while
> humans need a readable description of the file in order to understand what
> it contains and how it relates to other files.  The problem with tradtional
> file systems is the same hierarchical structure is used for both purposes,
> and this can become a problem when the user's understanding of a file or
> set of files changes over time.
>
> Human understanding of what particular files mean and how they're
> interelated can and will change over time.  And if you've strongly coupled
> location with description like we tend to do with traditional file systems,
> that means the location changes and all the interconnections between files
> break if the description is ever updated.
>
> If I start a new project, I might start it out with a given working title
> or perhaps no title at all because it started with just a flurry of writing
> at 2 in the morning.  I can change it later.  This is fine as long as
> nothing else relies on being able to find that particular set of files, but
> say I had needed to use some bits of it in another program, suddenly I'm
> either locked into all the assumptions I'd made about file structure or I
> have to start forking separate copies into a bunch of different places.
>
> Fortunately, we don't have to ditch all the great work on file systems
> that has been done already.  They do work great for storing and locating
> files.  What we have to do is let the user find and interact with their
> files without caring about exactly where they are in the hierarchy or what
> their true name is.
>
> The way Novacut handles this is through a database that keeps track of its
> set of files and stores metadata about them.  Every file has a unique ID in
> the system and even though files are read-only in our system, it's quite
> trivial to indicate relations between the raw files with metadata, so
> applications can simply point to the most up to date version of something.
>
> While we probably shouldn't hide the underlying file system from the user,
> I do think a way to search and organize one's files based on metadata
> rather than traditional folder hierarchies and file names is a great idea.
> Moreover, applications should be able to relate to files using either the
> traditional route or through unique location-independent identifiers.
>
>
> On Mon, Feb 25, 2013 at 2:30 AM, darkdragon <darkdragon-001@xxxxxx> wrote:
>
>>
>> On Mon, Feb 25, 2013 at 12:06 AM, Matt Richardson <
>> m.richardson.1990@xxxxxxxxxxxxx> wrote:
>>
>> My idea would be that the tags would operate as follows:
>>>
>>> When saving/creating a file any number of tags can be selected as well
>>> as a name. By default the 'username' tag would be selected.
>>> The actual filesystem would place the file in /home/username/tag1/tag2/
>>> Tags beyond tag 2 would not be included in the folder hierarchy. A
>>> database (similar to zeitgeist) would also be updated to contain the full
>>> list of tags and files
>>> When selecting files (file manager or open dialog) all of the available
>>> tags would be listed. When a tag is selected, the list updates to show tags
>>> which contain files matching the first tag
>>> In order to show root files the "system" tag would have to be selected.
>>> The file manager would then switch to standard file/folder view, since we
>>> can't easily update the root filesystem
>>>
>>> Further, you could allow tags to have tags themselves. This would give
>> the possibility to have a tag (e.g. "ProjectXY") - with all its tagged
>> files - to reside inside /myprojects/currentprojects and /work/2013/ tags.
>>
>> But I think this is only good for user files and not system (since then
>> system would depend on the working tag system). Therefore you would need to
>> write a whole new file system to have it working stable enough...
>> Further, I think putting your files into sort of randomly named folders
>> would be better than using your tag1/tag2/ structure since it is not
>> clearly defined which tag would be tag1 and which one tag2.
>>
>>
>> On Mon, Feb 25, 2013 at 2:02 AM, Mike Sandman <mike@xxxxxxxxxxxxxxx>
>>  wrote:
>>
>> Couldn't you achieve this using a user space file system? That seems
>>> quite a bit less drastic. Keep in mind that we still want there to be 1
>>> underlying operating system running across different hardware including
>>> desktops and servers
>>>
>>  I also think that it's no a good idea to really kind of replace the
>> operating file system due to compatibility between devices (including your
>> desktop ubuntu).
>>
>> Since I like the tagged file system idea, what about a special file
>> manager (user space only)?
>>
>> Or why not implementing this into Ubuntu One? This way you would have a
>> private synchronized user space. To make syncing easier you nevertheless
>> need some sort of table and there you could store further information like
>> tags. What do you think of that?
>>
>> cheers, darkdragon
>>
>> --
>> Mailing list: https://launchpad.net/~ubuntu-phone
>> Post to     : ubuntu-phone@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~ubuntu-phone
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>

References