If I had to give one piece of advice as to what you should do to be a good developer, it’s this: be careful of what you checkin.
- Use source control. It’s hard to look at you are changing without source control.
- Always diff the code yourself. I also recommend checking in fairly frequently (at least to some sort of personal branch), so that your code diffs don’t become so large that you won’t spot anything.
- Always step through your code.
I think the first two are pretty standard pieces of advice, but too few people adhere to #3. I don’t trust unit tests, I don’t trust functionality tests – I have too often made the mistake of incorrectly deploying new code such that I didn’t actually test it, or just having a bug that the test didn’t check for.
I caught way too many bugs by stepping through the code prior to checkin, so now I always step through the code.