{'fraction_non_alphanumeric': 0.014130434782608696, 'fraction_numerical': 0.002173913043478261, 'mean_word_length': 5.673913043478261, '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}}
Evaluation of Software Education Using Auto-generated Exercises

Programming language is one of fundamental issues on software education. Not only knowledge such as grammar but also practical programming experiences are important to the learning of programming languages. In this paper, we classify programming exercises into the following two types: 1) syntax practices for understanding the grammar and 2) semantics practices for understanding the flow of a program, and then we develop a web-base application that automatically generates programming exercises by using templates and PHP language. We also evaluate the effectiveness of the system composed of both our web-based system and an electronic materials for learning programming languages by several experiments, and find that the semantic practices require more time than the syntax practices to enhance the understanding of programming languages thoroughly.