Go book and wire

Today I received two packages at home: The book “Go: A Complete Introduction to the Game” by Chikun Cho, and a one pound spool of 32 gauge magnet wire. That last comes out to 7860 feet of 1/125 inch thick wire. I’m guessing it will be enough.

Each of these two objects will be put to use in projects I’m working on, and I am very happy to have them.

Yet getting these two things on the same day, and thinking about all the ways they contrast with each other, creates its own jumble of thoughts and possible directions. The Go book is, in a sense, a thing of pure thought — a physical object dedicated to an abstract idea. The spool of wire bends matter into a thing of pure possibility. When used in the right way, it is a way to connect the physical and the intentional.



 

Here you can see them lying on a Go board. Its regular grid seems to connect these two very different objects in some strange yet logical way.

What sort of project would make use of both a mile and a half of magnet wire and a book about the history and strategy of the most elegant of board games? Maybe I will end up with a robot that plays Go.

Go further

Yesterday I made the basic Go board. Today I tried my hand at making a board that automatically cleans up after a battle.

For those of you who don’t know, the basic idea of Go is to amass territory by strategically placing stones so that they surround your opponent’s stones. When groups of stones are completely surrounded — cut off from any empty spaces that would let them “breathe” — then those stones die, and are removed from the board.

My programming task today was to figure out when a group of stones has died, and then automatically remove them from the board.

Just for fun, I’ve turned this into a little puzzle. When you click on the image below, a page will pop up containing a Go board. Your task is to click twice: Your first click should add a black stone that finishes surrounding a group of white stones. Your second click should add a white stone that finishes surrounding a group of white stones.

If you get it right, then after each click a group of surrounded stones will automatically disappear from the board.



Because this is all Javascript, you can see the program using “View Source” in your browser.

Go, from the start

A long time ago I learned the basics of the ancient Chinese game of Go, or 圍棋 (wéiqí) as it is called in Mandarin. I hadn’t played in years, but recently a good friend has reintroduced me to the game, and now I want to understand it better.

As I learn about gameplay and strategy, I thought it would be an interesting exercise to write little computer programs that reflect the concepts I’m learning, mostly because I’m curious to see what sorts of things I end up making.

I thought I would start with an interactive computer graphic rendering of the Go board and basic game play (no strategy yet). Partly this is also an excuse for me to start writing 2D graphics entirely in Javascript.

If you click on the image below, you’ll jump to a page with my first results. After you get there, click on the board and see what happens:



We met the 24 cell

Today, after weeks of hard work, Kyle Rosenbluth and I managed to look around a four dimensional shape called a “24 cell”, through an Oculus Rift VR display.

Kyle is a brilliant high school student visiting our lab, and he is amazing to collaborate with. We’ve actually been very fortunate this summer in having a whole bunch of incredible students visiting our lab and doing great work. It’s great how the energy builds when a whole bunch of really smart people do research together. There is definitely a kind of multiplier effect, as the collective ideas and energy bounce off one another.

By the way, I think the 24 cell is, in some ways, the most beautiful of all mathematical shapes. So it was a thrill to finally get to meet it in person. Well, as close as I might ever get to meeting a four dimensional shape in person.

The secret life of buildings

Today I was thinking, what if we lived in an alternate universe where buildings were never designed to stay in one place. Yes, a building would be a single or multiple family dwelling, but it would also be a vehicle, a kind of self-propelling communal caravan.

Cities would form spontaneously as buildings came together in critical mass, and then they would drift, as dictated by the mysteries of time, fashion and economic circumstance. A person’s address would be a dynamic thing, an ever changing variable of lived experience.

Some buildings might wander south for the winter, others would cluster together in solidarity. Perhaps they would travel in packs, a pride of abodes drifting across the landscape in slow and regal splendor.

Coincidentally, this evening I saw an episode of “Fringe” that took place in an alternate version of our universe. As you can see in the picture below, our well-worn trope of the well appointed Yuppie kitchen has been selectively modified. The happy couple draws their fine wine from a box, their expensive steak from a can.



 

As I watched this scene, I couldn’t help wondering whether their building would migrate south for the winter.

New toys

Today, by coincidence, I received several new toys simultaneously.

Well, “toys” might not be the best word. More like “stuff I ordered on-line to do science experiments.” They are all pictured in the photo below, arrayed artistically on my living room floor:




 

In the center are two magnifying glasses. The one on the left is 2.5″ in diameter and has a 3x lens. The one on the right is 2″ in diameter and has a 4x lens.

Below the first magnifying glass are four ring magnets. Each is 1/2″ in diameter and 1/2″ long. They are kind of hard to separate.

To the far right are two bigger ring magnets. Each is 1/2″ in diameter and 1″ long. These are very hard to separate. And if you do manage to separate them, don’t get your fingers caught between them when they try to snap back together.

