As much as one would like to exercise pure personal discipline in avoiding constant web browsing and email checking when we need to be working seriously, sometimes it takes a little bit of a forced "fencing off" of distractions. Some routers have timing routines built into their config -- but not AirPorts (as far as I can tell.)
Here's what to do: go buy a cheap household lamp and appliance timer (usually under ten bucks from your hardware store; here's the one I use. I have my timer set to 'turn off' access between 7:00am and 1:00pm. You can get timers that give you one, two, or three cycles daily.
Now, the real tip, with two options:
Put the timer between your cable modem and your AirPort. This will block all access, including to your local network. It keeps your VOIP phone service on.
Put the timer between your cable modem and the AC wall power. Advantage? Maintains LAN access, and if you use a VOIP phone service, it turns that off as well, for total distraction control.
This works best for me when my AirPort and cable modem are in a room far from my home office -- less chance of cheating.
[robg adds: Draconian, I know, but I thought it a creative use of a wall timer to enforce a net-free work time. Of course, since my work time requires that I be on the net, this really wouldn't work in my setup. Reverse the hours though, and I could use it to insure I only go online when it is work time...]
When .Mac overhauled their interface late last year, I was surprised and relieved by the vastly improved functionality. As someone who is self-employed, I like to work remotely, but am often frustrated by the lack of Mail.app support in public wi-fi spots (port blocking due to spammers, I am told).
Even with the .Mac improvements, I was still stuck with my POP3 webmail (Horde), which is perfunctory at best. I have been wishing .Mac's webmail would let me access my POP3 mail (I even considered emailing Apple about it). Well today, I stumbled across the setting, and found that it is very much possible! Click the Preferences link, then the Other tab, and the first section is External Account. You can enter one POP account to check in addition to your .Mac email.
I like listening to NPR in the morning via my AirPort-enabled PowerBook, which reposes in the kitchen. However, it's a bit of a pain to get to the shows via the website, and I want them ready to go when I reach the kitchen. So I created this AppleScript to help with the process. It assumes you're using Safari to browse the web and RealOne Player to listen to web-based audio.
The Mac starts up at a set time in the morning and runs the script at startup. The script loads the morning news program (Morning Edition or Weekend Edition), as well as the All Things Considered page, then proceeds to load the morning program in RealOne Player and pause it. With a KeySpan USB remote control on the kitchen counter, one hit of the play button starts up the morning's news, regardless of the actual time of day (which is kind of odd if it's 5pm!).
To make the script, I borrowed some AppleScript code from dasboy in this hint, as well as jspivack in this hint. Compile it in Script Editor and set it as a startup item; have the news waiting for you as you sip your coffee.
I work where I can surf the web but not download stuff. I was going to set up TorrentFlux, which is an app to remotely control a machine to download torrents (my home machine), but it then dawned on me to use iChat and Azureus:
Set up a new iChat account; this will be used on the home machine.
Add this account as a buddy on your normal account at work.
Install Chax on the home machine, which will be logged into the new iChat account.
Set Chax to autoaccept downloading of files to a certain directory -- my_torrents or whatever.
Now set up Azureus in Advanced mode to scan that directory every minute, and to start and download to a default directory.
Now when you are at work or elsewhere, when you iChat a file to the home iChat account, iChat will download it automatically, and less than a minute later, Azureus will start to download it. This is very handy.
On a Windows PC, Chikka Messenger looks great, but using it on my iBook G4 it's not a program you can download, install, and use. Instead, to use Chikka Messenger in Mac OS X, bookmark this link in Safari and/or Firefox.
For those that don't know, Chikka Messenger is a text (SMS) messaging utility. Since October 2006, I have been in the Philippines. Not only do I use the iBook G4 on a daily basis, I also use Chikka Messenger at the same time, as it is easier or faster than other internet chat services.
There is a major drawback to using the Java version of Chikka Messenger, however: I am unable to save Phone Number and Password info at the login screen -- I have to use the copy and paste keyboard shortcuts to resolve that. I found that I can't even do that in the Firefox Java version of Chikka; however they work fine using Safari.
I use Safari to subscribe to a bunch of RSS feeds, among them VersionTracker and MacUpdate. The VersionTracker feed was often very slow to load, and I realised it was because every item in the RSS includes two images to be downloaded (even though the images were 1x1 pixels, the extra requests slowed down the entire process a lot). I therefore created a perl script that acts like a webserver on localhost (127.0.0.1) port 8080. Upon a request, it fetches the RSS from VersionTracker and strips the images from it before sending the resulting RSS to Safari (or whatever program that requested it in the first place).
I set up launchd to keep the script running at all times (using Lingon). I also made the perl script change the RSS from MacUpdate. The original feed only contains a rather long title for the items, and no descriptions. I changed this so that only the name and version number is the title, and the rest of the title (that actually is a description of the program) is the description. This made it a lot easier to read in my opinion.
The script is made to work, and I suppose it can be optimised and improved in many ways, for example to allow multiple connections at once. I'm also quite sure that the extra controls to check that the calling IP is 127.0.0.1 are redundant, since I beleive only 127.0.0.1 can connect to 127.0.0.1. The script uses the modules Sys::Syslog, Socket, and LWP::Simple, and these may need to be installed on your system before it will work.
Unmodified, the script listens to the URLs http://127.0.0.1/versiontracker and http://127.0.0.1/macupdate, but I would suggest that you look through the script and add or remove URLs to your liking.
There is no copy/duplicate function in the new .Mac webail interface. Here is how I work around it to send the same message to different recipients at different times:
Click New on the toolbar to start a new email and fill in the standardized content.
Click Save as Draft.
Double-click on the saved draft mail on the Drafts folder. By doing so, a second instance of the same mail will be popped up in a new window.
Drop in the receiver information and send the mail through any one of the opened windows.
Click Save as Draft again in the remaining window.
Then, you have the same mail kept in your Drafts folder for the next use. It isn't that great, but useful if you want to send the same mail to different groups of people while you cannot use the normal Mail app.
I like to have a Downloads folder with files sorted by download date. However, I have not found this option in OS X, because the files' dates are not modified on download. So I modified a small script that updates the modification date of files. Attach this AppleScript to your download folder via Folder Actions, and now you only have to put the folder in list mode, and sort by modification date. Hope it helps.
on adding folder items to this_folder after receiving added_items
repeat with file_ in added_items
tell application "Finder"
set file_ to POSIX path of file_
do shell script "touch -c " & quoted form of file_
end adding folder items to
The problem I have found with this is that you lost the real modification date, but sometimes this is a secondary issue. Perhaps the script can be modified to save the modification date in the notes field.
[robg adds: Back in 2003, we ran this hint, which pointed to a small script called FolderOrgX. FolderOrgX organizes your downloads into subfolders by date of download, and seems to still work fine with Safari (it doesn't work well with Firefox, Camino, and other Gecko-based browsers). It offers the option to touch or not touch the modification date of the file, so you can retain that info if you wish. I chose to run this hint, despite its similarities with the older one, for non-Safari users and those who would rather not use subfolders in their downloads folder.]
There is a significant shortage of tools available for sending information about your current iTunes song to your blog. For Windows, there's iTunesBlogger, but for the Mac, there's not really anything that's simple and transparent. So I wrote an AppleScript that works in conjunction with a PHP script called TrackTunes (part of the CG-PowerPack) to get my currently-playing iTunes song to display properly on my WordPress blog. The script is here:
Further information about my research into this topic and how to install and run the script is available in this entry on my blog.
[robg adds: As the referenced blog entry is rather detailed, I won't try to repeat it here. As noted in the entry, there's a Mac app called Recent Tunes that will do this for you. It's what I've been using on my personal blog, but it is a bit flakey, sometimes not updating the songs when it should. The program hasn't been updated since 2004, and is unlikely to be updated in the future, so the above script/PHP code might be the best solution.]
If you have more than one account with Gmail (this works with Google for your domain accounts, too), you can use Google Notifier to notify you of your Gmail and Google Calendar activity by simply making a copy of the Google Notifier application in the application folder. You then simply change the name of the application to something relevant and, after launch, the applications will coexist in the menu bar.