¿Qué es front-end y back-end, y qué idiomas especifican a qué final?

Son áreas diferentes en las que se ejecuta el código.

Interfaz

El front-end de una aplicación basada en la red es todo el código que se descarga a un cliente y se ejecuta o interpreta allí, por una aplicación de cliente.

Back end

El back-end de una aplicación es todo el código que se ejecuta o interpreta en el servidor; no se descarga ningún código.

Al crear una aplicación web, el back-end se ejecuta en un servidor e interactúa con una base de datos. Esto puede proporcionar los datos para una aplicación, como el contenido. Los archivos HTML, CSS, JavaScript e imágenes se descargan en la computadora en la que se ejecuta el navegador web y se interpretan para mostrar la página web. La computadora que ejecuta el navegador no descarga el código que interactúa con la base de datos.

Los lenguajes .Net (c #, vb), PHP son lenguajes comunes de servidor o del lado del servidor.

JavaScript, CSS y HTML pueden considerarse lenguajes front-end o del lado del cliente, aunque CSS y HTML no se consideran verdaderos ‘lenguajes de programación’, y JavaScript ahora puede ejecutarse tanto en el back-end como en el front-end desde la introducción de Node.js