Does ‘smelly’ code affect kids?

There is plenty of data on adult programmers and how they code, but until recently little was known about how kids code. Two TU Delft researchers are trying to change that in order to help kids become better programmers.

Dr. Felienne Hermans, assistant professor in the Software Engineering Research Group, and postdoctoral researcher Efthimia Aivaloglou wanted to find out if code smells have the same effect on novice programmers as they do on adults. Hermans explained that code smells are essentially weak spots in code that are in need of improvement or code that has no structure. By identifying any challenges that these smells present, the researchers hope to explore improved teaching methods and tools for younger programmers.

To gather data Hermans and Aivaloglou conducted an experiment with 61 students in Delft aged 12 to 14. Using Scratch, a free block-based programming language developed at the Massachusetts Institute of Technology, the participants were divided into three groups and each was provided with a game. One group received a clean version, while the other two received “smelly” versions involving code clones (duplication smell) and a very long script (long method smell). They found that while the time to complete a set of defined tasks did not differ between the groups, there was a significant difference in the quality of the outputs between the smelly and non-smelly versions.

The duo has continued their research by developing a free programming MOOC for kids eight years or older (in Dutch). According to Hermans, more than 5,000 children have participated and over 300 have completed the course so far which results in a lot of data. “We want people to know that the course is free and online for everybody,” she said. Aivaloglou noted that this larger data set is allowing them to look at other factors like whether children who work together with parents do better.

The next phase of their project will be a series of pilots with schools in Pijnacker, Heemskerk, Utrecht and The Hague. Hermans and Aivaloglou will be teaching the teachers with the aim of improving the way programming is taught to the students.

Hermans said that so much of technology is aimed at consuming and she thinks it is important for kids to understand that they can make their own. “It would be cool if kids understand that they can be the writer, the creator, that it’s a career path,” she said. “If you don’t like the way something works, then make it better.”

Redacteur Redactie

Heb je een vraag of opmerking over dit artikel?


Comments are closed.