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.
小夥子還嫩得很,教育教育應該很容易。