Programming

Saturday, September 22, 2007

A new filing system

I was recently reorganising some files, and getting quite annoyed with how difficult even simple filing system tasks are. It occurs to me that the current filing systems are really badly designed from a user's perspective. For example
  • Knowing where stuff is is a nightmare
  • Disks get full
  • Data is always on the wrong disk, never where you need it
  • You copy to move it about. The two copies get out of sync.
  • It's not backed up
  • It's not securely stored
  • You need to delete junk occasionally
  • Data get duplicated, sometimes a lot.
Of course there are point solutions to all of these problems, but none I could really explain to my mother. The problem is that files are still presented to the user as they are stored on disk, not how the user uses them.

I think every data (or file, if you must) should have a URL, e.g. my photos would have a URL

file://calumgrant/photos/namibia-2007

Each file, or possibly each folder needs a simple policy, including
  • Lifetime: e.g. 1 week, 1 month, 1 year, permanent
  • Confidentiality: e.g. me only, work, friends and family etc
  • Portability: This machine only, This network, internet, mobile device(s)
If I plug a new hard disk into my computer, I want it to be used automatically. I just want to specify whether it's a permanent hard disk or one I take away (and where). If I specify data as portable, I want the data synced to the right places automatically. If I decide to remove a hard disk, I want the data to be moved off it automatically. If I mark stuff as permanent, I want it backed up silently and automatically, perhaps to an ISP or a backup drive. I want revision control so I (or a virus) cannot trash my data.

I think we may be entering a new age of usability. I really hope that users start getting a better deal soon. Computers should be much more geared towards the way users use data, not how it works underneath.

1 Comments:

  • Hello, I saw your article on Transactional Programming with C++ in Dr. Dobb's Journal--it was very nice.

    Regarding filing systems, maybe someone could use a library like FUSE (perhaps WinFUSE for Windows) to implement the features you were talking about.

    By Blogger Chinmoy, at 4:52 pm  

Post a Comment

<< Home