I would also add to that: adopting tools before you need them. Premature optimisation.
Too often I see people adopting tools just because it's the latest fashion or because they've seen their friends use them. But do you actually need them? The need should come first. For two reasons. First, you might simply not need that tool, so why not keep your life more simple and make it easier for developers to work on your project? Second, if all you have is a hammer, everything looks like a nail. Grow your project first, decide what tooling you need later. Otherwise you'll be constrained by the limitations of your tools. Some projects will need completely custom tooling, many won't, but you won't know until you get your teeth into the damn project.
Too often I see people adopting tools just because it's the latest fashion or because they've seen their friends use them. But do you actually need them? The need should come first. For two reasons. First, you might simply not need that tool, so why not keep your life more simple and make it easier for developers to work on your project? Second, if all you have is a hammer, everything looks like a nail. Grow your project first, decide what tooling you need later. Otherwise you'll be constrained by the limitations of your tools. Some projects will need completely custom tooling, many won't, but you won't know until you get your teeth into the damn project.