My answers relate specifically to coding but can be applied to anything.
- Step away from the keyboard. Talk a walk, go for a run, talk it over with a colleague over a coffee
- Become 10 years older! My experience has helped me enormously.
- Use Binary chop. Split the problem into two and narrow the problem: repeat.
- Remember Sherlock Holmes: When you have eliminated the possible, whatever remains (no matter how strange) is the answer
- Check your test data. Well over half of my really tricky problems have been caused by faulty data and not faulty code or algorithms.