Se eu fosse definir shader tecnicamente, eu diria que é o conjunto de configurações e instruções que vão determinar a aparência dos materiais, iluminação, visualização, qualquer resultado de uma determinada composição gráfica.
Em outras palavras, o shader é a receita que vai ser usada pra misturar os componentes que estamos reunindo pra criar um efeito gráfico.
Por exemplo, se no Max eu componho um material dizendo pra usar uma imagem a 100% no canal diffuse + uma cor no specular a 50% com um glossiness de 75, eu criei um shader.
Também numa programação, se eu defino que a instrução pra determinar um pixel shading é um duffuse bump specular map add alpha reflect diffuse, isso é definido como um shader, pois está definindo como as fontes de cor, texturas, etc, serão usadas pra compor o visual final.