When teaching introductory programming, it is a good idea to mix in some early Software Engineering concepts, such as design by contract, software quality, design patterns or unit testing. However, if the first programming examples are too simple, those concepts seem unpractical and unconvincing. On the other hand, Computer Graphics should be a part of elementary programming courses. Graphics make learning programming more interesting and compelling, and they can also help introduce naturally the Software Engineering concepts and techniques that we mentioned. Still, using the graphical libraries provided by the programming environment is complicated, because they are very detailed and they embody paradigms that are distractingly outside the scope of the current discussion. The solution is to provide an ad-hoc library that concentrates on what is necessary at this stage. We can use the library also to provide forceful examples of the Software Engineering concepts that we want to introduce.