This:
[...] geeks like us are always tempted to implement very complex, never-ending features because they’re academically or algorithmically interesting, or because they can add massive value if done well [...] These features — often very easy for people but very hard for computers — often produce mediocre-at-best results, are never truly finished, and usually require massive time investments to achieve incremental progress with diminishing returns.
I've come to believe that the number one thing a user cares about is a smooth, obvious and consistent workflow, and if you are not giving them that, you shouldn't be working on anything else.