The most common workarounds are for folks coming in with an Excel mindset (where operations are cell-level) who want to accomplish something that is easy in Excel but hard in Tableau. For instance, almost everything in Tableau is an aggregation, so displaying a simple unaggregated table is actually really hard (you have to make certain fields Dimensions, others Values, etc).
In Tableau, almost every operation maps to some SQL operation (in fact, you can peek at the underlying SQL query if you run the profiler), so mastery of Tableau almost always entails mastery of deep SQL concepts.
Why doesn't Tableau make easy things easy, say like Excel does? The trouble is Excel’s reactive cell level operations don't scale. Tableau lets you connect to massive backend databases to compute and display multifaceted viz's with relatively high performance, and the only way it can accomplish this is to restrict itself to SQL-friendly operations.
This difference is philosophically analogous to using for loops vs vectorized operations - the latter requires a mindset shift, and is less flexible/granular than the former but you gain a tremendous performance boost.