on future geologies

Screen Shot 2017-09-20 at 2.10.31 AM.png

Take the planet Earth; using a sharpened blade, cut down the center with a firm pressure.

Run your finger along the inside— what story does it tell?

Once upon a Time, there was stone…

And Once upon a Once upon a Time, there was light… and there was heat…

Take that story, and knead it through your warm hands, back and forth… Until a trillion things are born and die inside of it.

As you knead, industries grow on top. Industries that scoop back into the story like a spoon, ladling the story that is stone was once light and turning it into a deconstructed pile of syntax, rubbing out the lexicon of rocks, of crystals, of oils, life, melting down the chapter book of planetary history to create a crude vocabulary of things which can be assembled easily on stockroom shelves.

Thousands of stones that were once light and heat fill your home: this spoon, this bulb, this double decker panini press. Some became computers.

These appliances you hold in your hand — they have no interest in storytelling. They are new grammars, existing in isolation; chemically bizarre.

Once upon a time, there was a barcode.

How will it all read, in ten thousand years? When all is piled into an appendix of things we don’t understand, with no beginning and no end—waiting to turn into fire?

reimported from medium

on interaction design, pt. 2

(a follow-up on our discussion last week.)

What is interaction?

I don’t feel like I fully answered this question in post #1, and I had many new thoughts by the end of class last week.

To start, I really liked Jason’s point about transformation. To me, interactivity is scoped by a relationship between entities that listen and respond. When these entities interact over time, changes in behavior, memory, physicality, etc seem inevitable.

When I think about human to human interactions, I can always remember some kind of emotional response—whether that’s joy, frustration, interest, boredom. And I’m often being exposed to new information via this person interface. Whether or not it feels significant, an interaction with a new person will change me, either in a subtle way or a really palpable way.

Interactivity is not a binary definition by any means, but a continuum. For instance, how does interactivity change when it’s no longer 1-to-1, but it’s 1 to a large group?

// How does interactivity feel limited by direction and size?

For instance, a single person might speaking to a crowd. Maybe someone in the crowd might respond to the main speaker, but is only dialoguing with that single person. There might be potential for multitudes of connection/interactivity, but our context asks that the interaction happen in one direction.

// How might noise change interactivity?

I mean noise in a literal sense— like signal losses and distractions—but also lossiness of information. I found it very difficult to express certain ideas in Chinese when I was in China this summer, and gave up on certain communications. Things get lost in translation, for humans and computers.

// How do things feel more interactive if they display a multitude of behaviors?

I don’t feel like a light switch is particularly interactive; I find a furby to be slightly more interactive. A person contains multitudes, and the fact that this person is programmed with far more behaviors than a furby makes me more interested in interacting with them.

Things that are highly interactive are more conducive to building relationships. Long-term relationships, whether with people, machines, or things, lead to trust and mastery. Ideally, both “actors” begin to transform in response to one another, which happens most often with humans, and to various degrees with machines and other things.

So not only can things be more or less “interactive” on first impression, but how does that interactivity change with time?

Is something more deeply engaging on the 100th try than on the 1st, or do we start to feel emotionally detached?

(This writer has some nice thoughts about this, using chatbot UI as an example.)


pcom week2 // frog furby switch (& other switch thoughts)

This week’s homework, “build a switch,” struck me with many exciting ideas.

Because of shaky time management, I was only able to execute a much more simple, straightforward design. Still, I would like to share two other ideas I would have liked to execute.

1. rube goldberg switch

I was immediately drawn to models of rube goldberg machines, which are poetic and funny as non-electrical pathways for directional energy flow.

I imagined a switch which could only be turned on, could not be turned off. A one-way switch—which, once it lost all its potential energy, would need to be laboriously and manually reset. A switch which privileged one state over the other, basically.

Can you imagine an entire room’s worth of beautiful chaotic interaction, which only resulted in a single light turning on?

There’s something lovely about expending so much energy for its own sake, with very little return in the end. (thinking: mindfulness practices, privileging processes)

I would do something much simpler, like copper-coated dominoes that all made contact with each other after falling.

I would really love to execute this idea still if I have the time.

2. slooooow switch

We often imagine a switch as something that happens instantaneously. Well, there are many ways the energy can be transformed in our physical world in ways which require patience.

Heat is an interesting one that we’re all familiar with. Our dinner warming in the oven, or crystals forming on a window.

What if it took three hours for the lights to come on?


Here’s an idea for a slow switch, where an ice cube is suspended on a platform. It would be a salty, more ionized solution which would conduct electricity better.

As the ice cube melts, it fills a narrow container with salty water, which will connect the current between two wires.


process: frog furby switch

I found this fellow in the junk pile.

Screen Shot 2017-09-20 at 12.09.32 AM.png