In the upper left, looking deceptively like a single long cylinder, are ten little ring magnets arranged end to end. Each of these is 1/2″ in diameter but only 1/8″ long. I’m guessing that these are the ones I’ll end up using my experiments.

Tourists

Last week a friend from out of town came back from his day trip to the Museum of Modern Art and told me he had a great time at the MOMA.

“MOMA,” I said.

“That’s what I said,” he responded.

“No,” I said. “You called it ‘the MOMA’. You should just say ‘MOMA’. That is, if you don’t want people to realize you’re a tourist.”

Then today I was talking with a friend who happens to be in her twenties. I said I had ordered something from on-line, and she laughed.

“What’s so funny?” I asked.

“You said ‘from on-line,'” she explained. “It’s just ‘on-line’, as in: ‘I ordered something on-line.'”

I vowed that from now on I will just say ‘on-line’. That is, if I don’t want people to realize I’m a tourist.

Is it I?

OK, this is a bit of a grammar gripe.

I’ve been noticing that the entire idea of when to use “I” versus “me” in a plural clause has mysteriously disappeared, and nobody seems to notice.

I’d always thought the rules were simple: When you’re the subject of a sentence, you say, for example: “I am going to the store”. And when you’re the object of a sentence, you say, for example: “This is happening to me.”

So far so good. “I” versus “me”. Everybody seems to get that right.

But throw another person into the mix, and people start to get confused. Instead of saying “Jenny and I are going to the store,” I hear people say “Jenny and me are going to the store.”

And instead of saying “This is happening to Fred and me,” I hear people say “This is happening to Fred and I.”

The whole thing sounds so strange to my ears, as though people were saying “Me is going to the store,” or “This is happening to I.”

Am I the only one left who notices this? Has the English language somehow changed while I wasn’t looking?

The tragedy of sequels

Tonight I saw “Kick-Ass 2”. I had thoroughly enjoyed the original, and was very much looking forward to seeing what Matthew Vaughn would bring us in the sequel.

I’m not saying I didn’t have a good time, because I did. But the unique blend of transgression and sweetness that was the original was simply missing. Where the first film was, at heart, a lovely character piece about misfits trying to find themselves (and each other), the sequel wasn’t so much a movie, as it was a series of loosely connected sketches, each trying to outdo the other in some category of outrageousness.

I can understand how this sort of thing happens. A movie does well, perhaps unexpectedly, and suddenly there is a franchise. This franchise is a sort of hungry beast, which must be fed. Many millions of dollars are on the line, so the stakes are very high.

Alas, those high stakes do not mean that there is actually anything new to say. While an original film generally comes out of some unique passion, a coherent vision of characters going on a journey, its sequel is usually a product of money and its demands.

Even worse, at the end of the first movie (assuming it was a good movie), the characters have completed their story arcs, so they really don’t have anywhere they need to go. Which means that the sequel begins with a serious structural disadvantage: From the perspective of story, it has no inherent reason to exist at all.

So sequels often do what “Kick-Ass 2” did — they jump the shark. The film piles excess upon excess. To paraphrase the incomparable Nigel Tufnel, “This movie goes to eleven.”

If it weren’t for the brilliant Chloe Grace Moretz finding amazing depth of character not in the screenplay, but rather through her reaction shots and quiet moments between all the scripted nonsense, the film would have been unwatchable. I recommend seeing this movie not because I think it is good, but because it is a great lesson in how a brilliant performance can nearly salvage a bad movie.

The mysteries of the internet

Today I wanted to learn how to load the contents of a file from my own computer into a web browser. I did a Web search, and discovered lots of forums, tutorials and discussion groups on the topic.

A number of the on-line discussions seemed to devolve into a kind of religious war, with some participants asserting that such a thing was simply impossible, and others saying that accessing a file from disk was sort of morally wrong. Apparently it goes against the spirit of the Web.

One odd thing about such assertions is that they seem to have no relationship to reality. After all, if you’ve ever uploaded to a web site a document you wrote or an image you took (which nearly everyone has done by now), then you have clearly read the contents of a file from your computer into a web browser.

I did find some tutorial sites on the topic, but they were all very long, with gnarly code that ran on for pages. It had seemed like such a simple question, and I was astonished to find the on-line answers to be anything but straightforward.

Eventually I figured out what was going on, by assembling little bits and pieces from different places. When I was all done, the whole thing took just one line of HTML plus four lines of Javascript. For those of you who care, here they are:


      <input id=”input” type=”file”>
      …
      var chooser = document.getElementById(‘input’);
      var reader = new FileReader();
      chooser.addEventListener(‘change’, function() {reader.readAsText(this.files[0]);});
      reader.onload = function() { fileText = this.result; }
 

So what are all those people out there going on about? I’m starting to suspect there may be something very odd about Web programming culture.

I’m just not quite sure yet what it is.