One of the languages that bring out the most angst in me is SQL. When writing a query, I usually think:
- Use this table (FROM T1)
- Choose a column which has more details in another table, T2 (USING column)
- Join with that table (T2)
- Make a decision on what to do with the join where T2 doesn't have a value that's there in this table, typically, include the row, but use NULL values from T2 (LEFT OUTER JOIN T2)
- Keep only rows that match a certain condition (WHERE condition)
- Fetch me columns A, B, C from this result (SELECT columns)
But when writing that in SQL, I have to start at 6, got to 1, then 4, then 3, then 2 and finally 5.
See what I mean?