by Rick Atkinson

The concluding volume of Rick Atkinson’s biography of the US Army in the Second World War shares many of the strengths of its predecessors: generosity, vision, and expanse. This volume covers the campaign from Normandy to Berlin, a story now so familiar and so heavily fictionalized that some historical episodes, such as Patton’s ill-fated and ill-advised effort to rescue his captured son-in-law, Lt. Col. John Knight Waters, are confusing to read because we know the fiction so well.

What made the first book, An Army At Dawn, so compelling was that it saw the flaws and errors of the new American army so clearly, and described them so well. There’s less of that here, in part because it’s hard to see problems in the glare of victory. When an army is losing narrowly, the blunders and missed opportunities are clear. When it’s winning, no one notices lapses in training and attention.

One thing that’s getting hard to appreciate is the scale of logistics in WW2, all managed without calculators or computers. The Army was running a supply operation with 800,000 SKUs, all shipped overseas at enormous expense, and any of which might be urgently needed almost anywhere. Sorting this out would have been hard enough if there hadn’t been a war on; the story of this success is less fun than it might have been because the leadership of the supply operation was unpleasant and a good deal of the day-to-day operations were, perhaps inevitably, corrupt.

Nov 16 1 2016


Tinderbox currently has 1,109 tests that are run just about every time I make a change. Because they’re run so often, it’s important that they run quickly. After speeding up two of the slowest tests, I took inventory; here are some observations.

  • The whole suite runs in about 19sec, so the average test takes 17ms. Half the tests take less that 15msec.
  • The slowest test right now tests the badge menu and takes 387msec.
  • A rule of thumb holds that tests ought not to take more that 100msec. Thirteen tests miss that target.
  • Four of the slow tests are slow because they involve the file system; for example, that slow badge menu test build a badge menu by looking for various directories of badge images.
  • Two of the slow tests build an entire text window. That’s probably not appropriate for this kind of test.
  • Several of the slow tests involve asynchronous tasks running on other threads. These tests fail if the job doesn’t get done on time and use a naive approach that waits the allotted time and checks whether the task was finished. These could be rewritten more intelligently.
  • 7 of the 25 slowest tests involve a new technique that Tinderbox 7 will use to improve performance in Tinderbox maps.
  • One of the slowest tests turned out to be an old relic that did nothing useful.
Oct 16 31 2016

Key West Luck

by Laurence Shames

I heard Shames give a reading, ages ago, at a Miami Book Fair where I was on a panel about hypertext fiction. He’s a very impressive reader, and this is a funny but impressive book.

Phoebe has purchased a snow cone truck, which would be a good thing to have in Key West except that she bought it on contract from a sleazy guy who is out to steal her down payment and repossess the truck before the tourist season gets going. He is going to succeed. Meanwhile, a bunch of mob guys – some too young, some too drunk – are trying to smuggle a valuable paper out of Havana. All of this is witnessed a bicycle tour guide who likes Phoebe, and a pair of homeless drifters who live in a derelict hot dog truck.

John Gruber correctly excoriates software designers who believe that users are stupid.

The fundamental problem with most designers of complex systems intended for mass market use is that they decide to hide complexity. They won’t admit it — they’ll deny it even — but it’s because they’re disdainful of their users. They think their users are stupid, so they need to present them with a design for stupid people. If they weren’t stupid they wouldn’t be confused, right?

Gruber is not wrong, but he misses three important phenomena.

Developers are not children. This should be obvious, but a generation of management gurus have insisted – often abetted by designers themselves – that developers are childlike naifs whose enthusiasms must be restrained. This addressed a perceived problem in UI design in the 1980s, one that has been settled for eons everywhere beyond the swamps of the EMACS/vi religious wars, but persists because it feeds the vanity and corporate ambitions of some managers. Developers don’t really believe that users are idiots.

Then again, it’s not unreasonable to believe that users really are stupid. Mass-market software designers can’t talk to all the users; if they did, they wouldn’t have time for design. So lots of experience is simply invisible to designers.

Good experiences are especially invisible. First, when things go right, people smile and get on with their work. If they ever do tell the company about the good experience, management is going to say “thank you” and pocket the credit. Nobody’s going to tell the designers.

Bad experiences sometimes penetrate. Two kinds of voices are especially likely to be heard. First, as we’ve seen in this election, trolls will be heard because being heard is what trolls do. Second, the lonesome and the desperate are likely to get through whatever obstacles the bureaucracy puts in their way. This is a constant that runs through all kinds of software; you can be working on scientific software used exclusively by quantum mechanicians, but even among brilliant physicists you’re going to find some lonely people and some people who've just had everything blow up in their face and intend to blame it on you. So, these are the voices that software designers tend to hear, and in time it’s easy to believe that The Audience is all like that.

A little later, Gruber does get carried away.

If people are confused with a design, the problem is with the design, not with the users.

Sometimes, the design is the problem. Sometimes, it really is the user.

