Secret Writer’s Society, the best way to swear at children in 1998 Educational category

Title screen from Secret Writer's Society

Panasonic Interactive Media’s game Secret Writer’s Society was supposed to teach kids how to write well. Instead, it became infamous. The game had a text-to-speech feature that would read back what you wrote, and under the right circumstances in the Macintosh version of the game, it would read a list of obscenities instead.

“Computers are revolutionizing education, sometimes in surprising ways. Now there’s software that can teach kids how to cuss like a drunken stevedore,” raved Robert Cwiklik for the Wall Street Journal.1

According to PIM marketing manager Kari Gibbs, the company had begun replacing copies of Secret Writer’s Society by June 17, 1998,1 four months after it originally shipped on February 10.2 Panasonic officially blamed the issue on “an undetected bug” that would accidentally read words from the program’s language filter if the computer was slow or having memory issues.1,3

But there was another story. Andrew Maisel, who was the first to discover the supposed glitch and reported it on his educational software review website SuperKids, says he reproduced it on “healthy Power Macs with lots of memory.”3 And in a shocking, hilarious twist, anti-corporate activist group RTMark claimed in October 1998 that it was a work of internal sabotage. According to their statement, an anonymous programmer contracted by Panasonic said they were trying to call attention to the dangers of parents handing their responsibilities to a computer game. “Letting a third-rate piece of software take over for you is wrong because it violates that contract,” they said. “What I did isn’t a crime. The crime is letting profits get in the way of education.” RTMark said they awarded the programmer $1000 for their action.

Despite this, Panasonic insisted that the rogue program was still just the result of a bug. Elizabeth Olson, Panasonic’s communications manager, told The Independent in November 1998 that “To our knowledge there is no truth to this claim. [RTMark] seem to be claiming responsibility for something they didn’t have anything to do with.” (RTMark’s Ray Thomas also told The Independent “It could be that they really do think it’s a bug.”) Either way, it did damage, and when Panasonic Interactive Media was shut down months later in March 1999, Consumer Electronics blamed Secret Writer’s Society for harming the group’s reputation.4

Secret Writer’s Society was quickly forgotten after that – probably to Panasonic’s relief – and has been missing ever since… until I managed to get a copy this week. And yes, it’s the version with the swears.

Screenshot from Secret Writer's Society

Inside the Secret Writer’s Society mission control

The game is series of seven writing lessons. They’re framed as tests for your induction into the Secret Writer’s Society, a mysterious, underground club of writers. To entice children to think of this like a secret mission rather than writing instruction, the full copy of the game came with a society membership card and spy-style writing supplies like “decoder pens.”2

All the bonus accessories can’t disguise that Secret Writer’s Society really is a rote exercise in formal writing structure. It teaches punctuation, capitalization, ordering sentences in a paragraph, and other functional parts of writing, explained with crummy School House Rock-style music videos, but there’s no imagination here. Programs like MECC’s Storybook Weaver or Edmark’s Imagination Express have colorful pictures from fantastical settings that inspire kids to dream up stories to tell; in comparison, this game doesn’t get to the creative writing prompts until the final lesson, after 20 minutes of punctuation drills, and even then, the focus is on proofreading. It teaches you how to write but not why to write. The membership card would’ve been cool, but it might not have been inspiring.

There are two places in the game for freewriting, the final lesson and a diary feature. This is where the bad stuff happened.

Clicking the Read button will make the program read back what you wrote. On the Macintosh version of the game, if you interrupt by click the Read button again… this happens.

It’s a lot subtler than expected. There’s not a whole stream of obscenities. It just reads a few snippets from the swear filter list. It’s a pretty long list, somewhere around 100 words with variations. Any words written in all caps are spelled out instead. (Yes, as you hear in the video, one of the words is “PENUS,” just in case a kid spelled it wrong.)

The CD-ROM label says this copy of Secret Writer’s Society is Version 2.0, and a few files on it were modified after the game’s original February release date. Maisel’s report on SuperKids said the corrected replacement copy is Version 3.0. So that means the game was revised and was re-released at least once before anyone noticed the problem, which is incredible. The Strong Museum of Play in Rochester, NY has a beta version of the game dated November 3, 1997; earlier this week, I visited the museum and played it with the help of digital games curator Andrew Borman, and we found that the game didn’t have a swear filter at all. So the filter – and the related problem – were both very late additions in development.

(The game had a fourth version released by 99V Phonics Reading & Writing in 1999; the company, now known as Learning Upgrade, says on their old website that they owned the trademark to Secret Writer’s Society, so they must have acquired it after Panasonic Interactive Media closed.)

So what’s happening here? When you click the Read button in the Mac version of the game, it pauses for a few seconds to load the text. If you click it again, the game will start loading the text again. It will keep reading in the meantime, but as soon it hits any punctuation, it will begin reading from a random point in the swear filter list instead until the text finishes loading. If you wrote a very short paragraph, you might hear a single letter; if you wrote more, you’ll hear many more forbidden words. If it’s related to the game’s loading speed, this would explain why Maisel reported that this only happened with a long passage and why Panasonic says the issue only occurred on slower computers with memory issues.

That indicates it could have actually been a bug, but it doesn’t explain why on earth it’s reading random words from the swear filter list after hitting a punctuation mark. That seems too weird, too covert, and too specific to be anything but malicious.

