writing a program is for meeting a need