Archive for January, 2022

Creating a pitch

Friday, January 21st, 2022

I’ve been working on several different varieties of “pitch” in parallel. In one domain, I’m advising some start-ups. In another I am helping to ask the government for research funding.

The differences between these two varieties of pitch is fascinating. Both are, in essence, a process of going up to somebody and saying “give us money.” But after that, things diverge radically.

The people who fund start-ups are mainly interested in one thing — getting lots of money back in return. The people who fund academic research don’t expect to get any money out of it. But they want the future economy to grow.

So on the one hand, you’ve got people who are cannily working in their own personal self-interest. On the other hand you’ve got people who are interested in a very large scale and future looking form of tribal self-interest.

In the larger picture, both forms of support are essential. The academic funding of today produces innovations that will allow tech start-ups to succeed ten or twenty years from now.

Designing for non-existent hardware

Thursday, January 20th, 2022

One of the odd things about research is that you often find yourself designing for a world that doesn’t exist. It’s a world that you believe will exist, but it’s not here now.

The general idea is that if commercial products are already out there now that can do something, then you shouldn’t be focusing on that for academic research. There are large corporations that have that mandate. Those corporations are very well funded, and they are doing a reasonably good job of serving their customers.

But serving customers who will use technologies that will not yet exist for another ten years is not their concern. That’s where academic research comes in. We can focus on asking questions that are well beyond the commercial horizon.

To do that we need to do a kind of fakery. For example, we might run a wire from a massive computer to a small handheld device, and pretend, for the sake of research, that we are holding a future device which is capable of doing all that massive computation on its own.

There may not be a market now for such a thing, because that wire stops you from taking the device with you. But you can still do lots of useful research to explore what it would be like if that device were untethered, and if you could take it with you.

Widget Wednesdays #3

Wednesday, January 19th, 2022

I’ve always been fascinated by optics. It was one of the many great discoveries made by Sir Isaac Newton.

When I was a kid I used to come up with all sorts of ideas for optical devices. Most of them were based on a wrong idea of how optics worked, but that didn’t stop me.

Now that I know a little more, I like the idea of teaching optics through the use of software toys. Such a toy should allow you to create and then combine optical elements at will, varying such things as surface curvature and index of refraction — things that are difficult to vary in the real world.

Ultimately we’d like those toys to exist in a kind of tangible augmented reality, but we are not quite there yet. The next best thing is to simulate optics on a computer screen.

For this week’s Widget Wednesday I am sharing with you one of my software experiments with optics. This program just focuses on letting you define your own lenses, and showing you what happens to the light rays that pass through them.

Try it. I hope you find it illuminating!


Tuesday, January 18th, 2022

Terminator 2 — Judgment Day came out in 1991. Now, thirty one years later, we have Peacemaker. One thing they have in common is that they both star Robert Patrick, player of bad guys par excellence.

Another thing they have in common is their use of synthetic characters. But in fascinatingly opposite ways.

In T2 Patrick was a real person playing a synthetic person. For the time, the effects that brought this about were strikingly good. I still get chills when I think back on the scenes where Patrick melted effortlessly into liquid metal.

Peacemaker, on the other hand, has a character that you are supposed to think of as entirely real. I’m speaking of Eagly, the protagonist’s pet bird — played by an entirely synthetic actor.

Eagly is 100% CGI, but you would never know it from watching the show. Unless, that is, you took the time to think about how difficult it would be to get a real eagle to act on command in so many different situations.

So here we have a complete reversal of real and synthetic. Three decades ago you faked a character who is supposed to be synthetic by using a real actor. Nowadays, you fake a character who is supposed to be real by using a synthetic actor.

Times have changed.

Two birthdays

Monday, January 17th, 2022

Benjamin Franklin, one of my favorite humans ever, was born on this day, January 17, in the year 1706. Since I was a little kid he has been one of my heroes.

When I was eight years old, I knew I wanted to be Benjamin Franklin when I grew up. Yeah sure, there’s all the political stuff. But he was my hero because the man was just the most awesome inventor a kid could ever aspire to be.

Lightning rods, bifocals, water flippers, that stove. Not to mention the glass harmonica. I just loved the glass harmonica.

Today is also the ninety first birthday of James Earl Jones, a hero to millions. I would love to see James Earl Jones play Benjamin Franklin. Steven Spielberg, are you listening?

First you make it, then you figure it out

