Please don't look into AbstractShaderProgram::Attribute implementation. Your life will never be the same afterwards.