If you don't understand someone else's code, you can either tell them they stuff is too complicated or learn and understand better.
There can be a middle ground of course.
Most of the time if code is hard to understand its bad code. Just because someone writes complex code that uses all the abstractions, doesnt mean its good. Usually it means the opposite