I think Kate's feedback is great, but for the companies I've helped it's often easier to have a code name during the early stages, to make easier to talk about your company. And anything that fits the personality of the product and the audience you're trying to reach can work for that (as long as it doesn't create confusion with direct competitors in your space).
As soon as you do have your value proposition locked down, it's helpful to get the name as soon as you can, because there are a lot of design tasks that will need the name locked before they can proceed, like designing the brand identity or the app icon, etc. Often the right naming concept can inspire your team or potential investors as well.
Here's the tough part, acquiring all of the properties for your domain is one of the biggest challenges, so you should never hang all of your hopes on a single perfect name. When I did naming work, pre-Facebook we would usually go into that search process with a dozen concepts, knowing 9 of them were going to get knocked out right away. If we found one of our top 10 open, we would snap it up. It's easier to release a name you don't want than to try and purchase one from the person who buys it one week later.
Sorry for the horror stories. Once the name is chosen, things get a lot easier. Also, never start a logo design process before the name is locked, or the Gods of Design will smite your Website with lightning bolts.