A good place to start this is things you're personally dissatisfied with. Develop a healthy sense of annoyance with the things you use. Start to look for things thought you ought to find really annoying but don't because you've gotten used to them.
I've found it surprising how much this can be honed like any other skill. At first thinking up ideas seems difficult, then suddenly you've got a queue of things you want to build because you're annoyed. Then you go through the queue for things that other people are likely to be dissatisfied with as well.
Hopefully once you're at that point you're better equipped to spot broken stuff that you don't necessarily use (or even want to use). My guess is that not being put up their own online store was not a pain point for Paul and Robert but years of building whatever tools like lacked helped them spot it as a problem others were having.
Or questions that shouldn't be answerable but aren't.
Also, mashing up two abstractions is a good way to narrow down the solution space you are interested in.
For example, IT combines information with technology. PT combines people with technology. CP combines communication with people. TT combines two technologies.
Each mashup has a different set of value propositions that work well with it. IT generally uses tech to manipulate information to answer a question or help people make sense of something. PT generally revolves around augmenting human ability. etc.
One of the best sources for me has been from contract work. For example, if someone is annoyed enough with the software they are currently using to pay me 10 grand to replace it, then there is a good chance that there is a market opportunity there.