In imperative programs, programmers give the computer a set of ordered steps that need to be done in order to do something. If someone wanted the computer to draw a cat face, they might give directions like "Draw a circle here, draw two smaller circles there, draw two triangles on top" and so on. Imperative programs sometimes have a lot of side effects.