I have known several SWET's over the years who really hate using xpath as element locators for looking up elements on web pages while using Selenium, and now for testing mobile applications we use Appium.
I have never really understood the hatred. I love XPath and use it instead of CSS for finding elements in web pages and mobile applications.
Using XPath is only as powerful as the tools that can translate it correctly and actually have tools that tell you what the xpath locator string is.
For mobile applications, Appium Inspector tool will give you the xpath locator to interact with UI elements.
For web applications, use FireBug as usually those xpath indicators work with Selenium.
And that's it. That is all you need to be the world's greatest, and most efficient automation test developer.
Use Xpath and prosper :)