Insight braindump
Well this is going to be a very random and unstructured post, but I just wanted to note down a few thoughts and ideas before I forget about them… and I’ll probably update this a couple of times before finally giving in and making it a page. This is an evolving post.
- Many, many people have tried to do this. Why have they failed?
- Is it simply because they try to force this to fit into the framework of a relational database, which I believe is very badly matched to the entire concept?
- On this note, nobody seems to have picked up on my idea of structured naming either. Can I really be the first to think of this?
- Must find out as much as possible why other attempts have failed or not become mainstream.
- Many users (on blogs, etc) are crying out for this…
- My approach seems so simple; why has nobody else done it this way?
- It would be really nice if the filesystem itself could pick up some metadata about the files without the user having to add them.
- The best way I can think of to do this is via a plugin system, providing hooks at file write time which could (possibly) identify a file and then pass it to a list of interested modules, which provide hooks to parse the file and extract relevant metadata.
- This means that these modules could simply be written as and when needed (by a competent developer) and it makes the whole FS extensible. It also means that I don’t have to do it 🙂
- Example hook: MP3? EXIF?
- Need to find a way to get users away from the idea of files having a well-defined “location”, while at the same time providing some sort of URI for them.
- IDEA: legacy paths start with the first attribute being a null string (i.e. literally /path/to/file). Bit of a hack, but a null tag doesn’t make sense anyway. So you can still get to your files (if you must) via the path
/dbfs/legacy/home/dave/Documents/Uni/year4/project/docs/report/intro/introduction.tex
instead of
[uni/year/4 uni/project document/report report/section/introduction]or even
[dbfs report introduction] - Potential name: Insight. Backronym: “Insight: New Semantic Intuitive Grouping Human-friendly Technology”
- Samples:
- Dave’s home directory:
[owner/dave]
- Files that Dave is sharing:
owner/dave public
- Music:
type/music !type/music/midi <(artist|"Unknown Artist")/(album|)/(track&" - "|"")(title|"Untitled track").(file/extension)>
- Dave’s home directory:
- Must find academic papers (IEEE and ACM “metadata filesystem ieee” on Google)
- Remember: file/extension=”mp3″ == file.extension=”mp3″ == file/extension/mp3 🙂
Leave a Reply