Calendar Syncing

UPDATE 5/1/11: If you've been having trouble syncing multiple calendars to your iPhone, it's because Google has added an extra step to the process. I've added a bit about Google's new required iPhone sync utility to the Set Up Your iPhone section for folks with multiple calendars. As always, happy syncing!

I keep getting comments asking the best way to set up two-way calendar sharing between multiple computers, and I've finally decided to just write a post that details the process. This is different — and in my opinion, far better — then sharing your calendars via Box.net, as I wrote about long ago. This, in fact, is the real deal. This is good stuff. This is how it's supposed to work. So let's get started.

I thought the easiest thing to do — since it's what I do, it's fairly simple and it works well — would be to walk you through connecting an iPhone and a Mac to a central calendar on Google's servers.

Set Up a Google Calendar

The first thing you'll need is a Google Calendar account. If you have Gmail, chances are you already have a Google Calendar. If not, go set one up now, and be sure there's at least one calendar active in the account.

Set Up iCal

Next you need your Mac, and specifically you need to open iCal.

  1. In iCal go to Preferences->Accounts.
  2. Click on the little Plus sign in the lower left corner of the window.

  3. Choose "Google" from the Account Type pulldown and fill in your Google Account info.
  4.  

  5. Once the account is set up you should see Google Calendar's default calendar in your iCal sidebar. If that's your only calendar, you're done. To view a different calendar, or if you have multiple calendars you want to view, go to the Delegates tab and check and/or uncheck which calendars you want to appear in iCal.NOTE: I had to relaunch iCal for it to see all my calendars, which can happen when you have as many as I do — I believe it's eleven!

That's it! Now, any event you create in iCal on one of these Google Calendars will get written to the master calendar on Google Calendar. And vice-versa. Go ahead and test it out. Remember to refresh your browser to register changes made in iCal.

Set Up Your iPhone

