I've been reading countless tutorials, and I bought both ShaderX^2 novels by wolfgang engel, and I'm pretty sure I understand the syntax of HLSL, but how do you go about deciding what effect to make, and furthermore, how to achieve that effect? (by this I mean like, an algorithm. or psuedocode)

This is what I don't understand about shaders