Best answers so far:
Well, let's take a step back and think about the sync problem and what the ideal solution for it would do:
- There would be a folder.
- You'd put your stuff in it.
- It would sync.
They built that.
Why didn't anyone else build that? I have no idea.
"But," you may ask, "so much more you could do! What about task management, calendaring, customized dashboards, virtual white boarding. More than just folders and files!"
No, shut up. People don't use that crap. They just want a folder. A folder that syncs.
"But," you may say, "this is valuable data...certainly users will feel more comfortable tying their data to Windows Live, Apple Mobile Me, or a name they already know."
No, shut up. Not a single person on Earth wakes up in the morning worried about deriving more value from their Windows Live login. People already trust folders. And Dropbox looks just like a folder. One that syncs.
"But," you may say, "folders are so 1995. why not leverage the full power of the web? With HTML 5 you can drag and drop files, you can build intergalactic dashboards of stats showing how much storage you are using, you can publish your files as RSS feeds and tweets, and you can add your company logo!"
No, shut up. Most of the world doesn't sit in front of their browser all day. If they do, it is IE 6 at work that they are not allowed to upgrade. Browsers suck for these kinds of things. Their stuff is already in folders. They just want a folder. That syncs.
That is what it does.
As a co-founder of Syncplicity, a service that competes with Dropbox, this question has been on my mind for years. We launched within a few weeks of Dropbox, we had multi-folder synchronization & read-only sync, and we were a few years older than the Dropbox kids. I'm very proud of the service we put together and am happy to see the service shift towards businesses, yet Dropbox kicked butt. Here's why:
Before launching their service, Dropbox created a video that had tons of geeky references. It showed off a product that wasn't finished and had a few flaws. It showed a binary diff sync of an image... binary diff is great, but it only works if the file isn't compressed. So, it only works on bitmaps and who the heck is sync'ing bitmaps? The video spread quickly and got their name out before anyone heard of our company. Instead of making our own video, we were upset that binary diff wouldn't do anything for JPEGs or other compressed formats that consumers tended to use. Who the heck is sync'ing images saved from Microsoft Paint?
Next, we had issues getting the press excited at launch. We built a fantastic Windows client. 3 years ago, everyone was running Windows. (Actually, I had a Mac and wrote all my code in a Parallels VM on my Mac. It always made me a little sad that we didn't have a native Mac client for a long time. Thankfully, the company has a Mac client today.) We were so excited to show the press, yet they all had Macs. Walt Mossberg wouldn't write about our product because it was PC only. Months after we hired our PR agency, we found out that they had never even used our product... because they too only had Macs. It's pretty hard to pitch a service when you haven't used it.
For a while, we couldn't believe Dropbox was so viral while we weren't. We opened our beta so anyone could sign up while people had to beg for a Dropbox invite. The closed beta worked incredibly well for Dropbox. We opened up our beta at the insistence of our PR agency -- "No way the New York Times will write about you if you have a closed beta". (It turned out that the NYT also doesn't write about you if you're PC only.) If your service is really popular, having a closed beta helps you create pent up demand and control the number of users joining on a regular basis so you can scale the backend appropriately.
In the end, it really came down to one incredibly genius idea: Dropbox limited its feature set on purpose. It had one folder and that folder always synced without any issues -- it was magic. Syncplicity could sync every folder on your computer until you hit our quota. (Unfortunately, that feature was used to synchronize C:\Windows\ for dozens of users -- doh!) Our company had too many features and this created confusion amongst our customer base. This in turn led to enough customer support issues that we couldn't innovate on the product, we were too busy fixing things.
After I left Syncplicity, I ran into the CEO of Dropbox and asked him my burning question: "Why don't you support multi-folder synchronization?" His answer was classic Dropbox. They built multi-folder support early on and did limited beta testing with it, but they couldn't get the UI right. It confused people and created too many questions. It was too hard for the average consumer to setup. So it got shelved.
If you're starting a new company, the best thing you can do is keep your feature set small and focused. Do one thing as best as you possibly can. Your users will beg and beg for more functionality. They will tell you their problems and ask you to fix it. My philosophy is that they're right if their feature request is right only if it works for 80% of your customers. Until you have a lot of resources, stay focused on your core competency.
The best part about having a simple product is that it's easy to sell & easy to support. If your product is too complicated, you'll spend all day on customer support & bug fixing. I've been there -- it's no fun.
In closing, I want to give props to my previous Syncplicity co-workers. They worked their butts off competing against Dropbox. They're crazy smart and we built a great service together. They're still working on it and they've got a great business solution. As for Dropbox... Drew, Arash and the rest of the team are absolutely brilliant. Their success is no accident. File synchronization is incredibly difficult. Building a product that millions of consumers can easily understand without RTFM is even more challenging. They're my inspiration for my current company.
If you want to understand more, read everything you can about the lean startup movement. And have at least one seriously amazing product person on your staff if that's not you.