Often you will be building some class and you’ll hear yourself saying “We’re going to need…”.
Resist that impulse, every time. Always implement things when you actually need them, never when you just foresee that you need them.
And this too...
The best way to implement code quickly is to implement less of it. The best way to have fewer bugs is to implement less code.