Teaching Computer Programming in a Platform as a Service Environment