Do Code Smell Hamper Novice Programmers?
-
Upload
felienne-hermans -
Category
Technology
-
view
229 -
download
0
Transcript of Do Code Smell Hamper Novice Programmers?
![Page 1: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/1.jpg)
Do code smells hamper novice programmers?
![Page 2: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/2.jpg)
Do code smells hamper novice programmers?
Felienne Hermans Efthimia
Aivaloglou
![Page 3: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/3.jpg)
Do code smells hamper novice programmers?
Felienne Hermans Efthimia
Aivaloglou
@Felienne
![Page 4: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/4.jpg)
Code smells matter to devs
![Page 5: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/5.jpg)
Do code smells matter to kids?
![Page 6: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/6.jpg)
Do code smells matter to kids?
![Page 7: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/7.jpg)
Sprites
![Page 8: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/8.jpg)
Scripts
![Page 9: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/9.jpg)
Each sprite can have scripts
![Page 10: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/10.jpg)
Do code smells matter to kids?
![Page 11: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/11.jpg)
A simple game
![Page 12: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/12.jpg)
Version N
![Page 13: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/13.jpg)
Version L
![Page 14: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/14.jpg)
Version D
![Page 15: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/15.jpg)
Version D
![Page 16: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/16.jpg)
Version D
![Page 17: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/17.jpg)
Wait what?
![Page 18: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/18.jpg)
Version D
![Page 19: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/19.jpg)
Version D
![Page 20: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/20.jpg)
Version D
![Page 21: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/21.jpg)
Version N
![Page 22: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/22.jpg)
Version L
![Page 23: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/23.jpg)
The experiment
![Page 24: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/24.jpg)
The experiment
61 kids20 x N20 x L21 x D
![Page 25: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/25.jpg)
Hour 1:Scratch Intro
Lesson
![Page 26: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/26.jpg)
Hour 2:Pong experiment
![Page 27: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/27.jpg)
Task types
![Page 28: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/28.jpg)
Task types
Explanation
![Page 29: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/29.jpg)
Task types
“What does this
code do?”
Explanation
![Page 30: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/30.jpg)
Task types Understandi
ng
![Page 31: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/31.jpg)
Task types Understandi
ng
“When have you lost this
game?”
![Page 32: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/32.jpg)
Task types
Modification
![Page 33: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/33.jpg)
Task types
Modification
“Make the game go until
10 pts”
![Page 34: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/34.jpg)
Do code smells matter
to kids?
![Page 35: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/35.jpg)
tl;drYes
![Page 36: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/36.jpg)
tl;drYes
Kids performed significantly better on the non-smelly program
![Page 37: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/37.jpg)
tl;drYes
But, there were differences
between the tasks!
![Page 38: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/38.jpg)
Let’s have a closer look!
Explanation is unaffected by
the presence of smells
![Page 39: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/39.jpg)
Version N
“What does this code
do?”
![Page 40: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/40.jpg)
Version L
“What does this code
do?”
![Page 41: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/41.jpg)
Let’s have a closer look!
Understanding seems affected
more by the Long Method
smell
![Page 42: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/42.jpg)
Version N
“When have you won the
game?”
![Page 43: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/43.jpg)
Version L
“When have you won the
game?”
![Page 44: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/44.jpg)
Let’s have a closer look!
Modification is hampered most by Duplication
![Page 45: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/45.jpg)
Version N
“Make the game go to 10 points”
![Page 46: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/46.jpg)
Version N
“Make the game go to 10 points”
![Page 47: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/47.jpg)
Version D
![Page 48: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/48.jpg)
Version D
![Page 49: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/49.jpg)
Version D
![Page 50: Do Code Smell Hamper Novice Programmers?](https://reader036.fdocuments.net/reader036/viewer/2022062503/58e9673d1a28abb45f8b653d/html5/thumbnails/50.jpg)