Copiar, eu diria que nenhum.
Usar como referência? Sempre que puder, desde que você entenda o que o código original faz e o que você quer fazer.
Eu sou muito exigente quanto a organização e performance do meu codigo, bem como gosto sempre de usar tudo de mais recente que a linguagem oferece.
Dito isso, se eu encontro um codigo que me serve total ou parcialmente, eu uso ele como referência e reescrevo dentro do meu padrão.
Isso me ajudou muito no início a compreender coisas mais complexas na programação.