Here's his solution to the problem; paste the following code into a text editor and save it as, for example, say.php in the top-level /Library » WebServer » Documents folder of the Mac you wish to turn into the doorbell:

To test from the Mac your created the file on, make sure Web Sharing is enabled in the Sharing System Preferences panel, then load http://localhost/say.php in your browser. To access the "doorbell" from another machine on the same network, use the Bonjour name (as shown in the Sharing System Preferences panel) instead: http://My_MacPro.local/say.php.

Sometimes when I am emptying the trash, I want to put another file into the trash, but OS X tells me I can't because "You cannot move any item to the Trash because it is being emptied." It happens more often than you might think, especially since I turn on "Empty Trash Securely," and often delete video files hundreds or thousands of megs in size.

However, if I move the want-to-be-deleted file into a Stack in the dock, I can then drag it from the Stack into the trash immediately, even while the trash is still emptying.

Leopard limits the maximum number of Recent Places in the pop-up menu of the Open/Save dialog windows to a mere five items. Following this excellent tutorial that robg wrote on finding hidden preferences, I figured out that if there is a hidden preference somewhere, it must live in /System » Library » Frameworks » AppKit.framework » Versions » C » AppKit. Additionally, since nearly all apps in Leopard use the Cocoa Open/Save dialogs, it was obvious that the preference key likely follows the Cocoa naming scheme and begins with NSNav, just like the rest of the bunch.

And the winner is: NSNavRecentPlacesLimit. To apply, type the following in the Terminal, where 12 would be the number of recent places to display in the Open/Save dialogs:

defaults write .GlobalPreferences NSNavRecentPlacesLimit -int 12

Alternatively, you can also open ~/Library » Preferences » .GlobalPreferences.plist with your favorite plist editor, add a new key named NSNavRecentPlacesLimit and set an integer value of your choice. (Being not really the Terminal type of guy, this is the way I actually did it.) Once you have "collected" a larger list of places in the popup menu, you will also notice that they are sorted alphabetically, not chronologically, which would actually seem more logical given the term "recent".

In theory, this trick might also work on application basis, but I didn't tested it yet. Also in theory, there might be a way for an app to remember its own set of places instead of fetching the current global list. In a short test (which was an old carbon app running in Rosetta, though) it sort of worked in that sense, in that this particular app showed only the predefined places I've added manually to its plist, but it didn't add any new ones.

To list these items, I simply added a NSNavRecentPlaces array with items containing the POSIX path of the places to the app's plist. This is different than Tiger, where Carbon apps had their own array AppleRecentFolders with file://localhost/... type of URL.) This still needs some more investigation...

Sometimes you just need to stop that Time Machine backup, whether it's because it's slowing down your computer and you need it to be very fast right then and want to backup later, or because Time Machine is not working (as is happening to me right now).

Sometimes just clicking Stop Backup item in the menu bar or System Preferences panel doesn't work (as is happening to me right now). If that's the case, you can turn to Terminal to stop it immediately. (You can also do this from Activity Monitor, but it takes longer and is trickier).

Once you've opened up Terminal (in Applications » Utilities), you can use the killall command to kill the process backupd, which is the Time Machine process. However, the process backupd is owned by root, so you need to run killall with root permissions via sudo:
sudo killall backupd
Type in you password when prompted, and Time Machine will instantly stop. This is handy if Time Machine is broken and not working.

[robg adds: I wouldn't recommend using this hint unless Time Machine is really and truly stuck -- killing the process means that it won't get a chance to nicely finish whatever it was trying to do. In some cases, depending on what it's actually doing, you may endanger your backups. With that said, I have had TM get stuck (typically at the "Finishing backup" step) for literally hours, and have eventually resorted to killing the process to get it to stop.]

If you are lucky enough to be test driving ZFS on you Mac, you might find this useful. The latest ZFS build from Macosforge.com has a problem where ejecting a ZFS-formatted USB disk and unplugging it will crash Leopard.

However, I wrote an Automator action [286KB download] that will sudo and run a ZFS export on all mounted ZFS filesystems, so you can safely unplug your USB drive with ZFS on it.

I Googled and looked everywhere when I tried fixing this issue, but couldn't find the fix (possible I didn't word it correctly). Eventually, I came up with the solution on my own, so I'm sharing here in case this affects others.

