Como outras pessoas disseram, quando você coloca javascript no cabeçalho, isso atrasa a renderização da página até que os scripts sejam carregados, o que significa que a página pode demorar mais para carregar - especialmente se você estiver baixando arquivos de script grandes.
Se você mover suas tags de script para o final da página, garantirá que o navegador faça download de imagens e folhas de estilo antes das tags de script e a página provavelmente aparecerá para ser renderizada antes que os scripts comecem a ser executados. Isso também significa que, se você estiver dependendo de alguma funcionalidade de seus scripts, ela não estará disponível até um pouco depois que a página estiver visível para o usuário.
Se você estiver adicionando estilos ou elementos (etc. alternando campos de texto com alguma forma de editor mais rico), isso ficará visível para o usuário como piscando.
Se você estiver adicionando eventos de clique a elementos, eles não serão clicáveis até um pouco depois de os próprios elementos estarem visíveis.
Às vezes, esses problemas requerem que você coloque seus scripts na cabeça, outras vezes você ficará bem colando-os na parte inferior.
IMHO (completamente contra YSlow e muitas pessoas espertas) você deve manter seus scripts na tag head e apenas confiar neles para serem armazenados em cache na maior parte do tempo.