Working with the system

by Giles Turnbull

When I first switched from Windows to Mac OS, I was an obstinate and arrogant young man who thought he knew all the answers.



Having spent the previous years working extremely hard to keep Windows stable and usable, I mistakenly took the same approach with Mac OS X. On starting to use it, I decided that I was the boss, and I would make the system work my way.





36 Comments

Erica Sadun
2007-02-15 09:47:06
I still have Command-N aliased to new folder in Finder. I just haven't had time yet to train my fingers to use the "new" OS X equivalent.
Michael
2007-02-15 10:08:29
I agree. Sometimes taking a step back to look at things is the best way to move forward.
weldon
2007-02-15 10:23:00
I had a similar moment of realization about installing applications. A lot of the software I get comes in a .dmg file which you mount on the desktop as a faux volume. I was in the habit of opening this volume and then opening a second Finder window with "cmd-N" and setting it to the application directory with "cmd-shift-A". Then I would drag the .app file to the other window.


It took me a while to finally realize that I could just drag the app to the Applications icon in the sidebar of the volume window. :)

pauldwaite
2007-02-15 10:27:56
> "It's to point out that sometimes, it pays to work with OS X, rather than against it."


With any tool, I think you need to spend some time figuring out how it's meant to work. Someone (or lots of people) have spent time designing it. They may well be much smarter than you or I, and have figured out what's quicker and more productive. You need to at least give them a chance.

Will Norris
2007-02-15 11:41:30
I would note that having an Applications folder in your home directory is not working "against the system", quite the contrary really. Mac OSX is designed to look in a number of places for applications -- ~/Applications, /Applications, /Network/Applications, and possibly others (not sure). This is akin to how it looks in multiple places for "Library" folders. While it can make certain sense to use a single Applications folder in a single user environment, that might not be possible in multi-user settings. Imagine a university lab computer, where a user's home directory is mounted at login. Putting applications in ~/Applications causes them to be available on whatever machine you log into, plus the administrator may have locked down /Applications.


All that being said, I generally agree with you on keeping apps in one place when possible. My one exception to that is a new application I'm evaluating... I put that in ~/Applications until I've played with it a bit and decided if I want to keep it around or not.

Jeff Flowers
2007-02-15 12:00:14
Keeping all third party programs in ~/Applications is a great thing, as it is officially recognized by Mac OS X as a spot to keep them. I like it because it keeps my computer nicely segregated between Apple supplied binaires and the stuff I have installed myself.


It also makes backing up easier. The only thing I concern myself with is backing up my home directory.


The only downside that I see to it is if you have several user accounts and want to share an application between them.

Jeff Flowers
2007-02-15 12:04:18
More information on what Will was talking about:


File System Overview

Evan Rose
2007-02-15 12:29:08
Once upon a time, Mac OS X would create an Applications directory in each user's home directory when a new user was created and dutifully, that's where I've always kept my downloaded and user installed apps. If one keeps everything they download, install, create and use in their home directories, migrating to a new machine or running an Archive and Install should something go wrong becomes so much easier. As far as *finding* these apps goes, that's what Quicksilver and the Dock are for.
Duncan D'Nuts
2007-02-15 13:19:14
I'm the sole user of my machine, yet I still keep all my 'private' apps in ~/Applications. As others have mentioned, it facilitates backups and, in a more extreme case, makes restoring a machine from scratch much simpler.


The first thing I do when I set a new single-user machine is create an 'admin' account and keep it sacred. The only time it gets logged into is system update installations, disk checks, and other admin stuff. All user accounts, including my own, do NOT get admin privileges. I also set up a number of 'test' accounts as isolated sandboxes for uncertain downloads or other temporary work that I'd rather not clutter my own home directory with. As a result my home directory has very few unwanted prefs files or other crap that misbehaving apps sometimes leave behind.


