tag filesystem idea
tags: files filesystem fs fuse python tagfs
31 Aug 2008 08:14
I just thought of my ideal file system, where nothing hides and is easy to find (without going through the whole system — either manually, or automatically — find or even the indexed way — mlocate).
The main idea is tags.
When I save a file I want to give it some tags.
Moreover, I want to be able to find a file based on its properties, like
- file properties — author, date created, type (PDF/TXT/XML)
- EXIF data — camera name, camera settings
- audio tags — artist, title, year, album, genre
How could it look like?
# ls /home/quake
wikidot/ python/ work/ tmp/ img/ music/
# ls /home/quake/wikidot
work/ tmp/ img/ howto.pdf
# ls /home/quake/wikidot/work
new-idea.txt
# ls /home/quake/work/wikidot
new-idea.txt
So it looks, like it doesn't matter if you navigate to work and then to wikidot or the reverse.
Moreover, I want to browse all my music files (having music tag) by author information:
# ls /home/quake/music/+artist/
Britney Spears/ Shakira/
PDF files inside of wikidot:
# ls /home/quake/wikidot/+type/pdf/
howto.pdf
This idea will be implemented with:
- Filesystem in User SpacE — FUSE
- Python
- SQLite
- Ubuntu laptop :)
Wish me luck
Comments: 3
INI Config File For Wikidot Open Source
tags: configuration ini opensource pingback wikidot
30 Aug 2008 00:16
Hello,
today I managed to create configuration file mechanism for Wikidot — based on INI file.
I posted two files — minimal one and one containing all possible options to the SVN repository:
Moreover I polished the PingBack mechanisms for Wikidot.
Comments: 7
Python Database: The Work Continues
tags: blog cache database dev object python
28 Aug 2008 21:36
Today more work was done by me on the object oriented database implemented in Python.
I dealt with some problems I came across like proper object encapsulation. Now, my database allows any object to be stored in it, even of classes that are internally used by my database.
I implemented "." and "WHERE" operators, which seemed the worst, because they needed working environmental stack.
Now comes, what's the most individual — optimizing things with query cache. Actually it's not a query cache, but rather a evaluateNode cache, but this works very similar (the only difference is that the evaluateNode cache is more deep in operation and can be used inside of queries. This means it can accelerate the processing even for one query!
More work will come for sure on this, because the cache seems to be really tricky with such a flexible database model we've assumed.
Keep tuned for more news
Comments: 1
SQL King
tags: :) bug fixed king sql wikidot
21 Aug 2008 10:00
Are you an SQL King?
I once met a person that used to write SQL queries more sophisticated than this:
select * from category where category_id IN (select cat1 as category_id from (select min(category_id) as cat1, max(category_id) as cat2, name, site_id, count(*) from category group by name, site_id having count(*) > 1 ) as c1 union select cat2 as category_id from (select min(category_id) as cat1, max(category_id) as cat2, name, site_id, count(*) from category group by name, site_id having count(*) > 1 ) as c2 );
This one is to check duplicated categories in sites from Wikidot. It's not optimal, but it works. Of course the situation when there exist duplicated categories is a bug, but it seems a really rare one, because from the beginning of Wikidot, there are only 20 such categories, all of them being forum, so this probably means a small bug in create a forum thing as well.