This text outlines the general principles of good programming practice for complete novices. It teaches modern computer programming and explains concepts such as object-oriented programming so that everyone can understand them.