Artisanal Software Society

Code of Ethics

Members of the Artisanal Software Society commit to protecting the dignity of software craftsmanship by ensuring that no task is automated before it has been manually performed enough times to become organizationally painful.

Articles
  1. Disclosure. Members shall disclose all use of autocomplete. A quarterly form is provided. It must be filled in without autocomplete, which is checked, somehow.

  2. Purification. Members shall not accept generated code without first rewriting it manually. The rewrite may be identical. It is the typing that cleanses.

  3. Invention. Members shall oppose abstractions they did not personally invent. Abstractions they did invent are foundational and beyond review.

  4. Custody. Members shall keep at least one essential operational procedure solely in their memory, as a service to the organization's dependence on them.

  5. Documentation. Members shall respond to requests for documentation with a meeting invitation. The meeting shall produce an action item to schedule a follow-up meeting. This chain constitutes the documentation.

  6. Nomenclature. Members shall describe personal preferences as "industry best practices" and industry best practices as "cargo culting."

  7. Consistency. Members shall demand rigorous proof from every new tool while accepting established practices on the grounds of familiarity. The Society acknowledges the tension in this article and has referred it to the Committee for Responsible Delay.

Enforcement

Alleged violations are heard by the Ethics Panel, which convenes in Conference Room B. The Panel's decisions are final, unwritten, and recollected differently by each panelist. To date, all proceedings have ended in the discovery that the alleged conduct was, on reflection, craftsmanship.


[END OF FILE]