There’s something about connecting with something tangible that feels so different from simply touching two pieces of metal together. It doesn’t take much for us to anthropomorphize something.

I used to have one of these ghastly things as a kid:

Quite an amazing vestige of the 90s, isn’t it? I remember feeding it with a spoon; it would bark, “Yum yum” when you put pressure on its plastic tongue.

I had this idea to feed the frog to make it speak, or to make a light blink at least.


I first started out getting a single LED to turn on. I calculated the current in order to find the right resistance; I didn’t want my 3.5V LED to burn out.

Screen Shot 2017-09-20 at 12.04.19 AM.pngScreen Shot 2017-09-20 at 12.04.01 AM.pngScreen Shot 2017-09-20 at 12.15.58 AM.png

I found two 47ohm resistors which seemed to do the trick, since my circuit needed approx. 75ohms of resistance. This seemed much more approximate than I thought; my meter measurements were a little shaky but it all seemed to work none-the-less.

I found a mysterious electronic component which I bent to look like a bug and attached to the “feeding” wire.


It’s not easy being green!



icm week2 // banana death

For homework this week, I created game about the urgency of uneaten fruit at home. Eat your bananas before they go bad!

(inspired by a true story)


[play the game]
[open code in p5]


I started off imagining a single banana that would change color over a constant time. After looking at classmate Chris Chao’s sketch, I was inspired to put some more interactivity into it. What could be more urgent than clicking on falling objects?


Screen Shot 2017-09-19 at 12.13.18 AM

I was able to make one banana fall pretty easily, using a “y” variable and “y++”. I changed the colors using an “if” statement and color variables.

Screen Shot 2017-09-18 at 9.21.01 PM

A few things I tried, and couldn’t figure out:

  1. How can I make mousePressed() interact with multiple individual banana objects? So far, I can only have my mouseX and mouseY interact with a single “x,y,” which happens to be my central banana. What I did instead was make a big click radius so that clicking anywhere in the banana cluster would clear the screen.
  2. How can I make each banana fall at a random rate? Without objects, every new random() speed I created would affect every single banana.
  3. How do I get bananas that “remember” where they are? I would like bananas in random locations, that would still be bound to the screen AND follow the “if” statement color changes. They would not need to be positioned relative to each other.

The struggle was getting multiple bananas to behave in their own individual way. I’ve done a semester’s worth of object oriented programming before, a few years ago. I would have liked to practice making this an object-oriented game, if I had the time to relearn some OOP.


For a while, they were glued to the same y axis.

What I ended up doing was drawing a single central banana, which had other bananas offset around it, falling at a constant speed. I used arguments/parameters for this in a separate banana() function.

By the end I felt like my code was pretty messy. I had some logic written in draw(), and then other logic in “banana().” Some of this messiness was because of how variables changed over time, or function-specific arguments… or just encountering a bug when I put it in one versus another. I have looots of “if” statements that feel ripe for error.

Still, writing console.log() at every turned helped me figure out where things were broken, at every turn.

on interaction design, pt. 1

a reactionary ramble re: Chris Crawford, Bret Victor.

I’ve often thought about interaction in a similar vein as Crawford—that “interaction” is an exchange that involves listening and offering back. It’s a form of relationship-building that involves no small degree of trust and learning.

Written language, books, video, software. These are ways that we interact with each other, indirectly, at scale. These flat abstractions are our dominant ways of getting knowledge, outside of people. And they tend to be fairly “passive” ways of interacting. Probably more engaging than a rug, but still. Crawford would argue that deeper learning is cemented through doing. From an educational thought point-of-view, I appreciate how constructivist that sounds.

Victor’s Stop Drawing Dead Fish presents a similar frustration as his Brief Rant. It describes how so much of intellectual activity these days is “just the body hunched over a rectangle.” Even this past week, for me, I’ve mainly been reading and writing to learn.

Also, scrolling, scrolling, scrolling…

Screen Shot 2017-09-13 at 12.44.00 PM.png

Victor notes, visions are important. And as Crawford emphasizes, definitions also (but not too much). I like thinking about how we privilege certain definitions of concepts, and what that does to people’s imaginations. If you think about “work”; if you think about “intelligence”; a huge part of how those things look in our imaginations now includes some kind of rectangles. It privileges more passive media, and this kind of low-level interaction.

These points in our imagination matter. Not only do they define innovation, but also they affect how people see themselves when they can and can’t access the dominant technology.

So, what’s beyond flat-land? What are some possible answers to Victor’s plea?

I don’t have a solution either. It doesn’t make sense to abandon one path over the other. We’ll have to decide for ourselves where certain formats make more sense, instead of assuming digital defaults. Like Victor noted, screens are not the best and also not the easiest thing. And besides— does it always make sense to make things as frictionless as possible, as noted in Crawford’s analysis of HCI?

