I used to work as sysadmin in a research institute. the language difference between researchers who program, vs your typical coder in a software shop was interesting. the researchers were in the habit of referring to "a code". to a programmer, its either "code" or "a piece of code", but never "a code". that would be like saying "a software". when I hear "a code", I think of "an error correcting code".