The world is noisy place, and errors can occur whenever information is stored or transmitted. Error detection techniques add extra parity bits to data to determine when errors have occurred.
This activity is a magic trick which most audiences find intriguing. In the trick the demonstrator is "magically" able to figure which one out of dozens of cards has been turned over, using the same methods that computers use to figure out if an error has occurred in data storage.
Matt and a volunteer from the audience prepare for the "Parity Trick" (activity 4 in the book), using magnetic cards.
The parity tiles on a magnetic blackboard, from a demonstration in Japan.
Unplugged in a High School Classroom, Japan
Students trying out Unplugged in a High School Classroom, Japan
Tim explains Parity Magic Trick, UOC, Christchurch, 17-18.04.2008
Tim guides students in Parity Magic Trick, UOC, Christchurch, 17-18.04.2008
National Center for Women & Information Technology (NCWIT) has a learning package called Unplugged in a Box which has detailed lesson plan of this activity.
Download the related video at Card Flip Magic -- Error Detection and Correction
Mordechai (Moti) Ben-Ari from the Weizmann Institute of Science, Israel has programmed the Error Detection and Parity Unplugged activity in Scratch which can be downloaded in a zip file of the complete set of activities . Please read the ReadMe.txt for documentation.
Tom Bradley, a Computer Science Graduate from Swansea has developed an online Error Detection activity to go along with this Unplugged module.
Computing Science Inside Workshop has an activity Tablets of Stone which is a nice extension activity to this topic. This workshop looks at the various means of communication used everyday such as the Mobile Phone, Email and Royal Mail. Pupils will consider the various methods and rules that are in place to ensure this communication is reliable. Working in a group, pupils analyse a communications problem description and develop their own communications protocol to ensure reliability. Through a role-play activity pupils will test their protocols in an unreliable environment and then identify problems and improvements to their solutions. Pupils will then discover the relevance of their solutions by comparing them against a related communications environment: packet switching in the Internet.
Note: You will need to apply and register in order to recieve the Workshop Pack for this activity.
Centre for Innovation in Mathematics Teaching has the following teaching package in Binary Coding developed to teach Codes and Ciphers in their Maths Curriculum: Teacher Guide, Student Guide, OHP Slides, Lesson Plans.
Hiroki Manabe has created a Flash animation version of the Error Detection activity
An older version of this activity can be downloaded in PDF format here. The content is similar to the current version, but there's some extra technical information.
The ISBN example in the books uses the ISBN-10 code. A new code, ISBN-13, started use on 1 January 2007. ISBN-13 also uses a checksum, but has a simpler formula. For details, see the Wikipedia article on ISBN
The Mathmaniacs web site has a similar activity (lesson A)
Video: The use of error correction on disks is discussed here. Steve Gibson and Leo had a good discussion about how all modern drives have become dependent upon built-in error correction, and how SpinRite 6 monitors the drive's use of ECC (Error Correction Code) on the fly to help provide a highly sensitive early warning of impending drive failure.
The Magic of Computer Science book, a collection of magic tricks based on Computer Science (including the one in this activity), available as part of CS4FN
Illuminations has an activity Arithme-Tic-Toc where students will be introduced to modular arithmetic by first examining a five-hour analog clock and its mathematical properties. Then students will investigate patterns and relationships that exist in 12-hour addition and multiplication clock tables.
Illuminations has an activity Check that Digit. This lesson introduces students to a common and practical use of modular arithmetic. First the barcode system is examined, specifically UPC and ISBN bar coding. Then, students will discover the applications of modular arithmetic as applied to credit card numbers.
Centre for Innovation in Mathematics Teaching has the following resources on bar codes developed for their Maths Curriculum:
See also their EAN Bar Codes teaching package:
Try Engineering has an activity called Cracking the Code which explores the concept of how computerized barcoding has simplified distributing and pricing of products. Students learn about encoding and decoding, the barcoding system, and how a mathematical formula is embedded in barcoding to safeguard against errors. Students use websites to identify product barcodes, test codes from everyday product, and work as an "engineering team" to come up with the next generation of information embedding systems. Download Full Lesson Plan and Student Worksheets.
Frances M. Gasman at Center for Discrete Mathematics & Theoretical Computer Science at Rutgers University has an fully developed lesson plan in Hamming Codes: Detecting and Correcting Errors.
TES Connect UK contributor Ged Firth has a booklet on Hamming Code. Note: Teachers will need to register on TES Connect UK in order to access resources.
MUKOKU UK has a module in Binary Representation of Data that covers the following topics with resources:
CSIRO's SCIENCE BY EMAIL has an activity Coin check that describe binary code, the language of computers
NASA Space Math III has Correcting Bad Data Using Parity Bits. Students see how computer data is protected from damage by radiation glitches by using a simple error-detection method involving the parity bit. They will reconstruct an uncorrupted sequence of data by checking the eighth bit to see if the transmitted data word has been corrupted. By comparing copies of the data sent at different times, they reconstruct the uncorrupted data. A one-page teacher guide accompanies the one-page assignment.
Dane Court Computing has good class notes in Character Coding Schemes