How to handle (non-Apple) applications that more than one user account might want, such as Stuffit Expander (I know, I know)? Create a 'Shared Apps' folder in /Users/Shared. Make an alias from those into your ~/Apps folder, along with aliases to the Apple apps that you actually use from /Applications. (How often do people use Chess.app?)


So now you should have ~/Applications (or ~/Apps if you're into brevity) filled with your own private applications, links to the shared apps mentioned above, and links to the Apple-issued apps that came with the initial installation. Bonus feature: to back up all your anal-retentive administrative efforts, everything is inside your home directory.


The only place this breaks down is with moron-designed installers like everything from Adobe that insist on admin privileges for their prima-donna binary files, which simply cannot function outside of their rigid installation worldviews (yes, I'm bitter.) You can't install those into your own home directory because they'll never be able to find or remember their own support files. Many other Vice-installed software packages also suffers this lack of intelligence. Write your congressman.

R. Brown
2007-02-15 15:02:29
Does anyone use ~/Documents ? Plently of programs like to put their crap there -- things that are user-specific but not exactly user created documents. Every time a save dialog defaults to the Documents folder, it makes me wince.
Alastair Houghton
2007-02-15 16:10:06
If you're going to have your own Applications folder, call it ~/Applications, not ~/Apps, because the system knows the former name and so you'll get the same experience you would normally expect from OS X (e.g. applications will automatically open when you double-click appropriate files, the Finder's contextual menus will offer relevant applications under Open With, etc...)


As for ~/Documents, yes, I keep all my documents in there (which is what it's for). There are some Microsoft badly written applications that stick preference data and other information in your Documents folder, but they shouldn't and their creators should be chastised.

Ariel Frailich
2007-02-15 16:14:32
Giles:


Nothing wrong with your instincts; rather, you made some assumptions based on previous experience and they led you down the wrong path. Having spent years using Windows and learning how to make the darn thing actually useful, you probably couldn't conceive of a system that doesn't make you jump through hoops just to get it to work, so you naturally applied your (very expert) knowledge to something that, it turns out, doesn't require it. I'd call that an honest mistake -- one that I made as well, when I switched a few years ago.

Raj Singh
2007-02-15 21:12:45
Well, technically speaking, any mods you do to OSX, regardless of if it came that way or not, are still logically built into the framework that Apple has created for you to work within. That their framework allows for mods is also their doing. So, what I'm saying is that you're essentially exactly what they say you should do, although they don't outright suggest it by making it your default. Logic! Woot!
Gillo
2007-02-16 01:02:45
How about the 'Utilities' folder? What kind of apps people put in there? And how about the creation of an 'Internet' and, for example 'games' folder? Is this still going against the OS X 'logic'?
Steven
2007-02-16 04:12:13
I had a similar 'fight' when I moved from os 8.6 to os x.
The problem I had was with itunes.
In os 8.6 everything was available to everyone. Being in this frame of mind I couldn't get my head around the fact that in os x every user had a separate account and of course each had their own itunes library.
I tried everything, to make the same music available to everyone with the same playlists etc. The main problem was with permissions and I eventually gave up and 'seen the light' and now each user has their own itunes library etc. A far better system.
I think part of the problem was trying to save space on the hd. My last computer had an 800mb hd and saving space was a constant task. I brought this habit over to the new machine and as they say old habits die hard.
Todd Vanyo
2007-02-16 04:33:59
I recently came to the same conclusion about Finder. I had downloaded Pathfinder and realized 90% of the stuff I liked about it could be done with folders on the Sidebar.


I didn't want to pay for something that Apple may decide to do in Finder someday (tabs in Safari! - tabs in Finder?). I forced myself to put folders in the Sidebar and have found it much faster to use.


As for the Documents folder - if Entourage stuff wasn't in there I'd drop that folder in a minute.

jbelkin
2007-02-16 10:04:52
Good column - you're absolutely right. While some people seem to hate the dock also, a lot of people fail to realize that the dock holds folders or aliases of folders so with a few folders in the dock, I can access a couple hundred files and apps without having to install a 3rd parety app and hoping it's upodated with every ystem revision or update ... and of course, you don't just need to live the blue folder icon, you can change it visually to something more easy to identify INTERNET apps from GRAPHICS apps ... you also also move the DASHBOARD inside a folder ...
Marcos
2007-02-16 13:52:51
re:Steven - there are ways using ACL (access control lists) to share an iTunes or an iPhoto library across all users. I found the hint at macosxhints for iphoto and set up my parents computer that way. I'm sure a similar setup would work for iTunes... but ACL is in Tiger and later only. Just in case you ever change your mind and want one iSomething library for all.
David
2007-02-16 15:27:08
I'd guess that most experienced Mac users don't realize that application and folder aliases can be stored in the Finder tool bar. In fact I'd bet most don't even realize it is a tool bar because the solid metal color offers no visual clue that the buttons can be moved, removed or added to. Besides that, it's highly unlikely that any Mac user would right click in the tool bar even accidentally.


Since this is a "trying to outsmart MacOS X" article I'll tell you my most embarrassing case of thinking too much. 10.2 was the first version to require more than one CD. I did a custom install that left out most of the extraneous bits like alternate languages and printer drivers which led me to believe the second CD would be unnecessary. So when the installer reported that it was done and rebooted my Mac I believed it was completely finished and held down the mouse button to force the CD to be ejected at startup. I was greeted with a grey screen.


Having realized my mistake I put the CD back in and re-did the installation properly. The Installer reported a successful install and rebooted the system. Unfortunately it wouldn't boot beyond a grey screen. Luckily this was an older Mac that could still boot from an OS 9 CD. I tried deleting the System and Library folders and re-doing the 10.2 install, but even that didn't work. It wasn't until I wiped all traces of OS X from my system that I could get a successful Jaguar installation.

David
2007-02-16 15:40:25
Steven and Marcos:
I find it really strange that you have to jump through so many hoops to get iPhoto to let users share a library. In one of their Knowledge Base articles Apple specifically says they do not recommend users to attempt to share an iPhoto library.


I can understand everyone having their own iTunes library, but my wife and I share a digital camera so there's only one collection of photos. When I downloaded the pictures from the camera she was running into trouble editing them. It was frustrating to say the least. ACL wasn't available in Panther and the accounts pref pane doesn't allow for creation and editing of groups so I decided the only practical solution was to avoid ownership altogether. I partitioned the hard drive and told OS X to ignore permissions on the second volume. Now anything we want to share goes on that volume and our personal stuff stays separate. My only worry is that Time Machine may not back up both partitions. If that's the case I may have to learn some unix.

Scott Anguish
2007-02-16 18:21:32
Using ~/Applications is perfectly fine. I do this as often as I can because, as a developer, I reinstall/upgrade the OS often and this makes it 100% easier. I avoid relying apps that require an installer and put things in System level places.


As far as Alastair's comment about Mac OS X looking there for applications..This is all done by Launch Services now, so that this is certainly not an issue if you rename it something else.


My organization of my workspace likely hasn't changed much since, oh, working on NextStep in 92. Even when I relied on Mac OS 9 for some workflow at work I used my style of workflow.

Jacob Rus
2007-02-16 18:46:53
There are a lot of misinformed comments here. OS X doesn't care where on disk you store your applications. They could be in ~/Applications or on the desktop or, heck, in ~/Dogdoo, and the system will treat them identically. The Launch Services database reads out the info.plist inside each app to determine which types of files it will read, wherever the app is on disk
Jason
2007-02-17 08:16:36
Giles, everyone is stubborn, some more than others. I admire your humility in admitting that sometimes familiar is not always better.
Scott
2007-02-17 08:54:56
Regarding /Applications and ~/Applications, it is a Good Thing to use ~/Applications, even on a single user system. However I wish Apple would buck up and implement some type of Unioning into the Finder. That way, the ~/Applications could actually be an amalgam of the contents of ~/Applications, /Applications, /System/Applications (where things like Disk Utility should live--think /bin vs /sbin), and /Network/Applications. Non-admin users would not see Admin tools and when they added new apps, they would reside in ~/Applications. Admin Users, when adding a new app, would get a dialog box asking where to install the app (This User/All Users), similar to the behavior of the PreferencePane manager (configurable). Alternatively, they could add apps directly to /Applications.
In this way, normal users wouldn't have to know about ANYTHING really outside of ~/.
Duncan D'Nuts
2007-02-17 13:59:21
NeXTstep used to make the system/user distinction with NextApps and LocalApps, where the latter was the repository for third-party apps that the entire workgroup could access. Ultimately, Apple should recognize the following hierarchy, and provide for the 'unioning' that Scott mentions:


Apple apps - available to all users
Shared apps - 3rd party apps available to all
My apps - individual apps available to a single user


In theory this could be implemented with the minimum of effort, but certain 3rd-party installers (Adobe, VICE, Canon, etc.) don't honor non-admin installations. To make matters worse, Apple never clearly defined where all the support files and libraries should reside, so those get smeared across the entire file system by the aforementioned installers. I think that most people here would agree to the overall goal of flexibility WITH support-file consistency, and we're not there yet.


One thing that I would have thought would force the issue is the idea of per-seat versus site-wide software licenses. If I'm the only user on my network that has purchased Photoshop, for example, wouldn't you think that Adobe would welcome the installation option of my keeping it entirely within my home directory? Alternately, if I choose to install it in a shared apps folder, then the app in question should honor multiple license access simultaneously (which some of the more intelligent installers/apps already do). As it is now, we're dealing with installation and license mismatches like old PCs used to deal with fonts. It's well past the time to unify this stuff.

Art
2007-02-18 10:48:23
Apps do not behave the same if installed in alternate areas of the drive. I can't speak for ~/Applications or similarly-named areas, but I've seen people install Apps right on their desktop.


I've seen Firefox misbehave and also many games.


Life is short. I just install everything in the /Applications folder, as intended, and never have problems. It's not that difficult organizing anything, since Aliases are available and allow me to achieve everything mentioned in these posts 'legally.'


I keep my system lean and mean and don't stray from the paradigm of Apple and it never gives me problems.


I had to laugh, however. When I moved from Apple OS to NeXT in 1989, I attempted to do the exact same thing as the author. Things worked OK for a while, but gradually came apart. Finally, a NeXT engineer had to come out and set me straight. I saw the light at that point.

RobInNZ
2007-02-18 15:15:26
This is exactly why I sit and smile when I see people blathering on about how wonderful their life is with XXXX latest 3rd-party OS-extension utility.


As a systems-engineer starting off in DOS 2.x days, I used to carry around 'must-have' utilities on a floppy since there was a lot of things we needed to do that just werent in the OS. Defrag utils, Nortons, etc etc.


However, OS's started to include useful tools, and at the same time utilities have become vast apps in their own right with installers and such-like. Coupled to which, these same 3rd-party tools have often ended up being the reason for system stability issues.


So as time has gone on, its become more and more clear to me that you should learn, if at all possible, to make do with the tools available to you in the OS. That way, its there, no matter what computer you are working on.


Yes, there are instances where you NEED to use 3rd-party tools, but reducing them to a minimum is usually a good idea. The only time I suggest that 3rd party tools are of benefit is when they produce a huge increase in productivity and that there is no way to duplicate this functionality in the base OS.

RobInNZ
2007-02-18 15:46:21
Regards comments on iTunes and iPhoto.


Fully agree that trying to use these in a multi-user environment (with User Switching) is a major PITA. To me, this is one place where Apple have really dropped the ball.


We have 3 or 4 digital cameras, across several users. Trying to keep all our photos accessable by all users (or some users) is a nightmare. Especially if some of those users arent particularly tech orientated.

Dave Hanks
2007-02-18 19:13:45
A good friend of mine switched to Mac on my advice 16 months ago... I hated his calls. He bitched and moaned, bitched and moaned. One day he calls me and says "I got it!" He realized the difference after spending a full day doing "maintenance and updates" on his wife's PC. He is now an avid Apple Mac OS X fan and recommends Mac to all who will listen. He too was working hard doing what the Mac does best... manage it's resources.


As the song says "...let it be."

Wilson
2007-02-19 06:14:23
I was a person who did and tried everything to customize the Finder, bloated away and spent too many times searching for things to get "the way i want". Well, this was before OS X. I'm a programmer and did install too many open source apps that touches sensitive parts of the OS that i loose control many and many times. Now i know, OS X works like a charm, and since 10.2 never did nothing in terms of customizing except for quicksilver and never more spent (lose) time doing things that probably Apple Engineers are doing (and paid for). OS X is just a way to use my apps and get the job done!
Ken Heins
2007-02-19 09:08:01
Hey, no problem, I have attempted to reinvent the wheel many times in my life, and always end up with triangular, square, pentagonal wheels that don't roll. Probably will try it again.
Rick
2007-02-19 13:17:32
I am not going to even begin to tell you how stupid that was.
Nic
2007-02-19 14:38:26
Agreed. Applications especially should remain within the /applications folder, though sub-folders are fine for smaller apps (Adobe apps can be a pain to relocate). I keep a separate folder for applications I'm trying out, then either move them to /applications after I like/buy them, or dump them by running AppZapper. I find that I can forgo many finder navigation needs by using MaxMenus (an essential Finder enhancement I've used for years). Aside from that, I have a master folder on the root level for my files/documents, as I don't trust Apple updates sometimes to not mess with my /documents folder in my user directory. All in all, keeping within the basic OS X framework really does save headaches over enforcing your own.
Fred
2007-02-21 16:40:49
I'm a compulsive tryer-outer, so I end up with hundreds of downloaded apps that I try once and then they just quietly rot away on my drive(s). A long time ago I tried organizing everything into subfolders in /Applications, but that broke pretty quickly: do an OS upgrade and Apple's installers would put all new versions of their iApps back into /Applications and I would have to root around deleting duplicates, etc. So what I do now is leave Apple's apps wherever Apple wants 'em, but I put 'my' apps into /Applications/Apps/{subfolder}. This works fine. Even for Adobe apps, which end up as /Applications/Apps/Adobe Apps/Photoshop CS/ etc. The advantage to me of doing it this way over putting apps into ~/Applications is that I get a pop-up menu of all my apps in the dock with just one alias there. I may have to navigate through a couple of subfolders, but it works quickly for me, and I don't have to remember if things are in /Applications or ~/Applications. Being the control freak I am though, I HATE it when apps ONLY work when in the /Applications folder. SpamSieve is one that springs to mind. [This does remind me of my OS9-savvy buddy who installed OSX, then when he booted back into OS9 decided to tidy up his hard drive the way he was used to, and got rid of all those annoying .files as well... he couldn't understand why OSX wouldn't run anymore now that all the /System files were in /System Folder. Heh. Good times. ;)]
Matthew Sporleder
2007-02-22 07:55:28
Try using symlinks and correct permissions for sharing your iTunes and iPhoto libraries. Just replace the ~/Music and ~/Pictures with symlinks to /usr/Music and /usr/Pictures (or wherever you like- What a great thing to keep on NFS for a big office to share a lot of photos..)


I haven't tried it, but I like to talk from my other end. ;)


Maybe you could simply add these links to /etc/skel. (/System/Library/User Template/English.lproj/? in osx non-server)


Anyway.. good luck. I also didn't know you could drag apps to the finder like that. I always just used the left panel for common directories.

mike
2007-02-23 08:21:55
isn't it nice to see the word NeXTstep now and then - brings back old times