Organization Programming

Managing Data Across Multiple Machines

I have a problem – I now have 4 computers. Yes, I realize this is a problem that many people wish they had, but still. I have:

  • MacBook Aircarry about at university and use out and about, use for notes, reading stuff, and small amounts of development and document editing.
  • 15″ MacBook Prouse mostly at home unless need to get a lot of work done. More development and document editing.
  • Mac MiniMostly used as a backup system and multimedia centre. Static, so useful for running long processes.
  • Windows PCin my office at university. Mostly used for things that require a Windows PC (marking). May want to run long processes involving a large amount of API calls.

Up until now I’ve managed by segregating the things I use each machine for. So I use the mini for web development (CS3 will not run on my Air!), the university machine for… pretty much nothing, and the Air for everything else. It’s not been a great system, but it’s been manageable. With the arrival of the Pro, that is no longer the case. I’m going to have to be able to work on the same document on my Pro and my Air, and I don’t want to be keeping track of what’s where.

So I’ve come up with a strategy, which I’ve outlined below. Nothing is fixed yet, though, so I’d welcome tips as to how you manage your data across multiple machines if you do. It’s obviously important to me that I come up with an effective way to do this – the point of the Pro was to increase my productivity as the Air just runs too slowly sometimes. I don’t want to spend the time I save on file management!

1. Move as much as possible to the cloud.

My email has been in the cloud for a long time now, of course. However I recently migrated my ToDo list (Remember the Milk) which is working out great as it also syncs to my iPod Touch. For references, I use Zotero, which also syncs to the cloud. I’m going to move my calendar to Google Calendar and work on small documents in Google Docs (all our stuff for WISE is in Docs).

2. Set up a SVN for code

Yes, I should have this already. But when I was only developing on one computer I never got around to it. Now I hope to develop on at least two, it’s crucial to get this sorted out. So I need to go through each of my workspaces, tidy them up, and put the stuff I need in a repository that will run on the Mini.

3. Mobile Me

This is a temporary solution. One year of this with a new machine was about $60-$70. This makes the need to set up a repository for my home director less pressing (a good article about the best system to use for this is here). SVN is less practical because of the overhead, so I’ll either use Mercurial or Git (whichever is easiest to set up on a Mac). Also, right now, it’s not practical to have all my documents in Google Docs as some of them are too large and there’s the need to edit offline. This time next year though, I’ve no doubt I will have way more options.