This is more about shibboleth and idiom and that sort of thing, innit?
One of the European FLOSS licenses (one or more of the CeCILLs or EUPLs, can't recall offhand) uses "a code" in its English language version to mean something like "a work of software". Jarring, to be sure.
I suppose it's unlikely that someone proficient in coding (even if only proficient in English as a second language) would use "write codes". Still.
I don't think it's a matter of "code" being a collective noun. There's nothing particularly obvious or logical or consistent with other English usages about the informal use of "code" to mean "software". It could easily have been "codes" in some similar alternate universe. I remember finding it a bit surprising when I first became aware of it (because for me the first meaning of "code" was the cipher/code usage). I am not sure it can be considered formally idiomatic English -- in that case one would generally say "write software" or "develop software" or "program".
One of the European FLOSS licenses (one or more of the CeCILLs or EUPLs, can't recall offhand) uses "a code" in its English language version to mean something like "a work of software". Jarring, to be sure.
I suppose it's unlikely that someone proficient in coding (even if only proficient in English as a second language) would use "write codes". Still.
I don't think it's a matter of "code" being a collective noun. There's nothing particularly obvious or logical or consistent with other English usages about the informal use of "code" to mean "software". It could easily have been "codes" in some similar alternate universe. I remember finding it a bit surprising when I first became aware of it (because for me the first meaning of "code" was the cipher/code usage). I am not sure it can be considered formally idiomatic English -- in that case one would generally say "write software" or "develop software" or "program".
Seeing @Fontana comment here again is wonderful, even when I disagree with him. :)