clean up your language! - computer science for fun · zombies. they have no mind so no ability to...

20
Computer Science for Fun Issue 16 ISSN 1754-3657 (Print) ISSN 1754-3665 (Online) Clean up your language! Messages, machines and messiness Ninja hacking for fun Zombie attack! Play your drawings

Upload: others

Post on 06-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

Computer Science for Fun Issue 16

ISSN 1754-3657 (Print)ISSN 1754-3665 (Online)

Clean up yourlanguage! Messages, machines and messiness

Ninja hacking for fun

Zombie attack!

Play your drawings

Page 2: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

Welcome to cs4fn

2

The heart of an Arabicprogramminglanguage

I learnGreek,you cantoo

There’s an app for that!Learning a new language is never easy, but AnthonyLadis, a student at QueenMary, University of London, is

helping primary school pupils to get a gripon Greek. His final year project is a freeapp, iLearnGreek. It tests understanding ofsimple Greek words, like clothes, coloursand the seasons, in a series of fun games.It also lets kids write Greek letters to winvirtual trophies. Real pupils and teacherswho tested the app felt it really helpedmake learning fun. Download it for freefrom the App Store!

Find more free apps from Queen Mary atwww.qappsonline.com

www.cs4fn.org

It may seem odd to the uninitiated butlanguage – that most human of inventions – isalso a core topic of computer science. Computersare just machines that can f ctions – programs.Those instructions have to be written in speciallanguages (programming languages) that areprecise and unambiguous. New languages arebeing invented all the time each designed tosimplify different bits of computing. Some makeit easier to write programs while others are usedto check that computer systems behave the waythey should.

Language isn’t just the thing that makescomputers tick. A lot of exciting computerscience helps them work with human languages.The earliest computers were actually developed

Languagein themachine

So far all computer languages have beenwritten in English, but that doesn’t need tobe the case. Computers don’t care.Computer scientist Ramsey Nasser hasdeveloped the first programming languagethat uses Arabic script. His computerlanguage is called بلق. In English, it'spronounced "Qalb", after the Arabic wordfor heart. As long as a computerunderstands what to do with theinstructions it's given, they can be in anyform, from numbers to letters to images.

to do exactly that – in World War II to allowthe Allies to unravel the complex German secretcodes. Now with Internet technology, computerscience is inextricably linked with the way wecommunicate. It helps us send messages to eachother and can also to hide messages fromsnoopers. Computers help us translate from onelanguage to another and may even help to savethreatened languages. Language is the essenceof computer science.

Page 3: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

3

Ninja hackingfor fun

Perhaps the most famous white-hathacker is Kevin Mitnick. He started out asa bad guy – the most wanted computercriminal in the US. Eventually the FBIcaught him, and after spending five yearsin prison he reformed and became awhite-hat hacker who now runs his owncomputer security company. The way hehacked systems had nothing to do withcomputer skills and everything to do withlanguage skills. He did what’s calledsocial engineering. A social engineer usestheir skills of persuasion to con peopleinto telling them confidential informationor maybe even actually doing things forthem like downloading a program thatcontains spyware code. Professionalwhite-hat hackers have to have all roundskills: network, hardware and softwareskills, as well as social engineering ones.They need to understand a wide range ofpotential threats if they are to properlytest a company’s security and help themfix all the vulnerabilities.

Breaking the law and ending up in jail,like Kevin Mitnik, isn’t a great way tolearn the skills for your long-term careerthough. A more normal way to become anexpert is to go to university and takeclasses. Wouldn’t playing games be a

much more fun way to learn than sittingin lectures, though? That was whatTamara Denning, Tadayoshi Kohno, andAdam Shostack, computer securityexperts from the University of Washington,wondered. As a result, they teamed upwith Steve Jackson Games and came upwith Control-Alt-Hack™. It’s based on thecult tabletop card game, Ninja Burger®.

Rather than being part of a Ninja Burger®Delivery team, in Control-Alt-Hack™ youare an ethical white-hat hacker workingfor an elite security company. You have tocomplete missions using your Ninjahacking skills: from shutting down the UStelephone network to turning a roboticvacuum cleaner into a pet. The game islots of fun, but the idea is that by playingit you’ll learn lots about the kinds ofthreats that security experts have toprotect against.

So if you like gaming why not learnsomething useful at the same time ashaving fun? Who knows, it might evenlead one day to a career as a securityexpert.

cs4fn eecs.qmul.ac.uk

Try their game by visitingwww.controlalthack.com

Computer hackers are the bad guys, aren’t they? They causemayhem: shutting down websites, releasing classified information,stealing credit card numbers, spreading viruses. They can causelots of harm, even when they don’t mean to. Not all hackers arebad though. Some, called white-hat hackers, are ethical hackers,and the best are paid by companies to test their security byactively trying to break in with permission – it’s called penetrationtesting. It’s not just business though, it’s also now a game.

Page 4: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

Iain M Banks's science fiction novels about ‘The Culture’ imagine auniverse inhabited (and largely run) by ‘Minds’. These are incrediblyintelligent machines – mainly spaceships – that are alsoindependently thinking conscious beings with their ownpersonalities. From the replicants in Blade Runner and robots in StarWars to Iain M Banks’s Minds, science fiction is full of intelligentmachines. Could we ever really create a machine with a mind: notjust a computer that computes, one that really thinks? Philosophershave been arguing about it for centuries. Things came to a headwhen philosopher John Searle came up with a thought experimentcalled the 'Chinese room'. He claims it gives a cast iron argumentthat programmed 'Minds' can never exist. Are the computerscientists who are trying to build real artificial intelligences wastingtheir time? Could zombies lurch to the rescue?

4 www.cs4fn.org

The Chinese room

Searle answers this by imagining a roomin which a human sits. She speaks noChinese but instead has a book of rules –the aliens' computer program written outin English. People pass in Chinesesymbols through a slot. She looks themup in the book and it tells her theChinese symbols to pass back out. As shedoesn't understand Chinese she has noidea what the symbols coming in or goingout mean. She is just uncomprehendinglyfollowing the book. Yet to the outsideworld she seems to be just as much anative speaker as that machine monk.She is simulating the ability tounderstand Chinese. As she's using thesame program as the monk, doing exactlywhat it would do, it follows that themachine monk is also just simulatingintelligence. Therefore programs cannotunderstand. They cannot have a mind.

