Friday, August 13, 2010

Instant File Sync? Yes, Please

One of my countless projects this summer has been a collaborative programming project with a fellow computer science student from school. This programming project involves (at the time of this posting) 280 different files, all of which are deeply intertwined so that one mistake in a file could break the entire application.  We needed to be guaranteed that these files would always be up to date, because if they weren't, we could end up overwriting a lot of work that could have taken the other person hours to accomplish.  With such a critical importance placed on the synchronization of these files, you might be surprised to find out that I rarely think or worry about it.  That's all thanks to Dropbox.

Dropbox is a service that puts a folder on your computer called "My Dropbox".  Anything you place in that folder is instantly backed up online and also synced to any other computer where you have Dropbox installed. You can access your files from any computer via the online interface at, including every version of that file since you added it to your Dropbox folder. This means that if you ever accidentally overwrite your final term paper with a letter to your friend back home, you can just jump over to the Dropbox website and find a list of every revision you've made on that file. Simply choose the one you need and download it.

File backups are by no means the only useful feature of Dropbox. As I mentioned earlier, Dropbox syncs your files across any computer where you have installed it.  So if you want files from your home computer to be accessible at work, just throw them in your Dropbox folder. It's that easy. Any changes you make at work will instantly be synchronized at home, and vice versa.  Dropbox also offers mobile apps for Android [Market link], iOS [iTunes link] and (soon) Blackberry, so you can access your files on the go from your smartphone.

Dropbox also lets you share folders with any other Dropbox users.  You just click the folder, click "Share" and enter the email address of the person you want to collaborate with. As soon as they accept your invitation, your folder will appear in their Dropbox folder and you'll be ready to go.  Using this feature, I can work on my programming project from my laptop or desktop, my partner can use any of her computers, and we are still assured that we will always instantly have the latest version of our files.

Every user gets 2GB of space to start out with for their Dropbox, but you can expand this number up to 10GB by inviting friends to the service. Full disclosure: If you sign up for Dropbox using my referral link, I'll get an extra 250MB of storage. But on the bright side, so do you!

In case this is easier for you, here's the QR code for the Android version of the Dropbox app:


  1. Dropbox is sweet, but wouldn't it have been better to use a proper source control system like Subversion or Mercurial?

  2. Subversion and Mercurial are useful tools, but they're extremely complex and require a bit of knowledge to set up correctly. They also require you to commit your changes (not autosync) and don't handle conflicts as gracefully as Dropbox. Our project isn't super serious; it's mainly something we're doing for our own enjoyment/education, so we went with Dropbox for it's ease of use.