{'fraction_non_alphanumeric': 0.011270491803278689, 'fraction_numerical': 0.0, 'mean_word_length': 5.38562091503268, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Methodology for teaching introductory computer science

In the last few years it has been generally recognized that teaching programming involves more than describing a new FORTRAN statement each day and providing programming problems to be coded. The concepts of disciplined programming and the accompanying interest in the problem solving process, coupled with the increasing economic desirability of constructing correct and maintainable software has resulted in significant attention being focused on what should be taught, and, to a lesser extent, on how this is best accomplished.
 In order to discuss how an introductory programming course is taught, it is essential to first establish a set of objectives for such a course. Some of these objectives are obvious and generally agreed upon, others are engendered by the academic environment in which this particular course exists. We first state the objectives and then comment on their appropriateness and interrelation.