@techreport{TR-IC-18-20, number = {IC-18-20}, author = {Renan Souza and Ricardo Caceffo and Pablo Frank-Bolton and Rodolfo Azevedo}, title = {An Antipattern Documentation about Possible Misconceptions related to Introductory Programming Courses (CS1) in JAVA}, month = {December}, year = {2018}, institution = {Institute of Computing, University of Campinas}, note = {In English, 42 pages. \par\selectlanguage{english}\textbf{Abstract} A Concept Inventory (CI) is a set of multiple-choice questions that can be used to assess the students’ comprehension on some topic at some point during a course. Each incorrect choice corresponds to a specific misconception – an inaccurate line of thought students often follows. In previous work we identified misconceptions for Introductory Programming Courses (CS1) in C and Python programming languages. Based on these misconceptions, in this work we mapped and documented possible misconceptions that could be found in CS1 courses based on JAVA programming language. We developed Java programming codes in order to check if the misconceptions detected in C and Python also could occur in Java language. Also, we used these codes to identify possible new misconceptions in Java, exploring its syntax and object-oriented paradigm. Finally, the misconceptions identified (N = 34) were classified into 8 programming topics and documented through an Antipattern structure, composed by: code (a label to identify the misconception); name; description (a brief explanation about the misconception); example; rationale (a possible reason why the misconception happens); consequences; detection (where and how the misconception happens); and improvement (solutions in order to prevent the misconception). Future work relates to the validation of the misconceptions identified on this work, through CS1 specialists and students, following the CI design process proposed by Almstrum et al. } }