Sunday, January 16th, 2022

This last week I was faced with a problem in computer graphics, and I did something I often do. I jumped in and started hacking until I got something that worked.

The problem was, I couldn’t really figure out why or how it worked. So then the real work began.

Over the course of the next several days I sautéed and sautéed, transforming the code piece by piece, breaking things down into properly named methods, trying to turn it into something that would explain itself.

After a few days I finally ended up with something that not only worked, but that another programmer could pick up and read and understand. In the scheme of things, this is much more valuable than what I had originally, because now it can also be used by other people to do other things.

I can’t say whether this approach is good. It’s not clear whether I would have gotten the thing working had I approached it more methodically.

I suppose I should be grateful that the process works, as messy as it is. I wonder whether other people trying to make things have similar experiences.


Saturday, January 15th, 2022

Somebody asked me if I was interested in watching The Eternals. That’s the latest offering from the Marvel cinematic universe.

But I misheard. I thought they said “E-Turtles”. “Sure!” I said. I figured that anything called E-Turtles must be wonderful.

Alas, it’s not E-Turtles after all, it’s The Eternals. Yet I still prefer it the way I first heard it.

E-Turtles would just be so cool, wouldn’t they? The story practically writes itself.

Second order games

Friday, January 14th, 2022

Years ago I heard a talk by Chris Crawford at the Game Developers Conference, a conference that he had founded. He talked about many things, but one thing in particular jumped out at me.

He said that when we talk about the study of games, we should not include professional sports. People “playing” professionally, he said, is actually a form of work, not of play.

I found myself strongly disagreeing. There is a tremendous amount of interesting gameplay around professional sports, which is why it is so popular. It’s just that those games are not played on the field.

Professional sports is a prime example of what might be called second order gaming. It is not the game you see at first which matters, but rather the set of games that are built around it.

Professional sports provide endless hours of entertainment for people who argue, study, debate and generally fill their conversations with observations, statistics, and various forms of tribal loyalty expressed in both words and fashion.

This is, in fact, one of the most interesting systems of games that we have, and well worth studying. As long as we remember that the actual game, the one that really counts, is played by the fans.

Bad art day

Thursday, January 13th, 2022

I heard someone talking today about their bad haircut. Another person was telling them to give their haircutter another chance.

“Cutting hair is an art,” he said. “Anybody can have a bad art day ”

And that gave me an idea. Why can’t we have an official “Bad art day?” One day of the year when everyone has permission to just go ahead and make bad art.

Everyone gets to participate. No judgement.

You can create anything you want, and it’ll be ok. Just remember not to go for a haircut.

Widget Wednesdays #2

Wednesday, January 12th, 2022

This week I am visiting an old favorite. Ever since I was a child, I was fascinated by four dimensional space.

From yearning to tesser after reading A Wrinkle in Time, to watching the Little Girl Lost episode in The Twilight Zone, I wondered what it would be like to travel in four dimensions.

I first started to seriously play around with creating 4D things when I was an undergrad. When it became easy to do virtual reality in the last five years or so, I started moving those experiments into VR.

A question I’ve long pondered is whether, if you gave little kids a 4D toy, they would learn to think intuitively in four dimensions. It’s really a question about whether the way our human brain works. Is our ability to learn to intuitively reason about space “hard wired” for 3D, or is our brain capable of adapting that intuitive learning process to other spaces?

Wouldn’t it be amazing if future generations had universal 4D reasoning skills? That could lead to all sorts of fascinating and surprising cultural developments.

I’ve made many little 4D toys to play with through the years. This is one of the simplest, and I include the source code (as a link on the bottom) so you can see how it’s made. is just a 4D cube (also called a hypercube, or a tesseract). Instead of the usual three dimensions XYZ, it has four dimensions XYZW.

To let people play with it, I implemented a 4D virtual trackball.

The way the trackball works is that if you drag your mouse left and right, you rotate the shape, exchanging the X and Z axes. If you drag your mouse up and down, you exchange the Y and Z axes. So far that’s the kind of rotational behavior we expect from a trackball.

But also, if you hold down the SHIFT key and drag left and right, you exchange the X and W axes. If you hold down the SHIFT key and drag up and down, you exchange the Y and W axes.

One interesting question is whether people can learn to quickly and intuitively rotate the shape into particular 4D configurations. It would be fun to set up an on-line test to find that out.