What I personally do is to use what I know well, and when some code feels clunky or I notice problems with it, I'll google the problem and be open minded about new solutions, even if they're really different. And I do a bit of research on the good ones (like 20 minutes or so), making sure they don't have other flaws and just ensuring they fit my use-case.
Case in point, I'm doing iOS development again for the first time since iOS 3 or 4, and when I started trying to use CAKeyframeAnimation again, it felt a bit difficult and didn't look all that great either. So I googled for ways to animate with a bounce effect in iOS, and found the newer UIView method to animate with a spring effect, and another solution using UIDynamicAnimator which was new to me also.
After like 5 or 6 hours of reading, googling, writing code, deleting code (custom segues turned out to be the wrong way to use it in my case), and lather rinse repeat, I finally ended up with not only a good end product, but the knowledge of how to use several new APIs and several new concepts. During that I also incidentally found out some cool Objective-C tricks that came out since I last used it.
Plus I felt really uncomfortable with understanding how ARC works (previously it felt like just a bit of magic to me), so I used the same principle of googling my questions & concerns about it, read some stackoverflow answers and blog posts for 20 or 30 minutes, and gained a much better / fuller understanding of ARC that gave me a lot more confidence writing code.