Group blog

Today at our weekly Future Reality Lab meeting I proposed that we all start a group blog. The idea is that we do a round-robin style of post.

On any given day, one person is responsible for putting up a single post, which can be on any topic related to what we’re doing at the lab. Then the next day another person posts, and so on, in a fixed cyclical order.

This arrangement gives everyone an equal opportunity to contribute. Since there are about a dozen people in our group, everybody will post about once every two weeks.

If they wish, people can choose to spend a lot of time on a post, perhaps preparing materials or demo videos days earlier. Or they can just wing it, and jot down their impression of things on that particular day.

The goal is to get a steady rhythm going of telling the world what we’re up to, without requiring any one person in our lab to do too much of the work. Also, of course, the hope is to get a nice diversity of viewpoints.

It was easy to convince our lab’s denizens that this would not be too much work. After all, they know someone who has been blogging every single day for more than ten years, all by himself. 🙂

Rubber bands and chewing gum and fractal programming

I am currently working on a fairly extensive procedural animation system. That means there are a lot of different pieces which need to work together.

My procedurally animated characters need to step properly when walking, to correctly turn and look at things, sit down, stand up, reach for objects, pick those objects up and put them down again. All of which needs to happen in response to simple user directives.

The characters also need to be biomechanically reasonable. For example, when they stand and walk, their weight needs to be centered over their feet. And while all of that is going on, the characters should properly convey subtleties of mood, personality and intentionality through their shifting facial expressions and body language.

Like I said, lots of pieces. When I implemented my early prototype, I put in simple placeholders for some of those pieces — the algorithmic equivalent of rubber bands and chewing gum — and that was ok.

But now that the system is getting more sophisticated and I am demanding more of it, some of those simple placeholders are holding everything back. So in various parts of the system I need replace three or four lines of code that sort of worked by an entire carefully implemented subsystem which might take a hundred lines of code or more.

The replacement part serves the same purpose as the original. It just does it better and a lot more carefully.

When I see this sort of thing, it makes me think of any mature software system as a kind of fractal. At the most basic level software systems are pretty simple.

But then when you look further, you see that what seemed like a very simple thing (for example, in my case, how a character first places its foot when it starts to walk), might actually contain lots of complexity.

You don’t need to understand all the complexity to understand the system, and certainly not to use it. But without it being there under the hood, you just end up with rubber bands and chewing gum — a system that seems to work ok at first, but eventually just falls apart.

Working Saturday

Today is a Saturday, a day when many people take the day off, smell the flowers, chill out a bit. Yet today has been one of the most work-intensive days in our lab in recent memory.

I have been here all day working on procedural animation for our big forthcoming SIGGRAPH production. Meanwhile our students were working on a motion capture shoot for the same production.

Other students have been porting our VR experiences to various consumer level VR headsets. Still other students have been spending the day building virtual sets and animating characters.

I’m starting to think that being in a state of productivity is highly contagious. Of course, this is only a theory. 🙂

May the fourth

I really like the fact that there is this geeky little phrase that people say to each other on this day of the year. This morning, people I know greeted each other by saying “May the fourth be with you.”

It’s really stupid, but everyone smiles and feels like they’ve gone through a ritual of tribal bonding. Sort of, I guess, like being in the A.V. Club in Hawkins Indiana.

Two years ago today, some friends and I went to an “Escape the Room” experience in Stuttgart Germany. The operator, who clearly spoke English only as a second language, greeted us with a hearty “May the Fourth be with you!”

I love that we could so quickly bond with somebody from a different country, and even a different language. What I love even more is that it was done through a ritual that is so wonderfully, happily stupid.

Inconvenient truth

I finally got around to watching Michelle Wolf’s stand-up routine at the Correspondent’s Dinner. I had been wondering what she might have said to prompt the group that hired her to issue an apology for her performance.

What I found was interesting, because what she said was so unexpected. After all, we are only 16 months in to this national mess, and our Press core has already been trained to speak in careful euphemisms.

As a reporter covering our nation’s politics, you are not actually allowed to notice that the job of Sarah Huckabee Sanders is to cover for a boss who is a serial liar, that our president is a pussy grabbing (literally!) racist misogynist and unapologetically xenophobic bully.

If, as a journalist, you point out the plain facts that we all witness every day, you can get banned from the White House. You can simply be cut out of the loop, and denied the basic access you need to do your job at all.

