Switching from Python2 to Python3. I never had a strong preference for either (most of what I write are short, throwaway scripts), so just stuck with Python2 out of habit. After implementing a basic static site generator, seeing it explode when I put "naïve" in the database, and then discovering the awkwardness of using Unicode in Python2, I decided to port it over to Python3. Using Unicode by default was a huge advantage.
Interesting, opposite experience here. My life became much easier when I decided to start new projects in python2 rather than starting under 3 and switching back in frustration after fighting with 2to3 for hours at a time. Even now I think there's enough libraries that just don't support 3 to make a case for using 2 as a rule (I do mostly machine learning/optimisation).