How Kids Code and How We Know Fenia Aivaloglou @feniaiv Sprites - - PowerPoint PPT Presentation
How Kids Code and How We Know Fenia Aivaloglou @feniaiv Sprites - - PowerPoint PPT Presentation
How Kids Code and How We Know Fenia Aivaloglou @feniaiv Sprites Scripts Categories Blocks How do kids code in Scratch? Size & complexity Concepts & How do kids features code in Scratch? Code smells Scratch web interface
Sprites
Scripts
Blocks Categories
How do kids code in Scratch?
How do kids code in Scratch? Size & complexity Concepts & features Code smells
Scratch web interface JSON files of 250K projects CSV files of 247K projects
CSV files of 247K projects Database
- E. Aivaloglou, F. Hermans, J. Moreno-León, and G. Robles. 2017. A dataset of scratch programs: scraped, shaped and
- scored. In Proceedings of the 14th International Conference on Mining Software Repositories (MSR '17)
What we found
Size & complexity Concepts & features Code smells
75% Up to: 5 sprites 12 scripts 76 blocks
233K non-empty projects
Cyclomatic complexity: 1 Cyclomatic complexity: 2
78%
What we found
Size & complexity Concepts & features Code smells
in 40% of the projects
in 77% of the projects
in 77% of the projects
52% 36% 12%
in 32% of the projects
>4 in 7% of the projects
in 8% of the projects
What we found
Size & complexity Concepts & features Code smells
Across sprites: in 26% of the projects Within sprites: in 10% of the projects
scripts with >18 blocks in 30% of the projects
1 3 2 4
3 1 2 4
3 1 2 4
in 28% of the projects
1% 8% 24%
- E. Aivaloglou and F. Hermans. 2016. How Kids Code and How We Know: An Exploratory Study on the Scratch Repository.
In Proceedings of the 2016 ACM Conference on International Computing Education Research (ICER ‘16)
One ‘good’ ve r sion
T wo ‘sme lly’ ve r sions
T wo ‘sme lly’ ve r sions L
- ng me thod
Duplic ate d c ode
L
- ng Me thod Ve r
sion
tl;dr Ye s Kids pe r for me d signific antly be tte r
- n the non- sme lly
pr
- gr
am
tl;dr Ye s But, diffe r e nc e s tasks ar e impac te d diffe r e ntly
‘Good’ Ve r sion “Whe n have yo u wo n the game ? ”
L
- ng Me thod Ve r
sion “Whe n have yo u wo n the game ? ”
‘Good’ Ve r sion “Make the game go to 10 po ints”
Ve r sion D Duplic ate d Code Ve r sion
F . Hermans and E. Aivaloglou, Do code smells hamper novice programming? A controlled experiment on Scratch programs, 2016 IEEE 24th International Conference on Program Comprehension (ICPC)
E duc ate !
8 years old Male (65%) No programming experience (60%) With parent
What kids thought the y le ar ne d
What the y r e ally le ar ne d
1.958 788 504 292 218 150 82
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
1.958 788 504 292 218 150 82
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
http://www.katyjordan.com/MOOCproject.html
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
?,?,?
Student profile Discussion forum Course videos Questionnaires
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
Follow the course with a parent Late in joining
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
Try all questionnaires Get a good grade Have a failed answer
- 300
200 700 1200 1700 2200 1 2 3 Mid-term 4 5 6 Bonus Final test Students Course week
Gender Age
64 quizzes 2 tests smells + programming concepts
0.2 0.4 0.6 0.8 1 1.2 5 6 7 8 9 10 11 12 13 14 15 Mean grade Student age Conditionals Coordination Variables Loops Operators Parallelization Procedures
0.2 0.4 0.6 0.8 1 1.2 5 6 7 8 9 10 11 12 13 14 15 Mean grade Student age Conditionals Coordination Variables Loops Operators Parallelization Procedures
0.2 0.4 0.6 0.8 1 1.2 5 6 7 8 9 10 11 12 13 14 15 Mean grade Student age Conditionals Coordination Variables Loops Operators Parallelization Procedures
F . Hermans and E. Aivaloglou. 2017. Teaching software engineering principles to K-12 students: a MOOC on
- scratch. In Proceedings of the 39th International Conference on Software Engineering: Software Engineering and
Education Track (ICSE-SEET '17)
Paper VS Computer
8 weeks
http://csunplugged.org/
No difference in understanding of programming concepts Better self- efficacy beliefs Used wider selection of Scratch blocks
- F. Hermans and E. Aivaloglou. 2017. To Scratch or not to Scratch?: A controlled experiment comparing plugged first and
unplugged first programming lessons. In Proceedings of the 12th Workshop on Primary and Secondary Computing Education (WiPSCE '17)
Future work
- How do Scratch programs evolve? Complexity, sophistication
and smells
- Comparison between different environments (Minecraft,
Mindstorms)
- How to teach the “hard” concepts
- Early introduction to programming, self-efficacy and career
- rientation
Fenia Aivaloglou @feniaiv