{'fraction_non_alphanumeric': 0.00974025974025974, 'fraction_numerical': 0.0, 'mean_word_length': 5.232323232323233, '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}}
An Objects-First Approach to Teaching Object Orientation based on objectKarel

In the last decade the departments of Information Technology have adopted the Object Oriented Programming (OOP) paradigm for introductory programming courses. In this paper we present the problems encountered when OOP is taught to novices and how the microworld objectKarel that we developed helps in dealing with these problems. The main part of the paper has been devoted to providing a description of a proposal for teaching the fundamental notions of OOP with the help of objectKarel and some preliminary results from its evaluation.