Before addressing the question posed, keep in mind that there is no one single correct answer for this question. It really depends on the context.
When faced with the scenario presented, the Manager must do a cost-to-benefit analysis.
1. How much harm is the programmer's disregard for organizational quality standards causing the organizations?
2. How skilled is this programmer? If we let him go, can we afford to find someone else who respects organizational quality standards, to match the same skill-level position? What is the cost of this decision?
3. Can we achieve organizational quality standards through automation? Is it more expensive to do so?
4. Can the internal organization process improvement committee train this programmer to follow organizational quality standards? What is the cost?
A critical look at the questions posed above can give manager insights on what the right approach should be.
In a situation where the programmer is very skilled and has acquired a lot of experience in a niche technology, it might be very costly to find an instant replacement for him. In that case, the manager can adopt measures to manage his non-compliance with organizational quality standards. This could mean assigning other team members to take care of the quality standards aspect of the work. Some automation tools might also help out in this situation if the cost of implementation is not too expensive.
On the other hand, it might make sense to let the non-compliant programmer go if the costs of keeping him exceeds that of finding a replacement for him; if it's cheaper to hire another programmer who has similar skill sets, experience, and who has a knack for adhering to organizational quality standards. For organizations that thrive on character over skill, a programmer that consistently ignores organizational quality standards will always be fired. No doubt.