Is that machine monka Mind?

Searle's argument is built on someassumptions. Programs are 'syntacticdevices': that just means they movesymbols around, swapping them forothers. They do it without giving thosesymbols any meaning. A human mind onthe other hand works with 'semantics' –the meanings of symbols not just the

The Chineseroom:zombieattack!

The Shaolin warriormonk

Imagine that the galaxy is populated byan advanced civilisation that has solvedthe problem of creating artificialintelligence programs. Wanting to observeus more closely they build a replicant thatlooks, dresses and moves just like aShaolin warrior monk (it has to protectitself and the aliens watch too much TV!)They create a program for it that encodesthe rules of Chinese. The machine isdispatched to Earth. Claiming to havetaken a vow of silence, it does not speak(the aliens weren't hot on accents). It

reads Chinese characters written by theearthlings, then follows the instructions inits Chinese program that tell it theChinese characters to write in response. Itduly has written conversations with all theearthlings it meets as it wanders theplanet, leaving them all in no doubt thatthey have been conversing with a realhuman Chinese speaker.

The question is, is that machine monkreally a Mind? Does it really understandChinese or is it just simulating thatability?

Page 5: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

5cs4fn eecs.qmul.ac.uk

working with meaning. However therecan't be a way of telling that by talking toone as otherwise it could have been usedto tell that the machine monk wasn't amind.

Imagine then, there has been a nuclearaccident and lots of babies are born witha genetic mutation that makes themzombies. They have no mind so no abilityto understand meaning. Despite that theyact exactly like humans: so much so thatthere is no way to tell zombies andhumans apart. The zombies grow up,marry and have zombie children.

Presumably zombie brains are simplerthan human ones – they don't havewhatever complication it is thatintroduces minds. Being simpler theyhave a fitness advantage that will allowthem to out-compete humans. They won'tneed to roam the streets killing humansto take over the world. If they wait longenough and keep having children, naturalselection will do it for them.

The zombies are here

The point is it could have alreadyhappened. We could all be zombies but just don't know it. We think we are conscious but that could just be anillusion – another simulation. We have no

way to prove we are not zombies and if we could be zombies then Searle'sassumption that we are different tomachines may not be true. The Chineseroom argument falls apart.

Does it matter?

The arguments and counter argumentscontinue. To an engineer trying to buildan artificial intelligence this actuallydoesn't matter. Whether you have built a Mind or just something that exactlysimulates one makes no practicaldifference. It makes a big difference to philosophers, though, and to ourunderstanding of what it means to behuman.

Let's leave the last word to Alan Turing.He pointed out 30 years before theChinese room was invented that it'sgenerally considered polite to assume that other humans are Minds like us (notzombies). If we do end up with machineintelligences so good we can't tell theyaren't human, it would be polite to extendthe assumption to them too. That wouldsurely be the only humane thing to do.

symbols themselves. We understand whatthe symbols mean. The Chinese room issupposed to show you can't get meaningby pushing symbols around. As any futureartificial intelligence will be based onprograms pushing symbols around theywill not be a Mind that understands whatit is doing.

The zombies arecoming

So is this argument really cast iron? It hasgenerated lots of debate, virtually all of itaiming to prove Searle wrong. Thecounter-arguments are varied and eventhe zombies have piled in to fight thecause – philosophical ones at least.

What is a philosophical zombie? It's just ahuman with no consciousness, no mind.One way to attack Searle's argument is toattack the assumptions. That's what thezombies are there to do. If theassumptions aren't actually true then theargument falls apart. According to Searlehuman brains do something more thanpush symbols about – they have a way of

Could zombies lurchto the rescue?

Page 6: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

In times gone by, pictograms formed muchof human language. The ancient Egyptiansused hieroglyphs, pictures representingwords and ideas. As the centuries passed,humanity started to make language moreabstract. Rather than a picture of a cat,they came up with agreed ways that certainsymbols could represent the same thingand that’s how CAT came to be. In thedawn of computers, humans used symbolsto tell the machines what to do. “LET X=1.0” told the electronics to set up a placein its memory called X and fill that slot withthe number 1.0. The computer would thendutifully comply; X was 1.0 until it was toldotherwise.

The idea of using a special language tocontrol what a computer does isn’t new;musicians have been using somethingsimilar to control orchestras. The musicalscore, all those funny looking symbols onthose long lines, told the players what notesto strike, when and for how long. Fromsimple graphical language music was bornand could be transferred so others couldplay and enjoy.

But what if you had the chance to make upyour own computer language? You couldtell a machine what to do, like how to playa tune. Enter TuneTrace, a smartphone appthat lets you explore this in a fun and easyway. TuneTrace takes a line drawing,analyses it and turns your doodle intomusic. This free app gives you a chance toexplore your own musical creativity but alsoto come up with a way to express yourcreativity by simply making a drawing. Youcan share your drawing with others, whocan add their own bits and make evenmore music.

So what will you draw and how will itsound? Download it from the App Store for free and try it!

6 www.cs4fn.org

Play yourdrawingswithTuneTrace

Tunetrace turns yourdoodle into music

Find more free apps from Queen Mary atwww.qappsonline.com

Page 7: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

Language isn’t just for humans.Businesses need to talk to eachother too. Thanks to computerscientists they have their ownlanguages to do it, ones thatmake them dance.

Normally if we say something like“Simpers, Snype and Co. is talking toBongle and Bingers Inc.” we mean peoplefrom the two companies are talking.Nowadays we could also actually meanwhat we said – the companies are doingthe talking. The web has given us emailand social networking. It’s given industrya whole new way of working together too.Using computers the businesses can talkwithout having to wait for those slowpeople to get round to it.

Rules of engagement

Suppose, to deal with the orders thatcustomers have made through Bongle’swebsite, Bongle need to buy more widgetsfrom Simpers. Rather than a personpicking up the phone, nowadays thecomputers will just arrange it allautomatically. To do that they need to talk and that means they need languages.

Before they can start to collaborate thetwo companies need to agree the rules ofengagement – in what circumstances willthey work together, how will it be done,and what are the exact responsibilitiesthat each is taking on? In the past therules have tended to be written in Englishso people can follow them. The troublewith English is it’s ambiguous. That’s whythere is so much work for lawyers! And ifone company thought they’d agreed tosupply widgets in one size but the otherbelieves the agreement was for whateversize is needed, there’s going to beproblems.

Dancing the dance

Enter ‘Web Services Choreography’. AChoreography in this computing sensedoesn’t mean managers have to learn todo the tango with each other. It’s just aset of agreed rules that tie down exactlywhat each company will do and when –just like a dance choreography does fordancers. Instead of fixing steps it fixesthings like what messages will be sent, bywho and when, each time the companiesinvolved collaborate. What message doesSimpers’ computer need to send to makethat order? What does Bongle's computerhave to do to confirm it?

To make it work with computers theserules have to be specified in a preciselanguage. One such language is Scribble,invented by Kohei Honda of Queen Mary,University of London. It is inspired by yetanother language – a mathematicallanguage called the pi calculus. Becauseof its basis in maths, once the rules areset down, mathematical tools can be usedto check important things about them. Forexample, if they follow the rules, is itpossible for both computers to end upsitting waiting forever for the other one todo something? Computers can be verypatient if that is what their rules tell themto do! If they did it could be disastrousfor the companies concerned.

Are we doing it right?

The beauty of choreography is that oncethe rules of engagement are agreed, andeach company is happy with the Scribbleversion, then they can each get on andimplement it on their own computers.Each doesn’t have to worry about how the other company is making their owncomputers do it. The two companies caneven write programs to do their bit incompletely different programminglanguages. They can be confident, despitethis, that their two computers will befollowing the agreed rules of engagementand so will be able to work together. Thiscan even be checked mathematicallyagainst the original Scribble rules too.

Business is sometimes treated as war, buteveryone can benefit if companies worktogether rather than against each other.Then, at least for computer scientists, it’s better to think of it as a dance.

7cs4fn eecs.qmul.ac.uk

Makingbusiness dance

It doesn’t meanmanagers have tolearn to do the tango

Page 8: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

www.cs4fn.org8

A (com)pressingproblem by Paul Curzon

A key computer science breakthrough thatwe all rely on is being able to shrinkrepetitive things down. Whether it'sstreaming music or movies, sharing photosor just words, if we are to send largeamounts of data across the Internet, weneed to do it as efficiently as possible.How? The clue is in those children'ssongs. Like the songs, most data is highlyrepetitive and we can make use of that.Before sending a file we can look forrepetition and shrink it. It's called datacompression. By sending less we can do itquickly.

One of the simplest ways to compress datais to look for sequences of repeated thingsand just replace them with one copytogether with the number of times itappears. This is obviously useful forcompressing images. At its simplest, adigital image is just a long series ofsymbols indicating the colours of eachpixel. Since colours tend to stick togetherin images, the same symbols are likely toappear together a lot. Take that beachphoto I took on holiday. It has a brightblue sky with only a wisp of cloud.Suppose blue is represented by B andwhite by W then the top line of pixelsmight be something like

BBBBBBBBBBBBBBBBWWWWBBBBBBBB

Rather than storing or sending all thosecharacters, we could instead just send:

16B4W8B

It says there is a run of 16 Bs followed by4 Ws and then 8 Bs. The original 28characters have been compressed to only7 without losing any information at all.This kind of compression is called ‘run-length encoding’.

Wonderful. So let’s look what happenswhen we apply it to a song.

"The wheels on the bus go round and round,round and round,round and round.The wheels on the bus go round and round,all day long."

Let's look at one very repetitive line forstarters:

"round and round"

Applying run-length encoding we get thenew version:

1r1o1u1n1d1 1a1n1d1 1r1o1u1n1d

Oh – there's a problem! Even though it isvery repetitive, there aren't actually anyruns of repeated letters at all. Run-lengthencoding makes it twice as big notsmaller!

The problem is that it is words that arerepeated not adjacent characters. Wecould come up with a way to compressbased on repeated words, but let's not giveup on run-length encoding yet. Maybe wecan improve things.

It turns out we can using a methoddreamed up by David Wheeler and MikeBurrows. The way it works is, surprisingly,to first mix all the letters up and thencompress the result. The idea is to get asmany common letters together before wecompress so that run-length encoding canwork as well as possible. We have to becunning in the way we do it though as weneed to be able to get the originalmessage back.

The way we do it is to rotate the phrase byone letter - that is moving a letter fromthe front to the end. "round_and_round"becomes "ound_and_roundr" (where we'veused underscores to make the spacesvisible). We do that over and over, onerotation at a time, until we get back to theoriginal phrase. For round and round thatgives us 15 new phrases:

Next we put these into alphabetical order(taking spaces as before 'a' in thealphabet).

I have a toddler. I knew I'd signed up for some horrible stuffwhen we had him: Pooey nappies? Yes. Sleepness nights?Tantrums? Of course. But singing! I never expected so muchsinging! We sing at his playgroup, we sing watchingCBeebies, we even sing at his swimming club. If you don't like singing it's all rather boringly repetitive.Whether it's Ten Green Bottles, Five Little Speckled Frogs,Row, Row, Row Your Boat or The Wheels on the Bus, you endup singing the same things over and over...and over and overagain. If only we could cut some of the repetition! Thatsounds like a job for some computer science.

round_and_roundound_and_roundrund_and_roundrond_and_roundroud_and_roundroun_and_roundroundand_roundround_nd_roundround_a

d_roundround_an_roundround_androundround_and_oundround_and_rundround_and_rondround_and_roudround_and_roun

_and_roundround_roundround_andand_roundround_d_and_roundround_roundround_andround_and_rounnd_and_roundround_roundround_a

ndround_and_rouound_and_roundroundround_and_rround_and_roundroundround_and_und_and_roundroundround_and_ro

Page 9: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

cs4fn eecs.qmul.ac.uk 9

Finally, we take the last letter of each of these to give the new phrase.

dd_nnnuaurrd_oo

That is the message we compress usingrun-length encoding. We end up with

2d1_3n1u1a1u2r1d1_2o

It's better than before. Still longer thanthe original, but let's not worry about thatfor a moment. Let's worry about whetherwe can get our original message backgiven all this shuffling! The answer is yes,as long as you know what the last letter ofthe original message was. An easy way todo that is just to add a special characterat the end of the message, then justrotate, sort and compress it with the rest.You can then reverse each step (maybeyou can work out how!)

Why does all this shuffling help, though?The key is that it groups letters that arepart of the same repeated pairs together.By sorting the rotated phrases we aregrouping those versions of the phrase thatstart with the same letter. Now think aboutthe last letters. Because we've only donerotations, they are the letters that in theoriginal came just before the first ones.Take the following phrase starting with 'd'.

d_and_roundroun

It ends in an 'n' because the 'd' wasoriginally in the word 'round', where an 'n'came before the 'd'.

If we look at the other phrases that startwith 'd', we see there are actually threethat end with 'n'.

d_and_roundround_roundround_andround_and_roun

That's because in this phrase, the letters'n' and 'd' appear repeatedly together:twice in the word 'round' and once in'and'. So because there are three n-d pairsin the original phrase, we end up with arun of three 'n's to compress when we takethe last letters.

The same happens with every commonpair of letters. The result is that run-lengthencoding now has lots of runs to work onwhere before there were none.

We still ended up with something longerthan the original though. That's justbecause the phrase was so short. Withlonger phrases it gets much better. Try itfor yourself with the longer fragment:"round and round, round and round." It iscompressed to only 22 characters even

though it is more than twice as long as theshorter one we just looked at. The wholeverse compresses from 131 to 99characters. We are getting a bigimprovement.

With a little bit of computer science wehave shortened a long, boringly repetitivesong. Much better. So why isn't my toddlerimpressed when I sing it? On the otherhand, streaming of movies or music canonly be done quickly enough to play inreal time because the data has beencompressed first. It's therefore the samekind of clever compression that allows himto watch streamed versions of Thomas theTank Engine. So while he may not want tosing a compressed song, he ought to singthe praises of compression algorithms.

Page 10: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

World War II. Steganography has takenmore bizarre forms over the years though– an Ancient Greek slave had a messagetattooed on his shaven head warning ofPersian invasion plans. Once his hair hadgrown back he delivered it unnoticed.

Digital communication opens up newways to hide messages. Computers storeinformation using a code of 0s and 1s.Each 1 or 0 is called a bit.Steganography is then about findingplaces to hide those bits. A team ofPolish researchers led by WojciechMazurczyk have now found a way to hidethem in a Skype conversation.

When you use Skype to make a phonecall, the program converts the sounds youmake to a long series of bits. They aresent over the Internet and converted backto sound at the other end. At the sametime, bits stream back from the personyou are talking to, containing the soundof their voice. Data transmitted over theInternet isn’t sent all in one go, though.It’s broken into packets: a bit like takingyour conversation and tweeting it one lineat a time.

Commando tactics

Why? Imagine you run a crack team ofcommandos who have to reach a target in enemy territory to blow it up – a statelyhome where all the enemy’s generals arehaving a party. If all the commandostravel together in one army truck andsomething goes wrong along the way,probably no one will make it. The missionwould be a disaster. If, on the otherhand, the commandos each travelseparately and meet once they arrive,

the mission is much more likely to besuccessful. If a few are killed on the waythe rest can still complete the mission.

The same applies to a Skype call. Eachpacket contains a little bit of the fullconversation and each makes its own wayto the destination across the Internet. Onarriving there, they reform into the fullmessage. To allow this to happen, eachpacket includes some extra data thatsays, for example, what conversation it ispart of, how big it is and also where it fitsin the sequence. If some don’t make itthen the rest of the conversation can stillbe put back together without them. Aslong as not too much is missing, no onewill notice.

The sound of silence

Skype does something special with itspackets. The size of the packets changesdepending on how much data needs to betransmitted. When someone is talking,each packet they send carries a lot ofinformation. When that person is listeningSkype sends shorter packets from theirend, because they are only transmittingsilence. The Polish team realised theycould exploit this for steganography. Theirprogram, SkyDe, intercepts Skype packetslooking for short ones. When SkyDe findsthose short packets, they are replacedwith packets holding the data from thecovert message. At the destinationanother copy of SkyDe intercepts them,extracts the hidden message and passesit on to the intended recipient. As far asSkype is concerned some packets justnever arrive.

Cryptography is the science of makingmessages unreadable. Spymasters haveused secret codes for a thousand years ormore. Now cryptography is a part ofeveryday life. It’s used by the banks everytime you use a cashpoint and by onlineshops when you buy something over theInternet. It’s used by businesses thatdon’t want their industrial secretsrevealed and by celebrities who want tobe sure that tabloid hackers can’t readtheir texts.

Who called who?

Cryptography stops messages being read,but sometimes just knowing that peopleare having a conversation can reveal toomuch. Knowing a football star isexchanging hundreds of texts with histeammate’s girlfriend suggests somethingis going on, for example. Similarly, theAmerican CIA chief David Petraeus,whose downfall made international news,might have kept his secret and his job ifthe emails from his lover had beenhidden. David Bowie kept his 2013comeback single Where Are We Now? asurprise until the moment it was released.The dramatic surprise helped make thesingle a hit. But the secret could havebeen spoiled months before if musicjournalists had noticed Bowie having moreconversations with his record label.

Sending messagesgets hairy

That’s where steganography comes in –the science of hiding messages so no oneeven knows they exist. Invisible ink is oneform of steganography. It was used, forexample, by the French resistance in

Hiding inSkype

www.cs4fn.org10

Computer science isn’t just about using language, sometimes it’s about losing it. Sometimes people want to send messages so secret that no one even knows the messages exist. A greatplace to lose language is inside a conversation.

Who’d have thoughtthe sound of silencewould be so useful

Page 11: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

A good hiding

There are several properties that matterfor a good steganographic technique. Oneis its bandwidth: how much data can besent using the method. Because Skypecalls contain a lot of silence SkyDe has a high bandwidth: there are lots of opportunities to hide messages. Asecond important property is obviouslyundetectability. The Polish team’sexperiments have shown that SkyDemessages are very hard to detect. As only packets that contain silence are used and so lost, the people having theconversation won’t notice and the Skypereceiver itself can’t easily tell becausewhat is happening is no different to atypical unreliable network. Packets gomissing all the time. Because both theSkype data and the hidden messages are encrypted, someone observing thepackets travelling over the network won’t see a difference – they are all justrandom patterns of bits. Skype calls arenow common so there are also lots ofnatural opportunities for sendingmessages this way – no one is going toget suspicious that lots of calls aresuddenly being made.

All in all, SkyDe provides an elegant newform of steganography. Invisible ink is solast century (and tattooing messages onyour head is very last millennium). Nowthe sound of silence is all you need tohave a hidden conversation.

cs4fn eecs.qmul.ac.uk 11

Page 12: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

www.cs4fn.org12

Umm, ahh…understanding

Computer scientists once believed that ifthey designed better ways for humans tocommunicate with computers (good‘human-computer interaction’) then theywould make it easier for people tocommunicate with each other too (good‘human-human interaction’). But youdon’t necessarily make it easy for twopeople to talk just by making it easy forthem both to talk to a computer. You needto understand what makes humanconversation work and design for that.

Terrible texting

Text messaging is a good example of howthings aren’t always as obvious as you’dthink. The original text messaging systemwas horrible human-computer interaction.It was intended just as a way forengineers to test the connections. Youjust wouldn’t design a real system wherepeople used a numeric keypad to typewords: it’s terrible! Despite that millionsof people used it. In fact lots of peopleactually send more text messages thanthey have face-to-face conversations thesedays. Poor human-computer interactionmade wonderful human-humaninteraction. Why? Because (by accident)texting has just the right properties to begreat at what it’s used for. It doesn’tinterrupt you like a phone or even face-to-face chat, so is great for keeping in touchwhile you are busy. You can also keep

several different chat conversations goingin parallel. Another plus is that texts areshort. Talk to someone and you have to gothrough a lot of social niceties – you cansay goodbye half a dozen times on thephone before you actually manage to putthe phone down on a friend! Texts avoidall that.

Splurging sentences

So what is so subtle about human-humaninteraction? When we talk to people faceto face, we don’t think up wholemessages and then just splurge out thewhole thing (as we do in an email). Watchpeople chatting. Listen for all the ummsand ahs, the pauses, the half saidsentences, the corrections, the “ok”s and“ah ahh”s from the other person thatkeep the conversation going. Realconversations don’t go…

“This trouble I had in understanding notonly what others said to me, but also whatI said to them”

They are more like:You: “This prob…err…trouble I had…”Listener: “uhu”You: “in under umm in under…”Listener: “understanding?”You: “yes”Listener: “go on”…

Meaning in mess

It looks a mess, but it all actually mattersto make conversations work. It’s aboutbeing sure you understand each other.There’s more too. Now look for the nodsand smiles, the blank faces, turns of thehead, the waving hands, the pointing thatgo with all the “umms” and “ahhs” andinterruptions. The listener’s interruptionsshow they are following. Subtle changesin their expression might make yourethink what you were saying. Some ofthat does come across on a small videoimage of a person’s head and shouldersbut not all.

Subtle space

One of the key things missing in a videoconference call is 3-D space itself. Whenpeople are working together on a problemthey use the space around them as part ofthis subtle communication. A person maybriefly glance to another for confirmation:confirmation that comes with a tiny nodof the head. If all you have is a series ofimages lined up on your screen no-onecan tell who is being glanced at in theway you can round a table. Similarlyhuman gestures aren’t just about slidingyour fingers about on a touch-screen. Indeep conversation we make shapes in theair around us with our hands as we talk.Point to that place later in theconversation and people will know whatwe are talking about, just as it can beclear we mean Jo not Laura when we justsay ‘she’.

Good, bad (and ugly?)

All this doesn’t mean video calls arerubbish. It just means you need tounderstand what different technologiesare good and bad at and use them

Video calls have finally made it. No longer a futuristic dream, anyonecan now use Skype. Why bother with face-to-face meetings anymore? Just stay in bed and teleconference in to work! Why can’t lifebe that simple for once? It turns out that face-to-face is still better, atleast part of the time – video streams are still missing somethingimportant.

Page 13: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

cs4fn eecs.qmul.ac.uk 13

appropriately. Email is great for sendinginformation but terrible for anything withemotion – hence the flame wars thatresult. Phone calls are great for one-to-one conversations, but bad if you justwant to communicate a quick messagelike “Sorry I’m running late”. Video callsdo let you see each other’s expressionsand the things you are talking about. Theycan be good for 2-way conversations.What we are still missing though is atechnology that is as good as actuallysitting round a table working as a team: atechnology that doesn’t lose all the messysubtlety of human conversations. Videocalls aren’t it. Maybe you can invent atechnology that is.

This article is based on a keynote talk givenby Pat Healey of Queen Mary, University ofLondon, June 2013. (cs4fn was therewatching it live!)

Page 14: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

‘comments’. Remove the comments andthe recipe will still work. We need a clearway to show when a comment starts andends. We will start them with a specialsymbol ‘/*’ and end them with ‘*/’.

RECIPE Hummus and Tomato Pasta (){/* Serves 2This is a very quick 20-minute afterwork dish.

*/…}

Variable storage

What comes next in a recipe is usually alist of ingredients. The idea is to listeverything you need so you can have it allready before you start. I often have aproblem following recipes, though, as theydon’t list absolutely everything. Mid-recipe I might suddenly find I need afrying pan…when mine is crusted withburnt cheese sauce from last night! Toavoid that, let’s list all the pans we needtoo. For our recipe we need a frying panand a saucepan.

Something used to store things (like pansdo) in a program is called a ‘variable’.Program variables hold things likenumbers. The equivalent of theingredients list ‘declares’ the variables.Declarations give each variable a uniquename used to refer to it and also giveeach a ‘type’ – is it a saucepan or a fryingpan we need? To be clear about when adeclaration ends we add in somepunctuation. Programming languages tendto use a semicolon for that – it’s a bit likea full stop in English.

Saucepan pan1;Fryingpan pan2;

www.cs4fn.org14

Programmers are the master chefs of thecomputing world – except the recipes theyinvent don’t just give us a nice meal, theychange the way we live.

Programs are very similar to recipes. Theyboth give instructions that, if followed,achieve something. There is a differencebetween them, though, and it has to dowith language. When chefs invent recipesthey write them out in human languageslike English. Programmers write programsin special languages. Why’s that? It’s allabout being precise enough to be sureexactly the same thing happens everytime. Recipes are often ambiguous whichis why when I follow one it sometimesgoes wrong. Programs tie down every lastdetail.

Let’s apply some ideas from programminglanguages to making meals. One of myfavourite recipes is a hummus-basedpasta dish (see box) so we’ll use that.

Structure it!

The first thing to notice about a recipebook is there is a clear structure. Eachrecipe is obviously separate from theothers. Each has a title and a briefdescription of how it might be used. Eachhas an ingredients list and then a seriesof steps to follow. Programs follow asimilar structure.

Cookery books use page layout to showtheir structure. Programmers uselanguage: grammar, symbols andkeywords. A keyword is a word that meanssomething special. Once you havedecided a word is a keyword you only everuse it for that purpose.

Let’s invent a keyword RECIPE to meanwe’re starting a new recipe. The only timethat word will appear in our recipes is tostart a new recipe. What follows it willalways be the name of the recipe. We willalso need to know when the name ends.To make that clear we will use a specialsymbol made up of open and closebrackets ().

We also want to be absolutely sure what ispart of this recipe and what isn’t. We willuse curly brackets: everything betweenthe brackets is part of the named recipe.

RECIPE Hummus and Tomato Pasta (){…}

No comment?

Recipes usually include a briefdescription that isn’t part of the actualinstructions. It is just there to helpsomeone understand when you might usethe recipe. Programs have descriptionslike this too. Programmers call them

How is a computer program like a recipe? Paul Curzon explains,and as a bonus, tells you how to cook a quick pasta dish.

A recipe forprogramming

Hummus andTomato PastaServes 2This is a very quick 20-minute after workdish.

Olive oil1 teaspoon of whole cumin seeds1 large chopped onion400g chopped plum tomatoes200g hummus150g pasta

1. Add the pasta to a large pan of boilingwater. Simmer for 10 minutes.

2. Fry the cumin in the olive oil for a fewminutes. Add the onions and frygently.

3. Stir in the tomatoes and the hummusand leave to simmer for 5 minutes.

4. Drain the pasta and serve.

Page 15: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

This says that in the rest of the recipewhen we say pan1 (the variable name) wemean a particular pan: a saucepan (itstype). When we say pan2 we mean aparticular frying pan.

New assignment

We will make a distinction between thingsto hold stuff, like pans (variables) and theactual ingredients that go in them:‘values’. We will also follow the TV chefsand start by setting out all the ingredientsin little dishes at the start so they are athand – and make that part of theinstructions.

We will need to declare a dish to holdeach ingredient, giving its type and givingthe dish a name. At the same time we willsay what should be put in it before therecipe proper is started. We will use an ‘=’symbol to mean put something in avariable (i.e., dish or pan). In programs,this action of putting something in avariable is called ‘assignment’. So, forexample, we will declare that we need adish to hold the hummus (calledhummusDish). We assign 200g ofhummus to it.

Dish hummusDish = 200g hummus;

We are now ready for the recipe proper.We can use assignment as a precise wayof moving things from one place toanother too. So if we say, for example:

pan2 = oilDish;

We mean empty the contents of the dishof oil into the frying pan. Programs areslightly different here, as when they do anassignment they don’t move things fromone place to the other, they copy it. That would be like having a di sh thatautomatically refilled itself whenever itwas emptied.

Often we want to add to whatever isalready in a pan. Programmers leavenothing to doubt and say explicitly that is what they mean:

pan2 = pan2 + onionDish;

This tells us to mix what is in the oniondish with what is in the frying pan, andthen leave the result in the frying pan. Wewill use the + symbol to mean add togetherand stir. (continued on the next page)

cs4fn eecs.qmul.ac.uk 15

Assignment does NOTmove things around,it makes new copies

Page 16: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

www.cs4fn.org16

Methods in mymadness

So far all we’ve done is putingredients in things and copied themaround. To make a meal we need todo various basic cooking things likeheat a pan or drain a pan. Rather thanspell out every step of how you do thatin every recipe, we will use a shorthand. We create mini-recipes that sayhow to do it and just refer to them byname. They are often called ‘methods’by programmers. Each is written outjust like our recipe. In fact to aprogrammer our recipe is a methodtoo. When we want to use it we justgive its name followed by any extrainformation needed. For example toheat a pan, we need to know whichpan, how high a heat and for howlong. We write, for example:

Heat (pan1, medium, 12 minutes);

This format helps make sure we don’tmiss something (like the time forexample). We need similar methodsfor draining a pan and serving themeal. We won’t give the actualinstructions here. In a full programthey would be written down step-by-step too and not left to chance.

Time to do it right

We have come up with a language forrecipes similar to the ones used forprogramming. We’ve used symbols,keywords and very precise punctuation– the language’s ‘syntax’ – to help us

be precise. On its own that’s not enough –each part of the language has to have avery clear meaning too – the language’s‘semantics’. Together they make sure infollowing a recipe we know exactly whateach step involves. There is then less

scope for a cook (or computer) to get itwrong. Computers, of course, have nointelligence of their own. All they cando is exactly follow the instructionssomeone wrote for them (a bit like mecooking).

A recipe forprogramming(continued from page 15)

Here’s what our complete recipe looks like as a program.RECIPE Hummus and Tomato Pasta (){

/* Serves 2. This is a very quick after work dish. It only takes about 20 minutes from start to finish. */

Saucepan pan1;Fryingpan pan2;

/* Ingredients */ Dish oilDish = 1 tablespoon of olive oil;Dish cuminDish = 1 teaspoon of whole cumin seeds;

Dish onionDish = 1 large onion, chopped;Dish tomatoDish = 400g chopped plum tomatoes;Dish hummusDish = 200g hummus;

Dish pastaDish = 150g pasta;Kettle kettle = 500ml boiling water;

/* Cook the pasta */ pan1 = kettle + pastaDish;Heat (pan1, high, 2 minutes);Heat (pan1, medium, 10 minutes);

/* Make the sauce */ pan2 = oilDish + cuminDish;Heat (pan2, high, 2 minutes);

pan2 = pan2 + onionDish;Heat (pan2, medium, 5 minutes);

pan2 = pan2 + tomatoDish + hummusDish;Heat (pan2, low, 5 minutes);

/* serve */ Drain (pan1);Serve (pan1, pan2);

}

Page 17: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

cs4fn eecs.qmul.ac.uk 17

ScillycableanticsAutumn 1869. There were greatcelebrations as the 31 mile longtelecommunications cable was finallyhauled up the shore and into thehut. The Scilly Isles now had a directcable communication link to themainland. But would it work? Severaltests messages were sent and it wasannounced that all was fine. Thejournalists filed their story. Thecelebrations could begin.

Except it didn’t actually work! Thecable wasn’t connected at all. Theship laying the cable had gone offcourse. Either that or someone’smaths had been shaky. The cablehad actually run out 5 miles off theislands. Not wanting to spoil theparty, the captain ordered the line tobe cut. Then, unknown to the crowdwatching, they just dragged the cutoff end of the cable up the beachand pretended to do the tests. TheScilly Isles weren’t actuallyconnected to Cornwall until thefollowing year.

HonkyherringHonkyherringIf you think about it, humans are along tube with legs and arms. Wespeak from our mouths and the otherend of the tube that things come outof, well, that has other uses. Butwhat if emanations from that otherend could be used as a way ofcommunication? There is noscientific evidence to date thathumans use their bottom tocommunicate, despite what youmight think. But fish do, perhaps. ACanadian study showed that herringseem to use the breaking of windunderwater to communicate witheach other, and it wasn’t just gascaused by what they had eaten. It’san odd way to communicate perhaps,but could explain why fish don’t eatbaked beans.

A duck, a horse and a chickenwalk onto a farm… It soundslike the start of a bad joke butit’s actually the start of a bit ofmind mystery as you accuratelypredict the order your spectatorwill line up the animals inadvance. To dig up more onthis fun magic trick, look onthe magazine+ section of ourwebsite, www.cs4fn.org.

Farmingthe future

Page 18: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

18

The last speaker

Why do languages die?

The reason smaller languages die arevaried, from war and genocide, to diseaseand natural disaster, to the enticement ofbigger, pushier languages. Can technologyhelp? In fact global media: films, musicand television are helping languages todie, as the youth turn their backs on thelanguages of their parents. The Web withits early English bias may also be helpingto push minority languages even faster tothe brink. Computers could be a force forgood though, protecting the world’slanguages, rather than destroying them.

Unicode to the rescue

In the early days of the web, web pagesused the English alphabet. Everything in acomputer is just stored as numbers,including letters: 1 for ‘a’, 2 for ‘b’, forexample. As long as different computersagree on the code they can print them tothe screen as the same letter. A problemwith early web pages is there were lots ofdifferent encodings of numbers to letters.Worse still only enough numbers were setaside for the English alphabet in thewidely used encodings. Not good if youwant to use a computer to support otherlanguages with their variety of accents andcompletely different sets of characters. A new universal encoding system calledUnicode came to the rescue. It aims to be a single universal character encoding –with enough numbers allocated for ALLlanguages. It is therefore allowing the webto be truly multi-lingual.

Languages are spoken

Languages are not just written but arespoken. Computers can help there, too,though. Linguists around the world recordspeakers of smaller languages,understanding them, preserving them.Originally this was done using tapes. Nowthe languages can be stored onmultimedia computers. Computers are not

just restricted to playing back recordingsbut can also actively speak written text.The web also allows much wider access tosuch materials that can also be embeddedin online learning resources, helping newpeople to learn the languages. Languagetranslators such as BabelFish and GoogleTranslate can also help, though they arestill far from perfect even for commonlanguages. The problem is that things donot translate easily between languages –each language really does constitute adifferent way of thinking, not just oftalking. Some thoughts are hard to eventhink in a different language.

AI to the rescue?

Even that is not enough. To truly preservea language, the speakers need to use it ineveryday life, for everyday conversation.Speakers need someone to speak with.Learning a language is not just about

learning the words but learning the cultureand the way of thinking, of actively usingthe language. Perhaps future computerscould help there too. A long-time goal ofartificial intelligence (AI) researchers is todevelop computers that can hold realconversations. In fact this is the basis ofthe original test for computer intelligencesuggested by Alan Turing back in 1950...ifa computer is indistinguishable from ahuman in conversation, then it isintelligent. There is also an annualcompetition that embodies this test: theLoebner Prize. It would be great if in thefuture, computer AIs could help savelanguages by being additional everydayspeakers holding real conversations, beingreal friends.

Too late?

The problem is that time is running out.Human standard translation is still a wayoff. Artificial intelligences that can havereal human conversations are an evenmore distant dream. The window ofopportunity is disappearing. By the timethe AIs arrive the majority of humanlanguages may be gone forever. Let’s hopethat computer scientists and linguists dosolve the problems in time, and thatcomputers are not used just to preservelanguages for academic interest, but reallycan help them to survive. It is sad that thelast living creature to speak Atures was aparrot. It would be equally sad if the lastspeakers of all current languages barEnglish, Spanish and Chinese say, werecomputers.

The languages of the world are going extinct at a rapid rate. As thenumbers of people who still speak a language dwindle, the chance of itsurviving dwindles too. As the last person dies, the language is goneforever. To be the last living speaker of the language of your ancestorsmust be a terribly sad ordeal. One language's extinction bordered onthe surreal. The last time the language of the Atures, in South Americawas heard, it was spoken by a parrot: an old blue-and-yellow macaw,that had survived the death of all the local people.

www.cs4fn.org

Time is runningout...by the time theAIs arrive, themajority oflanguages may begone forever.

Page 19: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

cs4fn eecs.qmul.ac.uk 19

A funny thinghappened on theway to the computer

Computer generated jokes can do morethan give us a laugh. Human language injokes can often be ambiguous: words canhave two meanings. For example the word'bore' can mean a person who isuninteresting or could be to do with drilling... and if spoken it could be about a malepig. It's often this slip between the meaningof words that makes jokes work (work thatjoke out for yourself). To be able tounderstand how human-based humourworks, and build a computer program thatcan make us laugh will give us a betterunderstanding of how the human mindworks ... and human minds are neverboring.

Many researchers believe that jokes comefrom the unexpected. As humans we havea brain that can try to 'predict the future'.For example, when catching a ball, ourbrains have a simple, learned mathematicalmodel of the physics so we can predictwhere the ball will be and catch it. Similarlyin stories we have a feel for where it shouldbe going, and when the story takes anunexpected turn, we often find this funny.

The 'shaggy dog story' is an example; it's along series of parts of a story that build ourexpectations, only to have the end prove uswrong. We laugh (or groan) when theunexpected twist occurs. It's like the ballsuddenly doing three loop-the-loops thenstopping in mid-air. It's not what we expect.It's against the rules and we see that asfunny.

Artificial intelligence researchers who areinterested in understanding how languageworks have started to look at jokes as a wayto understand how we use language.Graham Richie is one such researcher, andfunnily enough he presented his work at anApril Fools' Day Workshop onComputational Humour. Richie looked atpuns: simple gags that work by a play onwords, and created a computer programcalled JAPE that generates jokes.

How do we know if the computer has asense of humour? Well how would we knowa human comic had a sense of humour?We'd get them to tell a joke. Now supposethat we had a test where we had a set ofjokes, some made by humans and some bycomputers, and suppose we couldn't tellthe difference? This is called a Turing Testafter the computer scientist Alan Turing. Ifyou can't tell which is computer generatedand which is human generated then theargument goes that the computer programmust, in some way, have captured thehuman ability.

So let's finish with some one-liners (and a test). Which of the following is a jokecreated by a computer program followingRichie's theory of puns, and which is ahuman's attempt? Will humans ormachines have the last laugh on the test?

1) What's fast and wiry?... An aircrafthanger!

2) What's green and bounces?... A springcabbage