You can also connect your iPhone (or iPad) to your Google Calendar account (just like you can with email).

  1. On your iPhone open the Settings app.
  2. Go to the Mail, Contact, Calendars tab.
  3. Under the Accounts heading press "Add Account..."
  4.  

  5. Fill in all your Google Account info, as usual.
  6.  

  7. Once the account is set up, press it in the list and be sure that the Calendars switch is set to "ON."
  8.  

  9. Go to your iPhone's iCal application and you should now see your primary Google Calendar.
  10. UPDATE: If you have additional Google Calendars that you want to sync with your iPhone, you'll need to use Google's iPhone configuration utility, which you can reach via any web browser at the following URL (you'll need to be logged in to your Google account first, of course):

    https://www.google.com/calendar/iphoneselect

    At this web page, simply check which calendars you want to sync with your iPhone and they will sync accordingly. As far as I can tell, this is a new additional step that Google has recently added to the process to allow greater control over what gets synced to your iPhone.

Here, just like in iCal, you can add or remove events and they will be reflected on your Google Account. They should also be reflected on your Mac's iCal application as well. Just remember: since this is all happening over the WWW, it can take a few moments to propagate to all systems, especially if you have lots of calendars or a slow connection. Just give it a few minutes and you should see everything get in sync.

Also remember: the Google Calendar is the master calendar. The calendars on your iPhone and Mac are beholden to that Google Calendar. If it goes away from Google, it will be gone from your iPhone as well as from your Mac.

Bonus! Moving iCal Calendars to Google

"Well," you might ask, "what if I've already added a bunch of dates to my local iCal calendar and now I want to migrate to the Google Calendar sharing system without having to redo all my events?" That's a great question.

Fortunately, both iCal and Google Calendar can take advantage of a common calendar format know as ICS. So all you have to do is export your iCal calendar to the ICS format, and then import it into Google Calendar. Sound simple? It is.

  1. Select a local calendar (under "ON MY MAC") from iCal.
  2.  

  3. Under the File menu select Export...->Export... (no, this is not a typo).
  4. Name the calendar and save it somewhere handy. This is your ICS file, a single file with all that calendar's info, that you can import into Google Calendar.
  5. Open a web browser and go to your Google Calendar account.
  6. Click Settings->Calendar Settings (upper right corner).
  7.  

  8. Click the "Calendars" tab. Here you should see all your calendars listed. Be sure you have a calendar to put all the imported calendar's events into. It can be your main calendar, or you can make a new one. Once you're ready, click Import.
  9. In the popup, select the ICS file you just made, and choose the Google Calendar where you want to put the imported events.
  10.  

  11. Click the Import button.
  12. The calendar events should now be available to you in Google Calendar. You should also see them on your iPhone and in iCal on your Mac. If you don't, and you added them to a new calendar, be sure that new calendar is among your visible Delegates in the Accounts preference pane in iCal.

So that's it! I hope people find this useful. I certainly have!

Mac App Store: First Impressions

Boy, you'd think by now Apple could nail a launch, but it seems like they always have problems if it's something web-based (MobileMe, I'm looking at you). Case in point, my first attempt at a purchase in the Mac App Store:

Some nice touches, my purchased apps — even ones purchased outside the Mac App Store (contrary to what I've read on Ars) — show up as "Installed:"

And with the Mac App Store you can now buy portions of Apple's product suites — iLife and iWork — discretely, rather than only as a bundle:

Finally, I hate the iTunes shopping experience, and the Mac App Store is clearly based on it. I really hope someone comes up with a better way to shop. In the meantime, I'm just glad I don't have to actually open iTunes to shop the Mac App Store.

It's a start.

UPDATE

Ah! That's better! Looks like you can get this error to go away by just quitting the Mac App Store, opening iTunes, then reopening Mac App Store. This will let you agree to the End-User License Agreement, after which you can make purchases from the store.

On other oddity: Remote Desktop appears on the Mac App Store. But other downloadable apps, like Safari or iTunes, do not.

Dropbox 1.0

Dropbox has finally reached 1.0. This is a significant milestone for the venerable file sharing and syncing application and service.

With version 1.0 come some notable new features. For one, the preferences pane has undergone a facelift.

Also note here the new Selective Sync, which allows you sync only certain folders on a given system:

But perhaps my favorite new feature is Dropbox's ability to sync Mac OS X extended attributes. This means I can finally use Dropbox to sync my custom-made icons and alleviates one of my major complaints with the service.

I also wanted to mention that I reported my image issues with Dropbox Mobile and have been informed that there is a bug in how Dropbox is creating thumbnails for PNGs. I'm told a fix is in the works. Great news!

Once this bug is fixed I'll be left with little to complain about in Dropbox. And once that happens, it's likely I'll upgrade to one of the paid plans and forgo my MobileMe account.

So kudos to the Dropbox team. You guys really make a kick-ass product!

Firefox 4.0b8 Tabs

The latest Firefox 4 beta is really nice. I particularly like the minor refinements to the tabs.

The tabs in 4.0b7 look pretty much like Firefox 3.6's tabs:

The tops are rounded; the bottoms, where the tab connects to the page, are square; the color of a background tab is nearly the same as the overall window frame.

In 4.0b8, however, style and functionality have been added:

Notice here that the connection between the active tab and the page is rounded. Also, the gradient is stronger and overall there is more contrast. All of this makes the active tab stand out more from the other tabs, and the tabs generally stand out more from the whole of the window.

It's a minor thing, to be sure, but I really dig it. And, hey, it's the little stuff that really makes the difference.

1Password

I just discovered 1Password. I know. I'm an idiot.

I don't know what took me so long. I guess I just didn't get it. All this time I've been trying to manage all my passwords across multiple computers using Keychain. Insanity!

Wherefore Password Management?

As a SysAdmin, I have more passwords than I could ever possibly remember. Many of my accounts reuse passwords quelled from a fairly large pool that I've collected over the years. So I'm pretty good about remembering most of them. But every now and then a site has password requirements that none of my stock passwords fulfill. And then I end up with a hard-to-remember password.

Also, my current job requires me to constantly access accounts and password that I didn't come up with myself, and there is an ever-growing number of these. They're really hard to keep track of.

While there are certainly ways to manage all your passwords using the Keychain app included with Mac OS X, they tend to be unwieldy, or, in the case of MobleMe, costly. Plus, I often need to keep passwords handy when I'm away from my from my computer, which means I need a solution that works with my iPhone, which Keychain does not.

Enter 1Password

I've been hearing raves about 1Password for a long time, so I took this opportunity to actually give it a try. And I think this is the key (ha! Get it?). 1Password definitely falls into that category of apps you just have to try to truly grok. Fortunately you can install and test it for free for thirty days.

And thirty days is none too many. To really use 1Password some assembly is required. Which is just to say that I found it best to start from scratch with all my passwords. Some can be imported from Safari, but really you're going to want to start with a clean slate. Trust me.

For my purposes, there are two things 1Password really excels at: 1) password management and synchronization across multiple devices; and 2) automatic login to websites.

Password Management & Sync

The main reason I wanted to try 1Password was so that I had my passwords with me everywhere I go. 1Password uses Dropbox (or other similar services) to accomplish this goal. So far, password management with 1Password has been as seamless as Dropbox itself. It's fantastic! Once it's set up, 1Password just syncs your passwords between any computers you tell it to. It's like Dropbox for your passwords. I suppose you could accomplish this with Keychain and Dropbox, but with 1Password you can also sync to other devices, like your iPhone or iPad. So your passwords are always with you, everywhere, all the time.

Automatic Login

1Password also comes with plugins for just about any Mac browser on the planet. These plugins allow 1Password to log you in to any site in its database. This was never something I had intended to use, but since it was there I went ahead and tried it. Turns out it's terrific. It's very well implemented. With the click of a button you can log into any site 1Password's aware of. Not only do you not have to remember the password, you don't have to even type it. Or the username. It's a real time saver, and I ended up loving it.

1Password will also offer to remember any accounts you haven't already entered in its database. So if you're logging in to a site 1Password doesn't recognize, a pop-up will ask you to store the new account. Perhaps cooler, you can use 1Password to generate strong passwords and, since you always have them with you, you don't really have to remember them anymore. I'm not quite comfortable enough to use this method yet, but it would actually make many of my logins a great deal more secure, so it's really cool to know it's there if I ever want to use it.

Keep Your Keychain

One thing it took me a while to realize about 1Password is that it's not a substitute for Keychain. For many of the things you use Keychain for — like storing passwords for AFP shares on your network, for instance — Keychain is still the way to go. But if you need something above and beyond, if you need a way to keep your passwords with you everywhere and at all times, or a simple, secure, super fast way to log on to websites, 1Password is a real lifesaver.

I'm still testing it out, and I've only just gotten the iPhone app, which seems pretty good (minus the browser plugin, of course) but so far, like most folks with too many passwords, I'm loving 1Password.