This document summarizes a lecture on programmable shading given by Mark Kilgard at the University of Texas on March 1, 2012. The lecture covers programmable shading in graphics hardware using shading languages like Cg, HLSL, and GLSL. It discusses how shaders allow programming of vertex, geometry, and fragment processors inside the GPU. Examples of complex shaders are shown. The evolution of shading languages from low-level to high-level is discussed.