Provide quizzes that test at several levels. Another higher-level use of quizzes is to determine if students are able to connect information to new situations. This skill is vital in software development. This way, the quiz becomes a check for understanding, and allows the teacher to structure teaching, reviews and subsequent learning opportunities. Require a project that asks student to apply knowledge gained to a real world situation, one that they understand.
Students are interested in creating a range of things, from home pages to ecommerce sites.
These projects should be noted early in the course, perhaps during the first third, so that they have a personal interest in learning and applying course material. Communication between teacher and student is a must in any online environment. The teacher must be willing to interact with students via conference, email, phone and office visits. A reasonable environment with understood parameters should be created and observed. This means that one decision to be made is the extent to which the complexity of the underlying system is a part of the classes.