But Michelle Wolf is a comedian, which means her job is, quite literally, to truthfully point out to us the absurdity of these strange days. That is her mandate, however nutty said truth may be — and right now, it is pretty darned nutty.

So mostly I was startled, at a time when so many journalists are in a defensive crouch and practically cowering in fear, simply to hear somebody point out clearly and unambiguously to a room full of journalists just how crazy things have gotten on their watch.

Of course she was promptly denounced, and her words were twisted and misconstrued to suggest “hidden meanings” at odds with what she actually said. That’s how you shut people up in this day and age when they have the effrontery to speak truth to power.

Fortunately, power doesn’t always succeed in shutting up inconvenient truth. I suppose we should be grateful for little things.

Reverse engineering acronyms

I was thinking about yesterday’s post and wondering just how difficult it is to reverse engineer an acronym. For example, even knowing the general context, could you actually look at the acronym NOW and figure out that it stands for “National Organization of Women?” Or is the search space simply too large?

It’s certainly easy enough to construct acronyms:

Any Clever Rubric Of Neologisms You Might Suggest,
Awfully Corny, Rather Often Nutty (Yes, Maybe Silly),
Alas Clearly Representing Odd, Not Yet Mature Sensibilities
And Casual Rituals Of Nerdy Young Masochistic Semanticians.

But going the other way is a lot trickier. Even if you already knew the context in which they were written, would you be able to look at “AWOL” or “OMG” or “KISS” and figure out their individual component words?

IDK. OK, TTYL. BTW, HAGN!

WFAFBOWB

I’ve been thinking about James Shaw Jr., the brave young man in the Tennessee Waffle House who wrestled an AR-15 from a deranged killer who was in the process of shooting everyone in sight. What Shaw did was such a beautiful act of heroism.

But then I can’t help but also think about the recent incident in a Starbucks, where two businessmen were arrested and hauled away, solely for the crime of WFAFBOWB. What if Shaw had been arrested for the same crime?

The news reports say that at the time of the shooting, he was having breakfast with a friend. But suppose that friend had been late, and Shaw had decided not to order right away, but rather to wait for his friend before ordering, so the two of them could enjoy their breakfast together?

He would then, of course, have been guilty of WFAFBOWB. The next thing you know, the management would have called the cops to haul him off to jail for his crime, to be duly arrested and fingerprinted and locked up for the next nine hours or so.

But then when the deranged killer burst into the Waffle House with that AR-15, every last person in the joint would have been brutally shot to death, including the manager who had helpfully called the cops. It would have been absolute carnage.

I am wondering now if I need to spell out what WFAFBOWB stands for.

A shadow in a dream

It melted in the moment that I thought to light the flame
I felt its taste upon my tongue before I took a bite
I heard an echo in the room and then I spoke its name
A shadow in a dream that I will dream tomorrow night

I’ve yet to learn the stories that I knew when I was small
From prophecies I read within a room devoid of light
I learned in future memories but now cannot recall
A shadow in a dream that I will dream tomorrow night

I stole into a house I hope to visit someday soon
Where everything was in its place and not a thing was right
Until I saw reflected by the light of the new moon
A shadow in a dream that I will dream tomorrow night

Cinematic prototyping

At the SIGCHI conference this week, I saw a talk that discussed the idea of “cinematic prototyping”. The fundamental concept is that you can start a discussion about something you’d like to build by making a short film about it.

In your short film, you pretend that the thing already exists, and you show people using it. Such a film doesn’t generally aim to explain how the technology works, but rather gives a sense of what it could be good for, and why you might want it.

Of course, if you are serious about developing something, cinematic prototyping contains pitfalls. It is just as easy to create an impossible science fantasy film as it is to create one about a plausible technology.

If you show a time machine or a Star Trek transporter, you might end up with a very fine and entertaining short movie. But you won’t really have helped to advance an actual potential technology.

Still, if done responsibly, showing your idea as though it already exists confers a number of benefits. For one thing, it can help you to convince other people to bankroll the development of your idea.

But perhaps more important, it will give you insights about your own idea that you might not have gotten otherwise. There is something about seeing something actually being used by people that helps us to better understand it.

We humans may be creatures of ideas, but we are also creatures of practice. To truly understand a tool or a technique, we need to see it used in practice.