Sometimes, the problem is the problem. Some problems are hard. Long division is, let’s face it, a mess. Quantum mechanics has some nifty moments, but it’s a lot to wrap your head around, too. Kinematics – figuring out how to move a robot arm from here to there – is really hard; it shouldn’t be, but just look how much trouble babies have figuring it out. We can make easy things easy and hard things as simple as we can make them, but that’s all.

Sometimes, software is confusing because the problem is confusing. It’s a mad world.

We’re reading a lot of books and seeing a lot of movies these days about dead children. Mia is young, beautiful, talented, and madly in love. She’s about to be admitted to Julliard. A car accident intervenes.

We’ve also got The Fault In Our Stars, Allegiant, Me and Earl and the Dying Girl, and I don’t know what else.

We’ve had similar outbreaks before. In the 1980s, we killed a lot of kids in horror movies and thrillers: Jaws, Nightmare on Elm Street, all the slasher movies. But those were about fear and resentment of teenagers, about old folks getting revenge on kids who dared to use those excellent low-mileage bodies.

This is different, I think. None of these kids does anything wrong, or even mildly transgressive; Mia’s fatal mistake is to go along with the family on an outing instead of rebelliously pouting at home. Tris in Divergent was asked to express her true nature, answered honestly that she was dauntless, and she was not wrong. In The Fault In Our Stars, Hazel Lancaster has metastatic thyroid cancer. It’s not their fault.

If the dead children of the 80s were an expression of generational resentment, Archie Bunker’s imagined revenge for losing the arguments on civil rights and Vietnam, I guess the dead children of the teens concern global warming, ecological catastrophe, and the sense – shared I guess by boomers and millennial – that in the long run we’re all dead and they don’t make “long” runs like they used to.

One reason I notice this is I’ve just finished a big hypertext fiction, Those Trojan Kids, based on The Trojan Women. It’s set in an elite boarding school in a contemporary, post-colonial, occupied country. Bad things happen after the fall of Troy, and sometimes they happen to kids. I spent a lot of time trying to write around and through this. So, I think, did Seneca.

by John Berendt

I was in Savannah recently. Linda was giving a conference lecture for the Textile Society of America, which meant I could have a trip without much cost and see a city I’d never visited. Tourist Savannah is dominated by this book in a way you don’t often see these days; even the rural New Zealand focus on The Lord Of The Rings is really about the movies, not the books. It was time to revisit the book.

Time has been kind to this 1993 nonfiction account of Savannah society and its tribulations. Berendt was ahead of the curve in his (fairly) sympathetic account of the transexual performer, Lady Chablis, and more broadly in his treatment of gay sex as simply another colorful thing. In technique, this book broke new ground, but that ground is now shadowed by Erik Larson’s more ambitious Devil In The White City.

Berendt’s attention to race is split between the radically-transgressive Chablis and a radically-retro voodoo practitioner; there’s no voice like that of the (superb) guide at Savannah’s Ralph Mark Gilbert Civil Rights Museum, who was careful to place the city’s famous black boycott as a generous gift from the black community to the nation. “We didn’t need those downtown department stores,” she reminded us, and the old ladies in the tour group with me – all black – nodded in agreement and said “No, ma’am.” “We had a thriving black business community right here: shops, lunch counters, banks. We had it going. But there was the principle of the thing.”

During the trip, we took out one day and worked the Hillary Clinton booth at Savannah’s Gay Pride. Things change. Still, it’s a good book.

Howard Oakley continues his wonderful series on using Storyspace to craft an interactive nonfiction hypertext on the history of painting. The latest installment, Sidethreads and Projections, dives into one of the central challenges of hypertext rhetoric: distinguishing between a link that represents a brief interjection or that offers a minor clarification, and a link the represents a major departure. Lots of thoughtful discussion, with plenty of screenshots to help beginners.

Sidethreads and Projections

by Lene Kaaberbøl and Agnete Friis

A Danish nurse-procedural: an old friend of Nina Borg asks her to pick up a parcel from a locker at Copenhagen’s central rail station. The parcel turns out to be a suitcase containing a naked 3-year-old boy who is unconscious and who, when he wakes up, doesn’t speak Danish. We are going to demand a good explanation from our old friend, but by the time we catch up with her, she’s been brutally murdered. A very interesting exploration of the mystery-thriller from the point of view of a wonderful (and bipolar) protagonist.

Storyspace in Ukranian

The Storyspace web page in Ukranian.

Translated by Anna Matesh.

Filmmaker Virgil Widrich (Wikipedia, IMDB) writes:

Just wanted to let you know that I wrote a feature film with Tinderbox. 5 years, 1000 pages. Then it came down to 100 pages in the final version….. It is quite a hyperlinked story.

The film, Night Of 1000 Hours, will have its US Premiere on October 21 at the Chicago Film Festival.

Tinderbox At The Movies

Interesting interview, too.

The research was absolutely endless, because we needed iconic images which audiences could immediately classify according to period. With the help of a computer program I drew up a family tree containing 400 members of the family. All of them, even if they were just extras or weren't even visible at any point, had a name and dates of birth and death, so we could also work out the style of clothing they would have worn when they died.
Oct 16 12 2016


