Building a program 101