Screen Shot 2017-09-13 at 12.42.45 PM.png

A professor of mine noted, “A guitar is quite a cruel interface.” But this doesn’t mean it’s ineffective, or a lousy interaction. Guitars require getting used to, but in return they can be expressive, and rich.

(I remember this examples especially since I had just started teaching myself guitar then. Slowly and painstakingly!)

People are complex interfaces too. So are cities. We’ve just spent so much time learning them. I don’t know if computers are inherently more challenging than either other these things.

Screen Shot 2017-09-13 at 12.45.42 PM.png

I come from a design background where we prioritize “easiness” and “intuitiveness” in our software for the masses. At least in my old job, we often imply that the user was frantic, impatient, dumb. We had to optimize our design like interface baby food. Which makes sense, if the only thing you have to differentiate yourself from your frantic competitors is your on-boarding experience.

Is that what we want interaction design to be?

I don’t want to diminish ease of use. But I also want to be extra careful that prioritizing “easy-to-use” does not strip away potential opportunity for interesting new things. I don’t think computers always need to “be like the real world,” or “be like humans,” if that’s our familiar territory for interactivity. Skeumorphs help ease concepts, but we’ve always been able to go further.

New interactions—ones that respect, challenge, or humor the body—could offer us a richness of imagination. They could encourage new kinds of literacy. There’s something about diverse sensory interaction that can affect us more emotionally.

I once met a woman who only learned to read at age 21, because of a severe dyslexia. When she finally picked up reading, it was through dancing. Up until that point, she had internalized this idea that she was stupid, or wrong, because she didn’t have the same linear relationship with knowledge that many people did.

To her, I wonder if reading gave her the same kind of pain that interacting with computer abstraction gives some people. Maybe it felt like grasping at something that could not respond and didn’t care to listen.


“stop eating lambs”

one of my favorite computational art projects.

Otoro’s Chinese Characters uses neural nets to warp existing material (language) in ways human brains would never think to. I’m not one to mystify creativity as some sacred, uniquely human act! If all creativity is, is taking existing material, changing it through the filter of our unique experience, then the computer is doing exactly that.

It reminds me of artist Xu Bing, who is well-known for his Book from the Sky—an installation of thousands of fake Chinese characters that look visually Chinese, but have no real meaning.

Screen Shot 2017-09-11 at 12.50.38 AM.png

These new words, on the other hand, have… some kind of semantics? Dream on, computer! You are a poet actively contributing to our culture and lexicon.

ICM Week 1

Computers! Why should we all learn to talk to them?

Sure, it could get you a cushy job. But what more is there on a cultural level if we imagine every single person thinking computationally?

The most compelling argument I’ve encountered so far comes from Seymour Papert, the co-inventor of the LOGO programming language and Turtle. He wrote Mindstorms (which I think everyone interested in education should read.)

Kids draw geometric shapes by telling an onscreen “turtle” what to do.

Programmatic thinking directly aligns with my excitement towards making education more creative and active. And by active, I mean that a young person has direct dialogue with a very powerful tool. She can access knowledge and create knowledge herself. She can fix problems herself. In very few other parts of life are we encouraged to debug failure.

Another very powerful example of computers as a creative haven is Minecraft. That, in fact, is its own universe unbound by conventional physics. What’s most impressive to me is how Minecraft is not only its own virtual world, but how incredibly generative it is as a group of people. Not only have young people built their own functioning computer, but they have also created communities that are hierarchically flat, and self-regulated. That is pretty amazing.

The TLDR? –> Computers can make some cool, unexpected stuff. It’s even more exciting when computers make entire communities more confident as creative people. đź’–

Before I have the skills to push that vision along, let’s just appreciate this Nyan cat for now.

Screen Shot 2017-09-10 at 12.16.18 AM
See the original sketch.

This was my 2nd drawing. My first drawing was this Mona Lisa, which initially created without variables. That slowed everything down, because I would reposition everything ad nauseum.

Variables helped so much with Nyan Cat because I could position parts relative to some base element (the poptart body) rather than (0,0).

The most difficult part of this was the rotation of the tail. It drove me up the wall because I could not intuitively “get” what axis it was turning around.


I tried using the “translate();” function to control the rectangle’s x, y position while it was rotating. This worked, but then it subsequently translated every other part of the cat. (If anyone knows how to make multiple rotations without tearing hair out, pls help.)

In this term I hope to make something driven by fun and creativity; ideally, it would be a tool that people could use for drawing, or building something silly. Maybe it interacts with hardware, or becomes a game which relies on creativity. It would be the first step towards my Turtle dream, at least.