I think TypeFamilies have a big syntactic bug: they start with an uppercase letter, unless they are an operator in which case they follow the normal operator syntax (they don’t use the convention of starting operators with :). This is confusing and inconsistent. Before TypeFamilies, names that started with an uppercase letter were known to be normal forms.
I feel like we will have to reckon with this at some point in the development of Dependent Haskell.