Abstract
In the last few years, many books, online puzzles, apps and games have been created to teach young children programming. However, most of these do not introduce children to broader concepts from software engineering, such as debugging and code quality issues like smells, duplication, refactoring and naming. To address this, we designed and ran an online introductory Scratch programming course in which we teach elementary programming concepts and software engineering concepts simultaneously. In total 2,220 children actively participated in our course in June and July 2016, most of which (73%) between the ages of 7 and 11. In this paper we describe our course design and analyze the resulting data. More specifically, we investigate whether 1) students find programming concepts more difficult than software engineering concepts, 2) there are age-related differences in their performance and 3) we can predict successful course completion. Our results show that there is no difference in students' scores between the programming concepts and the software engineering concepts, suggesting that it is indeed possible to teach these concepts to this age group. We also find that students over 12 years of age perform significantly better in questions related to operators and procedures. Finally, we identify the factors from the students' profile and their behaviour in the first week of the course that can be used to predict its successful completion.
Original language | English |
---|---|
Title of host publication | 2017 IEEE/ACM 39th International Conference on Software Engineering |
Subtitle of host publication | Software Engineering Education and Training Track (ICSE-SEET) |
Editors | R. Bilof |
Place of Publication | Los Alamitos, CA |
Publisher | IEEE |
Pages | 13-22 |
Number of pages | 10 |
ISBN (Electronic) | 978-1-5386-2671-9 |
ISBN (Print) | 978-1-5386-2672-6 |
DOIs | |
Publication status | Published - 2017 |
Event | 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering Education and Training Track (ICSE-SEET) - Buenos Aires, Argentina Duration: 20 May 2017 → 28 May 2017 |
Conference
Conference | 2017 IEEE/ACM 39th International Conference on Software Engineering |
---|---|
Country/Territory | Argentina |
City | Buenos Aires |
Period | 20/05/17 → 28/05/17 |
Keywords
- Programming education
- MOOC
- Scratch
- code smells
- dropout prediction