Rob, an important consideration in designing an application, especially a database, is data preservation in case anything goes wrong during a series of actions — especially things that are outside the control of the application such as an operating system error, a power supply glitch or user inattention.
In almost any context, an action could be described that would appear to be more efficient, but increases the riskiness of the action, perhaps in some cases turning out to be extremely inefficient.
Example: I’m walking along a sidewalk in the middle of a block in a busy urban environment. Across the street, I see a store that I would like to enter. What’s the most efficient route to get to that store? Obviously, the shortest path would be to jaywalk directly across the street, through traffic. If I do that, and don’t get killed, injured or arrested I would have saved time and effort in achieving my goal. But if I do get killed, injured or arrested then that pathway turns out to have been very inefficient.
Take the recommendation that, whenever a Finder file is Imported into a database, the original should be deleted. Most of the time, that would suit me fine, as that would save me the time and effort of deleting that original file, which is what I usually do.
But for a large number of users, who have different workflows than you and I, that could be disastrous. Perhaps that file that has just been deleted is being used by another application, or even a different database. Now, it’s gone and that user has lost information. Unless that other user is paying attention and immediately recovers that lost file from the Trash and replaces it into its proper location, DEVONthink has acted very inefficiently, even malignantly for that user. It has caused harm. Even creating a Preferences option for the user to choose, perhaps one way in one context, and differently in another context the option to choose whether the original file is deleted when Imported may not be a wise database design — for it increases the riskiness of the action and demands constant user attention, rather like jaywalking.
I, too, would often like the option to save a file, perhaps a newly created file in Papers or Keynote, directly into a database — just as I can do with my Web captures . Perhaps that may come in the future, when it can be done safely. Until then, a redundant step protects the time and effort I’ve spent in creating that file. For the time being, I can save that new file into a folder to which I’ve attached a Folder Action script to send it to a database. Even were the Folder Action script to fail, I still have access to that file.