Fun ideas for project on Encoding

975 Views Asked by At

My university is organizing a project for college students (age around 17) around the subject of encoding (not encypting! See also http://danielmiessler.com/study/encoding_vs_encryption/). As a student of this university, I was asked to help organize this project.

We have made some teaching material, in which we explain the concept of encoding and decoding. The college students will get an understanding of Hamming codes and the Golay code, among other things.

One key piece is missing however: we would like to come up with a fun project based on encoding and decoding.

The project will have to take them about 4 to 8 hours. A few ideas we already came up with, but are not fully satisfied with:

  1. Split the college students in a few groups. Let each group choose a mp3 file with some well-known music. Let them encode the (binary representation of the) mp3. We add some noise to this encoding and let some other group try to decode it, based on a bit of information given by the first group (eg. part of the generator matrix used or some part of the decoding).

  2. We make a message consisting of some images or text, encode it, add some noise, and send it to the first group. They will have to decode it (based on some information given by us) and try to find the message that we sent. They encode it, we add some noise, and send it to the second group, and so on... Then we hope the message that the last group decodes still somehow resembles the message we sent (or not).

TL;DR. Do you have an idea for a fun project based on encoding and decoding for college students, taking about 4 to 8 hours?

Thanks in advance!

EDIT 2012-01-12 11:26

Before these college students start the project, they will have an understanding of basic lineair algebra (matrix multiplication) and binary arithmetics. The project is meant for 'excellent' (or smart) students, that have a passion for math.

1

There are 1 best solutions below

2
On

You might look at various error-tolerant ways of putting data on paper and scanning it back in. In particular, the Twibright Optar system for printing music on paper uses Golay codes.

MP3 is pretty complex, unless you're just treating it as a raw opaque binary blob. Perhaps it would simplify things to use a simpler representation of music, perhaps a series of raw uncompressed 16-bit integers (as stored on music CDs or inside WAV files) or MIDI files.

Perhaps you could implement some variation of the "telephone game"? Perhaps something involving manual typewriters to type out messages (attempting to make them "error-resistant"), and hole-punches to knock out a dozen "critical" letters, and then try to recover the original message from the sheet of paper riddled with holes?