¿Frontend o Backend, dónde debería escribir las validaciones?

Cuando se trata de desarrollo de aplicaciones web, un debate recurrente entre programadores de backend y frontend es, ¿dónde debemos realizar la validación de datos, en el frontend o en el backend? Esta cuestión se torna aún más crucial cuando se busca un equilibrio entre ofrecer una óptima experiencia de usuario y garantizar la seguridad de la aplicación.