A coworker and I both had the same issue: While logging in, or just typing our password for admin rights to install or change settings, the authentication would hang up (sometimes for minutes). After almost giving up, I looked in the Accounts System Preferences panel, and noticed I was the only admin -- but I was listed as admin, managed.

Since I knew this wasn't correct, I created a test account with admin privileges and logged out and logged into the test account. I then opened Accounts System Preferences panel, and unchecked admin and then unchecked parental controls for my main account. After I changed the account back to admin, I logged out and back into the original account -- and the issue was resolved.

I have a feeling this was a bug that carried over from an earlier version of 10.5, as I was the admin from the initial install and never enabled parental controls. Hopefully this helps someone with the same issue.

As an Apple consultant, it never fails that when I'm looking at a client's system, as soon as I do a System Update, the Time Machine backup system wants to kick in.

Since turning it off could have dire effects if I forget to turn it on again, I've learned a little trick to give me a one hour maintenance window to work on the machine and not get slowed down by Time Machine hogging the disk I/O.

If Time Machine starts up on you, quickly go to the Time Machine System Preferences panel. If you look to the right of the Options button, you will see a progress indicator. If you click on the small circled X at the right end of the progress bar, you just bought yourself an hour before Time Machins starts another backup.

I tell clients to do this over turning Time Machine off and on all the time. If it isn't always running, you're not really doing backups, and missing the key features it offers.

[robg adds: I don't know how this differs from clicking on the Time Machine icon in the menu bar and selecting Stop Backup, but it's always nice to have alternatives.]

Apparently I have bad luck with MacBooks, because I have found myself going through this Time Machine repair guide with shocking frequency. The process of migrating an old Time Machine backup to a new machine is pretty involved and prone to errors, so I wrote a shell script that gets the job done automatically:

While recently setting up user accounts with parental controls, I decided to test how well various websites are blocked. I was using the Guest Account, which as far as I know, cannot be deleted. When checking the logs after my nasty little trip through the internet, I discovered that the logs cannot be deleted through the Parental Controls menu. I found a way to do this using Terminal, but also found a way to do this successfully using Finder. You will only be able to do this if you have administrator privileges.

The logs are stored in: /Library » Application Support » Apple » ParentalControls » Users » username. Normally, you will be allowed to see the /Users folder, but you will not have access to it. Accessing the file and deleting the log is straightforward:

Highlight the Users folder.

Select Get Info from the Action button.

When the information window opens, click on the lock in the lower right corner to authenticate.

Click the + and add yourself to the permissions list.

Assign yourself read/write privileges.

Return to Finder and select the desired user.

Entries appear to be organized by date. Delete folders covering the dates you would like to erase.

Restore correct permissions for the Users folder.

Restart computer.

This should completely erase the user logs as seen in Parental Controls.

For the few times I need to send a fax, I'm not going to mess with getting one of my broken third-party fax applications to run again. But the built-in OS X fax capability has some annoying limitations. One of the more annoying ones is that it doesn't save a copy of outgoing faxes. I wrote the following script as a kluge, to grab a copy of outgoing faxes and store them in /Users/Shared/Faxes/Outbox. The fax is saved (complete with the cover page) as a multi-page TIFF file.

I saved the script as watch_fax, in a spot where my admin user could get to it. You have to sudo to run this script, because it has to copy from /private/var. Don't forget to make it executable with chmod u+rx watch_fax.

To run it, I type sudo watch_fax. This script ends with a tail -f, which will show you the fax log as it's being written. When you're done watching the fax log, you'll have to kill the tail with Control-C. This script also references another of my scripts, called faxlog, that helps you set debug mode for the fax log. You can find that script in this hint.