Text this: Using cloud technologies to check and record programming tasks