¿Dónde cargar los scripts?

Siempre se ha dicho que el código de script hay que cargarlo lo primero, por lo que hay que ponerlo en el <head>. Sin embargo, esto es una mala práctica, ya que hasta que no se ha cargado no se puede continuar con la carga del resto de la página. Hoy en día lo que se propone es mover la carga al final de la página.

En el artículo El único script en el HEAD | Head JS se explica el uso de Head JS, que permite la carga de los scripts en paralelo, pero los ejecuta en el orden definido.