Suppose everyone could program

Suppose everyone could program computers. In other words, suppose computer programming were taught as a basic skill to every child, starting in kindergarten, and continuing on to the senior year of high school.

I’m not suggesting that little children be taught C++ or Javascript. I would imagine that they would first be introduced to the concepts of programming in an age-appropriate way, perhaps through simple play, then progress to a blocks language like Scratch, and eventually move on to something like Python, supported by a well designed user interface.

I am guessing that if we were really to do that, we would think about programming differently. For one thing, it would be used for different purposes than it is now.

Rather than being a specialty craft — akin to being a plumber or an electrician — it would be something done every day by hundreds of millions of people, like cooking. I also suspect that programming languages themselves would evolve to meet the needs of this much broader user population.

Advances in user interfaces to support programming would have a very different flavor, once the ability to program is no longer just an advanced professional skill, but also a basic literacy skill. The kind of programming language that ends up getting used by everybody might look very different from anything we have seen so far.

Good mood pill

If there were a completely safe, non-toxic, not physically addictive way to put people into a good mood, would that be a good thing? I’m thinking just of some sort of ostensibly benign pill that helps people to chill, to accept each other, to relax and enjoy the moment.

On the surface, it seems like a good thing. But maybe such a thing runs counter to what people really need.

Perhaps our human tendency toward irrational moods and behaviors has actual survival value, despite its seemingly disruptive effect. Maybe, on some fundamental level, we need to argue.

If that is the case, then a perfect “good mood pill” might actually be destructive in ways we cannot yet measure. It might end up taking away something essential that is needed to give our lives meaning.

Were movies inevitable?

There is a strong argument that movies were inevitable. We are, after all, a storytelling species, and we seem to turn any available tool toward the task of telling stories.

In 1800, movies were pretty much unthinkable. In 1900, they were a budding novelty. By 2000 they had, in many ways, long displaced all other forms of storytelling.

Of course there were key geniuses who advanced the medium at many points in its development. But even in the absence of specific individuals such as Edison, the Lumière brothers or Eisenstein, others would have taken up the challenge.

The gating function, I think, was not the genius of any individual, but the emerging technological possibility itself. Once technology had advanced to the point where movies were possible, they were bound to be invented and developed in short order — because we are humans, and that’s what we do.

One reason I find this line of thought fascinating is in its implications for possibilities in the future. What storytelling technology is just now emerging, which today seems like a mere novelty, but will soon grow in its influence by leaps and bounds?

In short, what will be the successor to movies?

Places in future reality

I have been designing a VR environment, which does not exist in the real world. There is a chance, however, that it might one day exist in the real world.

I am not sure how to classify my experience of walking around within and spending time exploring this environment. What relationship does it have to my experience of the physical world?

If this VR environment never gets built in the physical world, then it is merely a thing of exploration and conjecture. Like any novel or movie, it exists only in the collective minds of those who experience it.

But what if it does end up getting built? What if it eventually becomes a physical place where I end up living some fraction of my actual life?

Will that retroactively change the meaning of my current experience? Will I have, in some real sense, gotten a jump on living in my future life?

And what if my VR experience today causes me to make a change in the design or construction of that future physical place? It would be fascinating if a sensorily immersive yet entirely imaginary experience of today should end up causing a significant change to how I physically inhabit my future reality.

As VR becomes an increasingly common part of our everyday lives, I suspect that such questions will become more important. They may eventually become central questions of our existence.

Systems thinking

I was preparing breakfast this morning and noticed the way I was multitasking. Since I had prepared these dishes many times before, I knew exactly how long everything takes.

So as I put one thing on the stove, I would turn something over in the toaster, and then the next moment reach for something else in the refrigerator. It was a kind of synchronized dance, with all of the moves choreographed not by design but by experience and intuition.

I realize that this systems thinking is an aspect of software engineering that is difficult to teach. A student can understand all the principles, but without knowing the weight of things, those principles are difficult to apply efficiently in practice.

How much does it cost to add a new module, to allocate such and such objects, to iterate versus recurse? On top of that, there are multiple kinds of costs. Some costs come in the form of greater time and effort in programming, whereas others are penalties paid in run-time performance.

Systems thinking applies to everything, whether shopping for groceries, cooking a meal, fixing a car, writing a computer program or designing and building a house. In order to do really something well, you need to have put in the time to have working knowledge at your fingertips.

Beginners are at a distinct disadvantage when experience is everything.

LSMFT, part 1

Some years ago I was walking around lower Manhattan with a companion. The topic got to contemporary popular cultural references.

I said that you could probably figure out someone’s age within a few years by which pop cultural references they recognized, and which they did not. There is, after all, a certain range of dates during which certain movies, TV shows and commercials appear, after which most vanish into the mists of time.

Except in the memories of those who witnessed them.

A case in point, I said, is the acronym “LSMFT”. Unless you are a culture nerd, you would need to be older than us to know what that means. My companion just looked at me blankly, with no sign of recognition.

At that moment, an older man who had been walking behind us spoke up, and proudly announced what “LSMFT” stands for. In a way, he was elegantly proving my point.

I suspect that anyone under about 75 years of age, unless they are very unusual, will not recognize this acronym, whereas any American over about 75 will know exactly what it means.

I’m curious — is there anyone out there in the younger demographic who already knows what LSMFT means, without Googling it?

Sketchpad

Today our research group watched a video of Ivan Sutherland’s 1963 Sketchpad system. Afterward we had a long discussion about it, and about how much things have or have not changed in the last 57 years.

It is surprising that we have not gone collectively further since then in creating procedural interfaces. This suggests that it is an inherently hard problem, in which simple cases (like the ones that were tackled in Sketchpad) are low hanging fruit, and more complex cases become exponentially more difficult.

But now that we are entering an age in which virtual and mixed reality are going to be more widely adopted, this might shift. The greater affordsmces of immersive media could be a game changer.

Guess we will see!

The problem with economic models

I am working on a computer graphics project now that will be seen by perhaps half a dozen people. It’s largely a labor of love, and I derive great joy from working on it.

I’ve been noticing that I put exactly the same amount of deep care and devotion to good design into this project that I put into things I create that will be experienced by millions of people. The best way I can describe the motivation for this is that it would simply seem wrong to cut corners.

From an economic perspective, this makes no sense. Why put as much care into something that will be experienced by only a few people as I put into things that will be experienced by millions of people?

Which leads me to the following conclusion: There is something wrong with trying to apply an economic model to everything.

Dogwhistling

The idea of a dogwhistle is that it is so high pitched that only a dog can hear it. When applied to politics, it generally refers to a message tailored to a narrow constituency that most people outside that constituency might not notice.

But sometimes a dogwhistle is pitched so low that everyone can hear it. Then that happens, things get decidedly weird.

Last night, at the presidential debate, our president pitched a dogwhistle so low it was essentially in the basement. He suggested to far right white-supremacists, in a very obvious way, that they should be ready to disrupt the election process by means of physical violence.

Never thought I would see something like that my lifetime.

Virtually expressed ethnicity

Many socially shared VR platforms do a very bad job of reflecting the ethnicity of participants. This is not so surprising. Avatar technology is still in a relatively primitive state, whereas actual people are very complex.

But that has gotten me thinking. If we do eventually get to the point where the sort of reality envisioned in Snow Crash becomes the norm, then questions surrounding ethnicity might become different.

Your literal appearance might matter less than your tribal identity. Ethnicity will be less about ill conceived responses to superficial genetical traits, and more about shared heritage and culture.

If that happens, I wonder what that will mean for social, cultural and economic interaction between people with different ethnic identities. I hope, among other things, that it will level the playing field.