Shaders are programs that defines how to process the position datas as input of graphics pipeline to something that can be shown on screen. For example, Vertex Shader convert position datas from NDC (normalized device coordinates) to SSC (screen-space coordinates). Then Fragment Shader will take the result as input of it and color it. Basically, shaders will tell OpenGL how to draw pixels from your data to screen.