[comp.sys.mac.system] Misuse of the system folder...

tkav@allgfx.agi.oz (Tony Kavadias) (04/10/91)

This is too much!

I looked at my system folder one day and I thought "Apple made a system folder
for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
and hundreds of others all putting APPLICATION SPECIFIC files into a folder
which is designed for GLOBAL use????!!!!"  I see preferences files all over
the place in an ever-crowding folder.

The system folder is intended to hold files which may be used GLOBALLY, by ALL
applications (or at least by more than one). Why on earth are developers writing
applications which make their own files in the system folder if the files are
not to be intentionally shared?  That is what I call spastic!  They should be
stored in the same directory as the one the application was launched from.  NOT
IN THE SYSTEM FOLDER!

However, I have noticed Claris may be an exception.  Claris applications use a
Claris folder inside the system folder for keeping dictionaries, translators,
preference files, and the like.  The difference between Claris files in the 
system folder and files from other applications/developers are:

     a) grouped (placed in a folder), and
     b) are shared by more than one application (even if they are all Claris
          applications).

I would like to see offending software developers in future make careful plans
as to where they put their preference files.  DUMPING THEM IN THE SYSTEM FOLDER
IS NOT THE SOLUTION.  Thanks to them, we all have a messy System 6.0.  Let's
not make the same mistake for System 7.0!!!

There are a couple of suggestions which I would like to offer...

     a) place all non-sharable files outside the system folder.  The best
          place to keep them would be in the same folder as the application.

     b) for little things like preferences and other application-specific
          details, put them in the application file's data fork.  They will
          be hidden, save the system folder from congestion, and do their job.

If I find another application which installs application-specific files inside
the system folder, I'll send the Grim Reaper onto them (just kidding guys!)

I mean, Apple did not develop the system folder for all your garbage!


Tony Kavadias			|   "I've always known,
Melbourne, Australia.		|    I'll never die alone."

dorner@pequod.cso.uiuc.edu (Steve Dorner) (04/10/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
>I looked at my system folder one day and I thought "Apple made a system folder
>for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
>and hundreds of others all putting APPLICATION SPECIFIC files into a folder
>which is designed for GLOBAL use????!!!!"  I see preferences files all over
>the place in an ever-crowding folder.

Because Apple told us to, that's why.

You CAN'T put prefs files 'near' your application, because it might be on
a read-only AppleShare volume.

>I would like to see offending software developers in future make careful plans
>as to where they put their preference files. DUMPING THEM IN THE SYSTEM FOLDER
>IS NOT THE SOLUTION.  Thanks to them, we all have a messy System 6.0.  Let's

System 7 is reputed to have a 'Folder Manager' to make locating prefs files
and suchlike easier.

I suggest you lighten up, or apply for a job with WGN-TV; there's a very
popular noontime show where you would fit right in.
--
Steve Dorner, U of Illinois Computing Services Office
Internet: s-dorner@uiuc.edu  UUCP: uunet!uiucuxc!uiuc.edu!s-dorner

bskendig@drops.Princeton.EDU (Brian Kendig) (04/10/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
>I would like to see offending software developers in future make careful plans
>as to where they put their preference files.  DUMPING THEM IN THE SYSTEM FOLDER
>IS NOT THE SOLUTION.  Thanks to them, we all have a messy System 6.0.  Let's
>not make the same mistake for System 7.0!!!
>
>     a) place all non-sharable files outside the system folder.  The best
>          place to keep them would be in the same folder as the application.
>
>     b) for little things like preferences and other application-specific
>          details, put them in the application file's data fork.  They will
>          be hidden, save the system folder from congestion, and do their job.

Problems, here.  First of all, I can't write to the folder my
application is in; it's on a read-only server.  I suppose the
application could put its preference files in its own folder when it
can and in my system folder otherwise, but then what happens with it
finds preference files in both places?

Secondly, I don't want to have to work with someone else's
preferences.  I boot off my own disk, and the applications I run are
configured just the way I want them.

