Em programação de computador ou marcação de texto, para hardcode (menos frequentemente, código duro ) é usar um nome explícito em vez de um nome simbólico para algo que é provável que mude mais tarde. Tal codificação é por vezes conhecida como hardcode (substantivo) e é mais difícil de alterar se mais tarde se tornar necessário. Na maioria das linguagens de programação, é possível equacionar um símbolo com um determinado nome (que também pode representar um valor numérico). Se o nome mudar, o símbolo permanece o mesmo e apenas a linha de equação do código necessita de ser alterada para reflectir o novo nome. Quando o programa é recompilado, o novo nome é capturado onde quer que o símbolo ocorra no código. Embora existam ferramentas de busca e substituição que podem alterar todas as ocorrências de um determinado nome, o código do programa é muito imperdoável no caso de um pequeno erro ser introduzido, e é mais seguro ter um único lugar em que tal alteração possa ser feita. Por esta razão, hardcoding é normalmente uma prática a ser evitada.
Hardcode é também usado às vezes para descrever linguagens de programação mais difíceis como C ou C++ em vez de linguagens "softcode" como Visual Basic .