Have you heard of that famous six-word story attributed to Ernest Hemingway?
{(live: 2s)[
(show: ?story)
(stop:)
[[What story?|The Text]]]}This one:
{(live: 1s)[
(show: ?story)
(stop:)
<!-- Set the text to show -->
(set: $typewriterText to "For sale: baby shoes, never worn.")
<!-- Create a variable to track the position within the $typewriterText string -->
(set: $typewriterPos to 1)
<!-- Create a hook to hold the typed text -->
|typewriterOutput>[]
<!-- Set a delay of 40ms seconds per loop -->
(live: 40ms)[
<!-- Add the next character to the hook -->
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
<!-- Update the position -->
(set: $typewriterPos to it + 1)
<!-- If it's gone past the end, stop -->
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 5s)[
(show: ?story)
(stop:)
[[Well, now I have.|The Challenge]]]}It's about as brief a story as you'll ever find.
{(live: 2s)[
(show: ?story)
(stop:)
But maybe we can make it even //more// efficient.]}
{(live: 4s)[
(show: ?story)
(stop:)
Can any of the words be cut?]}
{(live: 6s)[
(show: ?story)
(stop:)
[[Let's test.|Test Main Page]]]}What will you remove?
{(live: 2s)[
(show:?story)
(stop:)
[[For]] [[sale]]: [[baby]] [[shoes]], [[never]] [[worn]].]}It becomes a hilariously shitty ad if you cut “for.”
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "Sale: baby shoes, never worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 4s)[
(show:?story)
(stop:)
Well, I'd hope they were never worn if they're going on sale.]}
{(live: 6s)[
(show:?story)
(stop:)
That “for” is integral to making the story personal instead of institutionalized. With it, we don’t have a story about a store doing what it does every day; we have a person doing something s/he might not normally do, and announcing it for all to hear.]}
{(live: 8s)[
(show:?story)
(stop:)
We have, in effect, a story that demands to be told.]}
{(live: 10s)[
(show: ?story)
(stop:)
[[Cut something else.|Test Main Page]]]}Without “sale,” you don’t have a sentence.
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "For: baby shoes, never worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 4s)[
(show: ?story)
(stop:)
...Yeah, we should hold on to that word.]}
{(live: 6s)[
(show: ?story)
(stop:)
[[Cut something else.|Test Main Page]]]}Remove “baby,” and you have a yet more boring advertisement, somehow duller than [[the first one we created|For]]:
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "For sale: shoes, never worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 4s)[
(show: ?story)
(stop:)
You are left with the business of every shoe store on earth. There’s nothing to it.]}
{(live: 6s)[
(show: ?story)
(stop:)
So “baby” can’t be discarded.]}
{(live: 8s)[
(show: ?story)
(stop:)
[[Cut something else.|Test Main Page]]]}What if you cut “shoes?”
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "For sale: baby, never worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 5s)[
(show: ?story)
(stop:)
Um...]}
{(live: 7s)[
(show: ?story)
(stop:)
[[What's the issue?|Interpretation Part 1]]]}Cutting “never” makes the story terribly mundane. It’s not even a story at that point.
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "For sale: baby shoes, worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 4s)[
(show: ?story)
(stop:)
Rather, it //is// a story,]}{(live: 4.5s)[
(show: ?story)
(stop:)but not a particularly good one.]}
{(live: 6.5s)[
(show: ?story)
(stop:)
“Time has elapsed. The end.”]}
{(live: 8.5s)[
(show: ?story)
(stop:)
Fine, then. We must conclude “never” is essential.]}
{(live: 10.5s)[
(show: ?story)
(stop:)
[[Cut something else.|Test Main Page]]]}Take away “worn,” and you have... {(live: 2s)[
(show: ?story)
(stop:)An incoherent statement.]}
{(live: 4s)[
(show: ?story)
(stop:)
For sale: baby shoes, never.]}
{(live: 6s)[
(show: ?story)
(stop:)
Though I suppose if we are allowed to retool the punctuation, something defiant emerges:]}
{(live: 8s)[
(show: ?story)
(stop:)
(set: $typewriterText to "“For sale: baby shoes? Never!”")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 10.5s)[
(show: ?story)
(stop:)
Alas, incision alone is our method; therefore, “worn” must also remain.]}
{(live: 12.5s)[
(show: ?story)
(stop:)
[[Cut something else.|Test Main Page]]]}{(live: 1s)[
(show: ?story)
(stop:)
Who wears a baby?]}
{(live: 3s)[
(show: ?story)
(stop:)
Shit, who intends to buy one //in order to wear it//?]}
{(live: 5s)[
(show: ?story)
(stop:)
In the right – or wrong – mindset, you’re left with a scene of horror. A modern Gothic masterpiece. The shortest fright ever written.]}
{(live: 7s)[
(show: ?story)
(stop:)
[[Sure, why not.|Interpretation Part 2]]]}{(live: 1s)[
(show: ?story)
(stop:)
I now wonder whether you could win a short horror competition off the allusion alone if you were to remove “shoes” from the text.]}
{(live: 3s)[
(show: ?story)
(stop:)
Would the recognition be sufficient to carry the narrative, and propel it into scary territory?]}
{(live: 5s)[
(show: ?story)
(stop:)
[[Let's not get ahead of ourselves here.|Interpretation Part 3]]]}It’s enough to make one reconsider the original text:
{(live: 2s)[
(show: ?story)
(stop:)
(set: $typewriterText to "For sale: baby shoes, never worn.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
]}
{(live: 5s)[
(show: ?story)
(stop:)
It could be a sequel,]} {(live: 6s)[
(show: ?story)
(stop:) now that we know what became of the baby.]}
{(live: 8s)[
(show: ?story)
(stop:)
[[Dude, what the fuck.|Interpretation Part 4]]]}{(live: 1s)[
(show: ?story)
(stop:)
Conversely, what if the intention was for “baby” to be a material adjective?]}
{(live: 3s)[
(show: ?story)
(stop:)
Like]} {(live: 4s)[
(show: ?story)
(stop:)“suede?”]}
{(live: 6s)[
(show: ?story)
(stop:)
[[You're scaring me.|Interpretation Part 5]]]}{
(set: $typewriterText to "...Well.")
(set: $typewriterPos to 1)
|typewriterOutput>[]
(live: 20ms)[
(append: ?typewriterOutput)[(print: $typewriterText's $typewriterPos)]
(set: $typewriterPos to it + 1)
(if: $typewriterPos is $typewriterText's length + 1)[
(stop:)
]
]
}
{(live: 2s)[
(show: ?story)
(stop:)
I refuse to believe Hemingway didn’t consider that interpretation when writing it.]}
{(live: 5s)[
(show: ?story)
(stop:)
I mean, he could have clarified by writing “baby’s shoes” instead.]}
{(live: 7s)[
(show: ?story)
(stop:)
But he didn’t.]}
{(live: 9s)[
(show: ?story)
(stop:)
[[Yeah, how about we stop with this. Cut something else.|Test Main Page]]]}{(live: 1s)[
(show: ?story)
(stop:)
<span style="font-size: 300%">WORKSHOP</span>]}
{(live: 2s)[
(show: ?story)
(stop:)
By Lex Joy and Alex Rocke]}
{(live: 3s)[
(show: ?story)
(stop:)
[[Begin.|Start]]]}