Cada lenguaje de programación y marcado tiene su propia forma particular de código fuente, a veces denominado simplemente «fuente». Este código consiste en una descripción de las tareas que debe realizar una computadora y está escrito y almacenado en un formato de texto que un ser humano puede leer fácilmente. Parte del código se compila antes de su uso, un proceso que transforma la fuente en un conjunto de instrucciones en lenguaje de máquina. El texto en un lenguaje de marcado como HTML no es técnicamente código fuente en el sentido puro del término, pero a menudo se lo denomina como tal. También existen diferentes categorías legales de código fuente, siendo la división más importante entre código abierto y cerrado.
Cada lenguaje de programación utiliza una sintaxis diferente para representar un algoritmo subyacente. Estas diferencias significan que el código fuente varía de un idioma a otro. Algunos lenguajes, como C y C ++, están relacionados y comparten ciertos elementos de estilo y sintaxis.
Algunas convenciones de estilo de programación ocurren en la mayoría de los lenguajes. Por ejemplo, casi todos los lenguajes incluyen algún sistema para denotar comentarios o partes del código que están destinadas a espectadores humanos en lugar de ser procesadas por un compilador. Esta es una característica tan común del código fuente que varios estilos de notación de comentarios aparecen en más de un lenguaje de programación.
Todo el código fuente verdadero debe ejecutarse a través de un compilador y convertirse en lenguaje de máquina antes de que pueda ser ejecutado por una computadora. En algunos casos, como Python en modo interactivo, esta tarea se realiza de forma dinámica. En otros casos, el compilador produce un archivo ejecutable que almacena las instrucciones en lenguaje de máquina para su uso posterior.
El texto marcado que constituye una gran parte del contenido de la Web no es técnicamente código fuente. Sin embargo, existe una cierta similitud, ya que HTML y otros lenguajes de marcado relacionados transmiten significado y describen las tareas que debe realizar una computadora, específicamente las formas en que el texto y otra información deben formatearse y mostrarse. Por lo tanto, el texto que se ha marcado en HTML a menudo se denomina código fuente.
Legalmente hablando, existen dos modelos para la propiedad y distribución de fuentes. El software de código abierto es un software cuyo código se proporciona, a veces sin condiciones y, a veces, bajo un acuerdo de licencia de código abierto que preserva algunos derechos básicos para el autor. Algunos de estos acuerdos limitan el tipo de modificaciones que se pueden realizar en el código fuente, pero algunos simplemente estipulan que se debe dar crédito al autor original.
La fuente cerrada es la otra gran variedad legal de código fuente. En este modelo, solo se proporciona un archivo ejecutable al titular de la licencia. Los usuarios tienen prohibido intentar descompilar los archivos ejecutables para revelar el código subyacente. Este modelo legal domina el campo del software comercial, aunque algunos modelos de negocio de código abierto también han demostrado ser viables.