I was reading this article “Ten quick tips for teaching programming” by Neil C. C. Brown and Greg Wilson at https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5886386/ It had many useful suggestions one of which was “Don’t just Code” which I deciphered as: in addition to making students write code, we can also make them look at code and make meaning of it or engage with it in some way that gets them to think computationally. One way to do this they suggested was using Parsons Problems (That one is new to me). I quote them here:

For example, a growing number of educators are 
including Parsons Problems in their pedagogic repertoire 
[20, 27]. Rather than writing programs from scratch, 
learners are given the lines of code they need to solve a 
problem, but in jumbled order. Reordering them to solve 
the problem correctly allows them to concentrate on 
mastering control flow without having to devote mental 
energy to recalling syntax or the specifics of library 
functions. They are also liked by learners; Ericson et al. 
 [28] found that learners were more likely to attempt 
 Parsons Problems than nearby multiple choice questions 
  in an e-book.

I looked up the researches referred to above as [20, 27]. The 20 reference at http://doi.acm.org/10.1145/2839509.2844617 validated and extended the original Parsons’ research at: http://dl.acm.org/citation.cfm?id=1151869.1151890

They implemented their Parsons Problems as web based drag and drop exercise. I get the general sense of how to create Parsons Problems. I want to use them. But I work in a part of the world where internet service is expensive and sometimes erratic. Similarly with electric power supply. So I wanted to design a paper based or some non-computer-based, physical media form of Parsons Problems that does not require use of electrical power or web access. I want to begin to use them in my lab/revision classes. However the logistics of their construction and use on non-computer media is not clear and/or problematic to me.

One option I considered was using flash cards with codes written on them for students to rearrange in the correct order of the code. One challenge with flash cards is the bulk. For example, consider an Intro Programming Class with students from several departments as high as 70 or more. Suppose you need a set of say 8 flash cards carrying the code for one program. For a class of 70 students, that would amount to producing 70 sets of 8 flash cards (i.e. 560 cards). Multiply this for say 300 some exercises for different topics and different programming subjects and you begin to see the challenge. There are resource constraints here. There is also problems of handling the bulk, and keeping the cards in good condition from one use to another etc.

Any ideas how one can produce non web-based Parsons Problems in some (preferably, physical/hard copy) form that is much cheaper, less bulky, durable and yet engaging for the students i.e. they don’t just write answers, they shuffle and move, and do some activity with the options?


2 Answers 2


You could print the source code on regular 8.5"x11" paper and cut it into strips, optionally with line numbers on the back to represent the correct answer.

If cutting papers for all of your students is too much labor, you could scramble the source code lines in the text editor, print the scrambled paper and give it to students to cut and reassemble using scissors and tape or glue.

If asking students to cut and reassemble is too much work for them, you could add random integers to each line and ask students to give you the series of integers that orders the program correctly, then let them manipulate the paper as they need without having to worry about reassembly.

If you want reusable versions, consider printing on reinforced card stock and/or laminating each strip. A hole punch and string can help keep each program together.

If you need to show the problem to the whole class, you could print on transparency paper and use a projector. If electric power isn't available, printing each source line in a large font on paper and using painter's tape to adhere to a wall may suffice.

This blog post has a picture of a Parson's problem on paper to help illustrate the ideas here (please ignore their eval(input()) security holes!). Here's the Wayback link for posterity.


If you have a metal surface to work on, such as some whiteboards, you can get "magnetic paper". These are sheets of various sizes that are magnetic and can be written on with markers or printed on. With erasable markers they can be reused. They can also be cut to size with a scissors. They will, of course, stick to any metal surface and can be removed and replaced.

Search for "magnetic paper" to find several varieties and brands.

  • $\begingroup$ The thread helped with more insight on writing them but not construction of non Computer based ones. Glad at least knowing where some online samples are. Regards. Your magnetic surface concept is more interesting for my intent $\endgroup$ Commented Nov 7, 2019 at 8:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.