And writing preferences to the data fork isn't a terribly good thing
-- what happens if somehow my preferences get trashed?

     << Brian >>

| Brian S. Kendig      \ Macintosh |   Engineering,   | bskendig             |
| Computer Engineering |\ Thought  |  USS Enterprise  | @phoenix.Princeton.EDU
| Princeton University |_\ Police  | -= NCC-1701-D =- | @PUCC.BITNET         |
"It's not that I don't HAVE the work to *do* -- I don't DO the work I *have*."

wjb@tantalum.eds.com (Bill Biesty) (04/10/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
->This is too much!
->
->I looked at my system folder one day and I thought "Apple made a system folder
->for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
->and hundreds of others all putting APPLICATION SPECIFIC files into a folder
->which is designed for GLOBAL use????!!!!"  I see preferences files all over
->the place in an ever-crowding folder.
[...other stuff deleted...]

Because the system folder is the only one guaranteed to exist.  There are no links
in < 7.0, no environment variables like in unix that tell an app where its stuff is.
So it has to go somewhere that the application can find it relaibly.  The exception
to this is ThinkC (I think) and it gets away with it by requiring everything it needs
to be below it in the file hierarchy.

->I would like to see offending software developers in future make careful plans
->as to where they put their preference files.  DUMPING THEM IN THE SYSTEM FOLDER
->IS NOT THE SOLUTION.  Thanks to them, we all have a messy System 6.0.  Let's
->not make the same mistake for System 7.0!!!
->
->There are a couple of suggestions which I would like to offer...
->
->     a) place all non-sharable files outside the system folder.  The best
->          place to keep them would be in the same folder as the application.

Folders are a good idea, but not the best idea.
See above about UNIX environment variables and links.

->
->     b) for little things like preferences and other application-specific
->          details, put them in the application file's data fork.  They will
->          be hidden, save the system folder from congestion, and do their job.

Nah.  Some people lock their applications to prevent deletion and virus attacks.
Locking prevents modification.  Prefs files are the way to go.

[...other stuff deleted...]

->Tony Kavadias			|   "I've always known,
->Melbourne, Australia.		|    I'll never die alone."