Laugh and the world laughs with you, they say, but what if you're acomputer? Can a computer have a sense of humour?

Can you tell whichjoke is the human'sand which thecomputer's?

Find out which was which bygoing to the magazine+ part of the cs4fn website:www.cs4fn.org

Page 20: Clean up your language! - Computer Science for Fun · zombies. They have no mind so no ability to understand meaning. Despite that they act exactly like humans: so much so that there

We all know that eventuallyeveryone dies, but it’s whatwe do with our life thatcounts. Computer scientistsare starting to look at waysthat they can make deathjust that little bit different,reshaping the one fixedpoint in human existence,and sometimes in ratherstrange ways. RIP can gofrom ‘Rest In Peace’ to‘Right, InvestigatePossibilities’!

Twitter from beyond

Social networks are a vital part of manypeople’s lives, but what happens whenyou’re dead? Do your tweets need to stop?Does the world need to lose your views?Well no, according to the LiveOn project. It aims to create an artificial intelligenceprogram that learns how you tweet, and thesorts of things you tweet about, like anddislike, and can continue to mimic youronline presence even after you depart thisearth. As their slogan says, “When yourheart stops beating, you'll keep tweeting”.

RIP = Replicating Individuals Preferences

Grave situations

When Chinese computer fan Hu Chuang died, his parents decided tocommemorate his love of computing in a novel way. His headstone was carved in the form of a computer and monitor. Iteven included a mouse. This isn’t the firsttime that graves have incorporated a loveof technology. There are headstones thatcarry QR codes you can scan to be takento a memorial website to find out moreabout the occupant. But to get even morepersonal, people have been buried withtheir mobile phones. In the days before

