{'fraction_non_alphanumeric': 0.014234875444839857, 'fraction_numerical': 0.0, 'mean_word_length': 5.160583941605839, '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}}
A software emphasis in the second course in computer science

Over the past few years, structured programming concepts and techniques have played a major role in forming the content and approach in introductory programming courses. In these courses the students learn the fundamentals of programming and the elements of some programming language. But learning the basic elements of programming barely exposes the students to the depth and breadth of computer science. In addition, many students can have a false impression of their limited programming capabilities. For these reasons, the second course in computer science is quite critical. Not only must it build on the programming skills taught in the first course, but it must also give the students some appreciation of the depth, breadth, and theoretical foundations of computer science.