tags:

views:

92

answers:

2

Is it a "legit" programming practice to consider directory structure as a database? A hierarchical database. User has access to the database through Windows explorer.

Would it be reasonable to tell a user that he should "give" data to the program by organizing his folders in "x" fashion? Are there examples of software that do this effectively or particularly well? Is this a bad idea?

+2  A: 

A disk drive is not but a file system may be considered a database. Example WinFS.

Requiring conventions with folder sturcture is not a bad idea. Ruby works by convention completely by default.

Net Citizen
It is, however, probably best to avoid talking about it that way except with other professionals---people who will understand that you are using the word formally and won't expect to open it with access...
dmckee
+4  A: 

There are plenty of apps that use a particular directory layout to some end or another -- iTunes, subversion and gcc are three that pop to mind -- but I can't think of any applications that require the user to manually place files somewhere. Users are very, very good at getting things wrong, so if an app requires a user to change his behaviour to conform to the app's expectations of where to find things, the user is likely to end up frustrated. (Though I suppose it depends on the user. gcc has me pretty well trained.)

One of my rules of thumb is "make it so that the user has to manage as little as possible". iTunes does a pretty decent job of keeping music files organized by creating folders for artists and subfolders for albums based on ID3 tags, and it further idiot-proofs the design by keeping an XML manifest of each file in its library.

In general, if your app can take responsibility for where it keeps its toys, your users will be much happier.

Meredith L. Patterson