From Design Thinking to Computational Thinking: An Early Stage Design Tool for Supporting Child Programmers’ Problem Definition and Ideation

PI: Prof. Dr. James Landay


In recent years, there has been a global push to teach Computer Science to all children. However, computational thinking is notoriously difficult to teach to kids, and the existing systems (e.g., Scratch) foster practices contrary to those encouraged by the computing field. Children, on the other hand, excel at design thinking tasks and naturally engage in ideation, prototyping, and testing. Interestingly, though, design thinking and computational thinking share a similar underlying skillset. We seek to borrow user-centered design practices from design thinking to make computational thinking more accessible to children. Drawing from the visuospatial problem definition techniques of design thinking and our findings from interviews with designers, software engineers, and child programmers, we will create a childfriendly tool that helps young computational thinkers define and organize their projects before they begin programming. We will also conduct a user study of children utilizing this system to assess its effect on later programming tasks. In doing so, we will collect qualitative and quantitative data which we will distill to identify further insights into the overlap of computational and design thinking and children’s capabilities and successes in using design thinking methods for computational design tasks.