University of Minnesota Duluth

Learning To Code

Researchers: Dr. Pete Willemsen

Project Overview

Computer programming is more than building software. Learning how to program a computer, in any way, teaches a multitude of problem solving skills. This project is aimed at improving problem solving skills by providing experiences to teach computer programming to elementary students. Through learning a little programming, students will learn to make things, develop problem solving skills, and engage themselves creatively in activities that are truly fun and rewarding.

Currently, elementary students and even middle or high school aged students do not get exposure to programming or computer science. The following video provides motivation for why learning to code is valuable:

Our approach will be to use MIT’s Scratch Programming Language to teach students all about coding and problem solving in an exciting and engaging manner. Scratch is freely available and can be used directly on the web or downloaded onto your computer. The following video highlights Scratch and provides an introduction to programming with Scratch:

Intro to Scratch 2.0 from ScratchEd on Vimeo.


There are many Scratch resources on the Internet. Some particularly useful ones are listed below:

Curriculum Ideas

For the first pass at this project, we are providing three sessions, each about one hour long to third grade elementary students. The curriculum we developed (and refined) in these session will be linked below.

Session 1 - Scratch Introduction

Session 2 -

Session 3 -

Student Collaborators

Teaching problem solving skills and computer programming to elementary students would not be possible without the dedication and help of undergraduate students in the Department of Computer Science at UMD. The following students have volunteered their time, helping to foster and develop the leaders of the future: