Refactoring only when it is necessary (i.e when it provents bringing value to customer). Unnecessarily code changes may: a. risk of introducing new bugs (such as 3), b. adding unnecessary test effect, and c. cost resource which adds no value to the customer.
A good programmer should enjoy programming, however, programming is not a game, it is serious work.
小伙子还嫩得很,教育教育应该很容易。