learning cycles

I can use the basics of cycles and can get some ok results. Then is see nodes with all these fancy boxes like layerweight and I don’t know what else. However, they seem to have a good effect.

How do i learn to use these. Is there a book/course that teaches cycles - IN DETAIL. Not just the basics.

thank you.

One of the things that helped me a lot is to down load some of the textures in that thread (you can get them a blendswap.com. That way you can apply them to a model and study the nodes tree.