rowanrook's Stuff

Home » rowanrook (2 trails)
rowanrook's Stats (public trails only):
Trails created: 60
Marks created: 468
Views received: 39,849
Positive ratings: 1
Negative ratings:
Comments received: 15
Comments left: 25
Brent Hopkins (rowanrook)
University of Wisconsin, River Falls
rowanrook's Trails: gnucash    (view all)

Why is it so bad for an application to write its settings to the user profile folder? Writing settings to the application folder is dangerous because you need to have admin rights on the machine and different users are stuck with each other's settings! Storing settings in the user profile folder also has the advantage that you could upgrade a program without losing its settings.

In a multi-user environment, it is indeed inappropriate to write settings in the application folder. However, portable apps are run from external USB flash drives or equivalent, so it is a personal device and writing settings to the application folder is therefore preferred. In addition, the admin rights requirement is no longer a concern since you have full access to the USB drive.

An application can cater to both multi-user environment and portability by checking with the user on startup (when it detects that the settings are not initialized yet) whether he wishes to write settings to the user profile folder or application folder. This should be relatively easy to implement, and makes no assumption on the user's preference. Underlying this mechanism is to check for a file eg. settings.ini in the application folder on startup. If the file exists, it write its settings to the application folder, otherwise to the user profile folder.

With regards to the issue of upgrading an application without losing its settings, you could just as easily upgrade a portable app without losing settings by avoiding the appropriate file(s). Some well-designed apps like Portable Firefox even has a explicit profile folder that you simply leave alone when copying over the new application files. This also has the added advantage of being able to easily maintain several versions of the same application, each with its own settings.

Tags: usb, portable, thumb, dsl, gnumeric, ...
A trail of 16 pages
Gnumeric and its source code are available free of charge, licensed under the terms of the GNU General Public License. This makes it easy to audit, and make custom extensions. For a comprehensive list of features, go here. Gnumeric will import your existing Microsoft Excel files. Import filters also exist for Lotus 1-2-3, Applix, Sylk, XBase, Open Office, Quattro Pro, Dif, Plan Perfect, and Oleo files, but these import filters are less complete. If you have knowledge of these file formats or have access to the underlying program, maybe you can help.
Tags: gnumeric, gnucash, bookkeeping, open source, collabnet, ...
A trail of 12 pages