dwal@ellis.uchicago.edu (David Walton) (04/11/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
>This is too much!
>
>I looked at my system folder one day and I thought "Apple made a system folder
>for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
>and hundreds of others all putting APPLICATION SPECIFIC files into a folder
>which is designed for GLOBAL use????!!!!"  I see preferences files all over
>the place in an ever-crowding folder.

[lots of ranting deleted]
>
>I mean, Apple did not develop the system folder for all your garbage!

They didn't *develop* it for that, no, but they do tell us that it's
the place to be for up-'n'-coming preferences files to be stored.
Picture this situation: an application sits in a directory on an
AppleShare volume that's write-protected.  Application tries to create
prefs file in its own directory.  Application fails due to
write-protection.  Hmmm.  In order to guard against this sort of
thing, Apple tells developers to put their preferences files in the
System Folder on the system disk.

Seeing tons of preference files in the System folder can be
irritating, I agree, but they had to go somewhere, after all, and the
only thing you can count on when figuring out where to put them is
that there's probably a a System Folder on the system disk, whose
dirID you can easily get using SysEnvirons.  (Unless, of course, you'd
rather just put them all out on the desktop....)

Anyway, System 7 has a folder manager and a designated folder within
the System Folder to hold preferences files (some programs, like
Stuffit Deluxe, already use this folder and create it if it doesn't
exist).  This should cut down on your frustration.

>Tony Kavadias			|   "I've always known,



-- 
David Walton            Internet: dwal@midway.uchicago.edu
University of Chicago   {  Any opinions found herein are mine, not  }
Computing Organizations {  those of my employers (or anybody else). }

Garance_Drosehn@mts.rpi.edu (04/11/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> 
           tkav@allgfx.agi.oz (Tony Kavadias) writes:
>This is too much!
>
>I looked at my system folder one day and I thought "Apple made a system folder
>for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
>and hundreds of others all putting APPLICATION SPECIFIC files into a folder
>which is designed for GLOBAL use????!!!!"  I see preferences files all over
>the place in an ever-crowding folder.
>
>The system folder is intended to hold files which may be used GLOBALLY, by ALL
>applications (or at least by more than one). Why on earth are developers
writing
>applications which make their own files in the system folder if the files are
>not to be intentionally shared?  That is what I call spastic!  They should be
>stored in the same directory as the one the application was launched from. 
NOT
>IN THE SYSTEM FOLDER!
 ...(remainder skipped)...

As I use Macs at work, I have more of an understanding of why things are
getting tossed into the system folder.  That works well in a networked
environment, where there is a file server that has all the applications on it
while each Mac user is allowed to have their own preferences.  By having the
preferences files in an easy-to-find place, everything works out ok.

And yet on my Mac at home this same behavior really bugs me.  At home all the
applications are used by me and only me.  More importantly, at home I have a
few different disks each of which has a different system folder (one for 6.0.5,
one for 6.0.7, one for a Hebrew/English system, etc).  So I pick the bootup
device depending on which *system* I want to run.

The problem then is that all those system folders contain stuff that has
nothing to do with the system per se.  I have to duplicate preference files all
over the place, or run the risk of having the different systems get out of
synch.  This seems particularly silly for things like "WriteNow preferences" or
my check-writing information (Checkwriter II puts all of the checking and
checking-account related info into the system folder too).

Will the aliases of system 7.0 help us out here, so we can have just one set of
preference files no matter how many different systems are setup?  Or couldn't
the Mac system have some other special folder for *non*-system files, so that
the system folder would contain nothing more than the files related to the
actual system software?

There are times when I get the feeling that after a few more years my hard disk
is going to have just one folder at the top level, a "System Folder" that has
everything else inside of it...  Right now (here at work) I have 50 meg used on
my hard drive, and 5.6 meg of that is in my system folder.

Garance_Drosehn@mts.rpi.edu

russotto@eng.umd.edu (Matthew T. Russotto) (04/11/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
>
>There are a couple of suggestions which I would like to offer...
>
>     a) place all non-sharable files outside the system folder.  The best
>          place to keep them would be in the same folder as the application.
>
>     b) for little things like preferences and other application-specific
>          details, put them in the application file's data fork.  They will
>          be hidden, save the system folder from congestion, and do their job.

Both A and B have the same problem:  The System Folder is the ONLY guaranteed-
writeable spot on the system. 

>If I find another application which installs application-specific files inside
>the system folder, I'll send the Grim Reaper onto them (just kidding guys!)
>
>I mean, Apple did not develop the system folder for all your garbage!

They made it so it is the only practical spot for it (7.0 has a Preferences
folder for 'all our garbage'..
--
Matthew T. Russotto	russotto@eng.umd.edu	russotto@wam.umd.edu
     .sig under construction, like the rest of this campus.

jnsims01@ulkyvx.bitnet (04/11/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz>, tkav@allgfx.agi.oz (Tony Kavadias) writes:
> This is too much!
> 
> I looked at my system folder one day and I thought "Apple made a system folder
> for a reason - why are programs like PageMaker, Stuffit Classic, Excel, Word,
> and hundreds of others all putting APPLICATION SPECIFIC files into a folder
> which is designed for GLOBAL use????!!!!"  I see preferences files all over
> the place in an ever-crowding folder.

At the risk of putting my foot in it, I understood that this isn't a bug, it is
a feature. By saving the preferences for a particular application in the system
file of the particular machine from which the application was started. Hence,
Joe User at his Mac starts an application located on the network server, and
his particular preferences are saved at his machine, rather than at the server
where they would be overwritten by the next net-user's preferences. The system
folder was chosen as the repository since that is the *only* folder that the
application can be sure is present on every Mac on the net. Granted, Claris has
chosen an even-more-elegant solution by putting their preferences in a
folder-within-a-folder, but the principle remains the same.

This may not be the real reason, but it makes sense. I'd be interested in
whether anyone can confirm or deny this guess.

************************************************************************	
 My wife AND my employer ignore my opinions - feel free to do the same!
************************************************************************
* John Norman Sims, Jr.                 *      BITNET: JNSIMS01@ULKYVM *
* University of Louisville              *              JNSIMS01@ULKYVX *
* Computing and Telecommunications      *       Voice:  (502) 588-5565 *
************************************************************************
 You can't win, you can't break even, and you can't get out of the game
************************************************************************

arends@yosemite.metaphor.com (Dale M. Arends) (04/15/91)

In article <1991Apr10.093946.22779@allgfx.agi.oz> tkav@allgfx.agi.oz (Tony Kavadias) writes:
>
>     a) place all non-sharable files outside the system folder.  The best
>          place to keep them would be in the same folder as the application.
>
>Tony Kavadias			|   "I've always known,
>Melbourne, Australia.		|    I'll never die alone."

Sorry, Tony, but I also disagree.  I use a Macintosh mainly at home and am
the only user of the machine.  Since I use 4 or 5 applications 75%-85% of
the time, I keep them at the top level rather than in separate folders.

I much prefer to have the preferences files in the System Folder (or when
possible, in a Preferences folder in the System Folder) than cluttering up
my desktop or top level window.

My preference (pun intended) is that applications check first at the local
level folder (etc.) and if the required preference file is not found, go 
check in the Preferences folder in the System Folder.  Lastly they could
look in the System Folder itself.  Any applications I write do exactly that.
This approach, I believe, solves single-user and networked Preferences clutter
problems.

Dale

-- 
-----------------------------------------------------------------------------
Dale M. Arends                    arends@Yosemite.Metaphor.com
Metaphor Computer Systems, Inc.   ...!{apple|decwrl}!metaphor!yosemite!arends

Any opinions expressed herein are my own and not those of my employer.  They
probably aren't interested and maybe don't agree and therefore ...

francis@daisy.zaphod.uchicago.edu (Francis Stracke) (04/16/91)

In article <622@cronos.metaphor.com> arends@yosemite.metaphor.com (Dale M. Arends) writes:

>My preference (pun intended) is that applications check first at the local
>level folder (etc.) and if the required preference file is not found, go 
>check in the Preferences folder in the System Folder.  Lastly they could
>look in the System Folder itself.  Any applications I write do exactly that.
>This approach, I believe, solves single-user and networked Preferences clutter
>problems.

The problem here is that, if a prefs file is installed on a shared
drive, in a protected directory, you can't change your prefs.


--
/============================================================================\
| Francis Stracke	       | My opinions are my own.  I don't steal them.|
| Department of Mathematics    |=============================================|
| University of Chicago	       | Should five percent appear too small,	     |
| francis@zaphod.uchicago.edu  | Be thankful I don't take it all.  "Taxman"  |
\============================================================================/

breidenb@Informatik.TU-Muenchen.DE (Oliver Breidenbach) (04/16/91)

hi nethackers,

I would also agree that the preferences folder is better than storing
preferences in the same folder as the application. Consider a sharable
application on a network. Any User should have his or hers own preferences
which will be stored in their local preferences folder rather than on 
the file server where the application is. This makes administration
more easy and the user doesn't have to configure the application any time
he launches it or a new update appears. Watch out for the upcoming generation
of applications with IAC, where those concepts become essential.

Have fun, anyway.

Oliver.

philip@pescadero.Stanford.EDU (Philip Machanick) (04/17/91)

Another problem I run into: if more than one person uses the same machine
(i.e., boots from the same hard disk), preferences etc. become impossible to
manage. Wouldn't it be possible to have some personal preferences strategy
(e.g., based on the person's AppleShare id, alias the preferences folder to
a different real folder)?
-- 
Philip Machanick
philip@pescadero.stanford.edu