To be honest, though, I would believe if Panasonic concluded this was actually a bug, because the game is kinda shoddy. It has trouble saving diary entries and keeping track of what user icon you selected, there are occasional error messages from Macromedia Director, and the Mac version accidentally included a random desktop file. It seems plausible that Conexus, the company that developed the game for Panasonic, could have messed up implementing the swear filter this badly. If an act of sabotage really did make it into the final product, it’s only because the game was so slipshod that nobody noticed.

Which goes back to RTMark’s statement. RTMark claimed the programmer was concerned that parents were willing to let software be a substitute for meaningful attention to their children. It’s a problem that continues to be relevant as algorithms like YouTube’s recommendation engine control more of our lives and become parenting concerns. In the case of software as rough or with as little creative imagination as Secret Writer’s Society, can you blame them for being skeptical?

UPDATE (3/15, 6/26): On closer inspection, it looks like a bug. Readers have pointed out that this could be a memory management issue, and in the comments below, tomysshadow couldn’t find evidence of tampering in the Macromedia Director Lingo code. Based on how close together the text passage and the swear filter are kept in the program’s memory, the way the Macintosh version re-loads the text (pausing the program while continuing to read) may cause it to read from the wrong places in memory.

Panasonic’s Olson said producer Makoto Morise implemented the swear filter, and although the company thought they had tested it, “evidently we didn’t test it well enough.” Since the swear filter was a late addition, that sounds plausible. If sabotage was involved, it’s possible that someone intentionally ignored or un-fixed the bug, but there’s no way to confirm that. RTMark could’ve made that all up too, as they have a history of doing. Either way, it’s quite an error.

UPDATE (7/12): RTMark co-founder Igor Vamos confirmed to me via email that this really was a bug and not sabotage. Vamos said that “The bug had such a deliberate appearance; it would have been a crying shame to not pile on with additional layers of provocative story.”

So there we have it! There was no anonymous programmer, and their statement was hoax. It was, instead, just the absolute worst bug ever in an educational game, so bad that it forced the developer to shut down. Hilariously, that actually reinforces RTMark’s point about not trusting a poorly made educational program to teach your children.

I’ve updated some of the language in this post to reflect that their story was fabricated. Thanks to Vamos for confirming this – and for everyone who analyzed the program to reveal there was no evidence of tampering.

Download

In the interest of preservation, I have uploaded Secret Writer’s Society Version 2.0 to the Internet Archive.

Additional References

1. Cwiklik, R. (1998, June 17). ‘Honest, mom, I don’t even know what those @$%& words mean‘. The Wall Street Journal, p. B1. Retrieved from https://search.proquest.com/docview/1699336205

2. Panasonic Interactive Media. (1998, Feb. 10). Psst…Can You Keep a Secret? Panasonic Interactive Ships “Secret Writer’s Society” [Press release]. Retrieved from https://search.proquest.com/docview/447002290

3. Panasonic yanks kids’ program with curses. (1998, June 26). Communications Daily, 18(123). Retrieved from Factiva

4. Panasonic folds media group. (1999, March 1). Consumer Electronics. Retrieved from LexisNexis

5 comments

  • Magnifai

    Thank you so much for posting this game

  • tomysshadow

    So, I’ve actually written a Lingo decompiler with a couple people and thought it’d be a fun exercise to see what’s going wrong. It’s very primitive though, so at points I can’t tell what the code is actually supposed to say.

    Here’s how the checkBadWords handler is decompiled, where field(“badwords”) will return a string with each bad word separated by carriage return, and tString is the diary message typed in, and this handler returns the string that is directly fed into the TTS voice:

    on checkBadWords(tString)
    tBadWords = field(“badwords”)
    tNewString = “”
    tNumOfWords = the number of words in tString
    index = 1
    repeat while index 0 then
    delete char 1 of tWord
    end if
    end repeat
    tLen = the number of char in tWord
    if tLen > 0 then
    repeat while not isChar(tWord.char[the number of char in tWord])
    delete (the number of char in tWord) of tWord
    end repeat
    end if
    index = 1
    repeat while index = 65 and charToNum(tChar) = 97 and charToNum(tChar) = 48 and charToNum(tChar) <= 57 then
    return(1)
    end if
    end if
    end if
    return(0)
    exit
    end

    So what I think this is intended to do is remove any punctuation from the beginning or end of the word and then check if the word is on the list of bad words, and if it is don't add it to the output string. I don't see any immediate issue with this code, since remember, none of the bad words have punctuation in the middle.

    Maybe, if I had the patched version, it could be compared side by side. Just thought it'd be fun to take a look at the inner workings of the bug. If a programmer did sabotage this on purpose, the code to cause it doesn't stick out.

  • tomysshadow

    It seems my code from before got mangled. Here it is on PasteBin:
    https://pastebin.com/fYzaCvdu

  • Phil "Shadsy" Salvador

    Whoa, thanks for the detective work! It’s interesting to see how that’s handled. This seems to back up the idea that the bug (intentional or not) would be in memory management and not the scripting.

    There are a few libraries that still carry Version 3.0 or 4.0. It might be possible to get a copy from them to compare what changed…

  • NickolasUkraine

    This is how 2 abuse your friends. With this thing
    *doing a little trick* COMPUTER: A** a** p**** a** p**** a**. FRIEND: Wot?

Leave a Reply

Your email address will not be published. Required fields are marked *