by Ottessa Moshfegh

Shortlisted for the Booker Prize, this novel takes a long time to get going and, when it finally does move beyond exposition, it heads for places that are neither pleasant nor surprising.

Eileen is twenty four, she lives in a depressing small town in central Massachusetts with her father. He’s an alcoholic ex-cop, and Eileen she does clerical work in a private reformatory. The prose is solid and unshowy. So is Eileen, when she’s not enacting perversity.

I’d always believed that my first time would be by force, Of course I hoped to be raped by only the most soulful, gentle, ­handsome of men, somebody who was secretly in love with me–Randy, ideally.

I suppose one’s reaction to the novel depends on whether you regard Eileen’s attitude as charming or simply dense. I’d have bailed on this book without the prize nomination, and I’d have bailed again if not for the terrific reviews. I think the book and I got off on the wrong foot.

Oct 16 4 2016


It’s important to follow through and to play hard through the whole game, but right now it looks like we’re going to win. Perhaps the United States won’t be governed by a narcissist brigand after all.

Can we take a moment to think about what comes next?

  1. ImWithKer. Josh Marshall started a movement to take back our symbols from our new Nazis. Pepe the Frog is the mascot of the racist alt-right, but we have had a better frog all along: we have Kermit, the canonical pluralism frog.
His character embodies the generosity of spirit, perseverance, collegiality, and openness to introspection and melancholy that are ingredients of any open, free society whereas Pepe embodies the sadism, cruelty, and the lust for domination … that are the makings of autocracy, dehumanization and finally the love of death.

Besides, Kermit is able to talk openly and honestly about race in America. It’s not easy being green.

We’ve got to get out of this place. Trump has already done immense damage to the country. Racism and anti-Semitism are out of the box again. Any black teenager who is pulled over for a traffic stop must be painfully aware that his life may be over. Quietly protesting the National Anthem is as controversial again as it was when we did it in 1968, and again the loons want us to love it or leave it. Twitter is filled with anti-Semites, the right-wing loons now run Wikipedia, right-wing nationalists are resurgent in Germany, Greece, France, the UK, Poland, Hungary, and Russia. I’m not alone in being shocked by the anti-Semites whom Trump has brought out into the open: a common theme of my Twitter feed is people who, for the first time, feel unsafe in the US.

The pardon. One of the worst ideas of the Trump campaign is “Lock her up!”, the stupid chant that calls for the conversion of the United States into a police dictatorship where political rivals are incarcerated or killed. Yet, Trump himself is in a good deal of legal jeopardy: charges of tax evasion, mail fraud, securities fraud, and espionage are all entirely plausible.

I think Ford’s pardon of Nixon was a mistake, but under the circumstances I’m not sure that a long series of prosecutions of a former Republican nominee will be good for the country. It’s possible that a plea bargain or just a preemptive pardon would avoid establishing the expectation that losers will be prosecuted. (Our founders knew their Roman history and did their best to avoid this scenario, one that – Aaron Burr excepted – is completely unprecedented.)

The punishment. After this trouncing, of course, Trump’s political career will be over. What are we going to do about his alt-right loons and goons? And what are we to do about the ruthless Republicans who supported Trump as if he were perfectly normal?

  • Politicians and pundits who openly endorsed Trump should be disqualified for twenty years. If they do write or run for office, they should receive laughter and scorn. I’d like to say “forever,” but that’s too harsh on younger politicians. Casual sympathizers can be excused more easily, but those whose business it was to know better, and who ignored their conscience, should not be trusted with public office or employment.
  • Those who supported and encouraged the racism and anti-Semitism of the Trump campaign should be disqualified, period. We’re beyond having a conversation. Polite reminders that civility is a good thing aren't enough. We’ve come too close this time, and too much is at stake. Next time, it’s going to be fire: let’s make sure there is no next time.
  • Institutions that have profited from recruiting and cosseting Nazis to sell ads (Reddit, 4chan, 8chan) or to exploit their traffic to solicit donations and seek grants (Wikipedia) must be forced to end their profiteering. Ending irresponsible editing is one solution: people should take responsibility for what they say. Strict liability for hate crimes might do the trick: if a site harbors an anonymous forum that plans and carries out political violence, the site should be liable for the crimes who perpetrators is protects. Other legislative and regulatory actions might work. It has to be stopped.
Oct 16 1 2016

Yes, Please!

by Amy Poehler

An amusing memoir by a still-young comic. “Yes, please!” is her recommended answer to just about everything, and she is not wrong. Some of this book is pep talk for the not-quite-young, assurance that forty isn’t the end of the world or even the end of sex. A lot of it is worrying about work and kids. None of this is exceptional, though if you like Poehler it may sound better coming from her. The account of trying to get by as a scrounging actor in a pick-up Chicago improv company, on the other hand, is terrific and it’s something you can’t find everywhere. It’s a hard slog, learning to be funny.