FIE 2014 - eMadrid Session 
Automatic Detection of Bad Programming Habits 
in Scratch 
A Preliminary Study 
Jesus Moreno L...
FIE 2014 - eMadrid Session 
(cc) 2014 Gregorio Robles and Jesus Moreno Leon 
Some rights reserved. This work licensed unde...
gures have been taken from the Internet 
Source, and author and licence if known, is speci
ed. 
For those images, fair use applies. 
Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits...
FIE 2014 - eMadrid Session 
Goal of our paper 
Are bad programming 
habits a common practice 
in the Scratch community? 
J...
FIE 2014 - eMadrid Session 
Audience 
Who should/could be interested in this talk? 
Educators teaching how to code 
Studen...
FIE 2014 - eMadrid Session 
Scratch 
Learning to code with Scratch 
Scratch has shown to be successfull in teaching basic ...
FIE 2014 - eMadrid Session 
Bad programming habits with Scratch (I) 
Bad/default naming of sprites 
Jesus Moreno Leon, Gre...
FIE 2014 - eMadrid Session 
Bad programming habits in Scratch (and II) 
Example of repeated code Solution to avoid repeate...
FIE 2014 - eMadrid Session 
Hairball plug-ins development 
We have developed two plug-ins for Hairball to 
automatically d...
FIE 2014 - eMadrid Session 
Scratch projects repository analysis 
Default names Duplicated scripts De
Próxima SlideShare
Cargando en…5
×

Automatic Detection of Bad Programming Habits in Scratch, A Preliminary Study

1.088 visualizaciones

Publicado el

This paper shows the preliminary results of a study regarding two bad programming habits we have detected in our work as instructors with high school students learning to program with Scratch. In order to check if these bad habits, which have to do with object naming and code repetition, are also commonly found in the projects shared in the community repository, we downloaded 100 projects and analyzed them with two plug-ins we developed for Hairball, detecting that most of the inspected projects, 79% and 62% respectively, fall into these issues.

Publicado en: Educación
0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
1.088
En SlideShare
0
De insertados
0
Número de insertados
267
Acciones
Compartido
0
Descargas
15
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Automatic Detection of Bad Programming Habits in Scratch, A Preliminary Study

  1. 1. FIE 2014 - eMadrid Session Automatic Detection of Bad Programming Habits in Scratch A Preliminary Study Jesus Moreno Leon, Gregorio Robles jesus.moreno@programamos.es, grex@gsyc.urjc.es GSyC/Libresoft, Universidad Rey Juan Carlos FIE 2014, Madrid, October 23 2014 Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  2. 2. FIE 2014 - eMadrid Session (cc) 2014 Gregorio Robles and Jesus Moreno Leon Some rights reserved. This work licensed under Creative Commons Attribution-ShareAlike License. To view a copy of full license, see http://creativecommons.org/licenses/by-sa/3.0/ or write to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Some of the
  3. 3. gures have been taken from the Internet Source, and author and licence if known, is speci
  4. 4. ed. For those images, fair use applies. Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  5. 5. FIE 2014 - eMadrid Session Goal of our paper Are bad programming habits a common practice in the Scratch community? Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  6. 6. FIE 2014 - eMadrid Session Audience Who should/could be interested in this talk? Educators teaching how to code Students learning to program Developers of programming learning tools Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  7. 7. FIE 2014 - eMadrid Session Scratch Learning to code with Scratch Scratch has shown to be successfull in teaching basic and advanced programming concepts However, bad programming habits have been detected There are no automatic tools to check for correctness Hairball: lint-inspired static analysis of Scratch projects Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  8. 8. FIE 2014 - eMadrid Session Bad programming habits with Scratch (I) Bad/default naming of sprites Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  9. 9. FIE 2014 - eMadrid Session Bad programming habits in Scratch (and II) Example of repeated code Solution to avoid repeated code Blocks should be created to avoid repetition of code Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  10. 10. FIE 2014 - eMadrid Session Hairball plug-ins development We have developed two plug-ins for Hairball to automatically detect bad programming habits 1 convention.SpriteNaming 2 duplicate.DuplicateScripts Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  11. 11. FIE 2014 - eMadrid Session Scratch projects repository analysis Default names Duplicated scripts De
  12. 12. ned blocks Projects 79 62 17 Mean 5.94 7.23 1.11 Median 3 2 0 Maximum 67 71 25 Table: Analysis of 100 ramdonly downloaded Scratch projects Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  13. 13. FIE 2014 - eMadrid Session Future Work 1 Extend the scope of the study developing new plug-ins 2 Analyze dataset with 5 years of data from the Scratch website 3 Dr. Scratch (alpha version): http://drscratch.programamos.es Background picture: Simon Cunningham Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch
  14. 14. FIE 2014 - eMadrid Session Automatic Detection of Bad Programming Habits in Scratch A Preliminary Study Jesus Moreno Leon, Gregorio Robles jesus.moreno@programamos.es, grex@gsyc.urjc.es GSyC/Libresoft, Universidad Rey Juan Carlos FIE 2014, Madrid, October 23 2014 Jesus Moreno Leon, Gregorio Robles Automatic Detection of Bad Programming Habits in Scratch

×