With that said, when I was looking for a company name for a consulting business a year or so ago, I threw my favorite one out to a friend of mine for feedback, and he absolutely hated it. So I sent him a list of my favorite 5-10 out the domains I had, and one jumped out at him as "oh yeah, that's perfect." After thinking about it for a while I decided he was right, so I went with it (that one had been my 2nd favorite to begin with). And now I'm actually reusing it as I move into doing a product. It's just the company name though, now naming individual products is going to be the bigger challenge.
Of course if you need a name right now none of this helps... all I can say is generic crap like "think outside the box." Put together combinations of words that don't seem to make sense at first and play around with them. Borrow phrases from the top news headlines of the day and see if those words somehow combine to form something useful. Take a word that has something to do with what your status does, and start attaching other words in front of or behind it, until one combo makes you go "oooh."
For example... If you were doing a "grid computing" startup, take the word "grid" and start going:
gridstart gridcurve gridfeed gridbox gridblox gridwave gridcloud antigrid gridhacker gridlog ... ... ...
And if all else fails, you could explore some of the alternative TLDs if the ".com" is taken. Some feel kinda ghetto for some reason (like .biz... I doubt I'd ever use a .biz for anything) but some alt tlds are actually kinda cool... .fm, .io, .tv and a few others seem somewhat popular.
Like, .io feels kinda right for something geeky and computer related... so if you were doing the grid computing startup, maybe "gridcomputing.io" "io" seems to imply a sort of techie'ish flavor (even thought the TLD actually stands for Indian Ocean or something like that).
Another last ditch thing would be trying to buy a domain that's taken. Not every taken domain costs a bazillion dollars to acquire. And if you establish a trademark on the name successfully, you may be able to appeal to ICANN and get a squatted on domain anyway. Not sure exactly how that works, but it might be worth researching.
Edit: Another approach that might help... pick a theme, and google around that theme for lists of important "things." For example... I was looking to name a series of related open-source projects recently, so I picked "lighthouses" as the theme (and this ties into the company name mentioned above), so I started looking for lists of "famous lighthouses" and "lighthouse terminology" and finally came up with ScrewPile (no, not a pr0n term, it refers to a type of lighthouse), Neddick (reference to a famous lighthouse), Quoddy (again, a particular lighthouse) and Heceta (and yet another well known lighthouse).
Say everything out loud many times.
Resist things nobody will be able to spell.
Great names often seem pretty crappy at first. Later, after repeated use, people say "what a great name". So don't necessarily reject names that seem crappy. Use them for a while. See which ones other people find easy to say, spell, and remember.
Oh, and realize that the combinatorial space here is so vast as to dwarf what the squatters can cover. Your creativity can explore much more of that space than they can occupy.
Although this is a decision that people agonize over (your company's like your baby after all), in the end I don't think it matters that much. You can read PG's thoughts on this: in his first startup they wanted a name so much that they offered a handsome sum to the holder of that domain. Then they relaxed and saw that it didn't matter that much for success.
If nothing works, make ridiculous combinations of real words but please don't get a domain with missing vowels and ly's and tr's. When you are starting out, your domain name is your brand name. If I have to spell out your brand name, you have already failed.
Think DuckDuckGo, not Srchly.