Back (page)from the dead

www.cs4fn.orgFor a full list of our university partners see www.cs4fn.org

cs4fn is edited by Paul Curzon, Jonathan Black and Peter McOwan.cs4fn is supported by Google.

wireless, some were buried with phonelines running to their coffins, in case ofpremature burial. They never called backthough. Wonder why…

RIP = Really, I’ve Passed?

Dead actors: I’ll beback!

Today’s computer graphics can help dead actors rise again. Research is being undertaken to generate lifelikesynthespians: synthetic actors who lookand act like the real thing. Using oldmovie footage computer systems can learn the shapes of actors’ faces, theircharacteristic movements and even theirvoice patterns. This process of digitalcloning is often referred to asSchwarzeneggerization, after the idea was first introduced in a book where a customer asked that ArnoldSchwarzenegger be digitally substituted to replace other actors in classic films.There was, not surprisingly, concern abouthow these resurrected characters could beused. The widow of dancer Fred Astaireand the Screen Actors Guild successfullylobbied the Californian senate to pass theAstaire Bill, restricting the use of digitalclones and giving actors legal rights frombeyond the grave.

RIP = Relive Innovative Performances

Google: archive forthe afterlife

We live our lives in the cloud. Our photos,blogs, and so on live on the Internet,protected by our passwords. But whathappens to all of this intellectual propertywhen we die? Google has thought aboutthis. They are providing a service that willsend your login and password details to achosen person in case your online activitystops for too long, which they considerindicates you are dead. This way someoneelse can look after all your lovely imagesand ideas, keeping them safe for thefuture

RIP = Repurpose Intellectual Property

Speaking of thedead

Alexander Graham Bell, widelyrecognised as the inventor of thetelephone, has found his voice at last,over a hundred years after his death.Bell recorded himself on a waxcylinder reciting lines fromShakespeare and delivering what hemay have considered his catchphrase:"Hear my voice, Alexander GrahamBell". The recording method involvedspeaking loudly into a cone that at thefar end had a needle in contact with arotating cylinder covered with soft wax.The vibrations of the voice, caught andamplified through the cone, causedtiny bumps to be impressed in thewax, capturing the sound but alsoallowing playback. The cylinder wasrotated and the bumps, via the needle,caused appropriate sound in the cone.However wax decays over time andBell’s words were impossible to recoverusing anything that contacted thebrittle wax. The solution employed bythe Smithsonian Institution was to usea laser to read the bumps and turnthem back into sound, exactly thesame technology as is used in DVDplayers.

RIP = Repeat In Person