Knowing It and Seeing It

Posted in Uncategorized on June 1st, 2014 by Toby – Comments Off

From Alan Kay, Powerful Ideas Need Love To!,

Let me start the conversation by showing a video made by the National Science Foundation at a recent Harvard commencement, in which they asked some of the graduating seniors and their professors a few simple questions about what causes the seasons and the phases of the moon. All were confident about their answers, but roughly 95% gave explanations that were not even close to what science has discovered. Their main theories were that the seasons are caused by the Earth being closer to the sun in summer, and that the phases of the moon are caused by the Earth’s shadow. Some of the graduates had taken quite a bit of science in high school and at Harvard. NSF used this to open a discussion about why science isn’t learned well even after years of schooling. And not learned well even by most of the successful students, with high SATs, at the best universities, with complete access to computers, networks, and information.

My reaction was a little different. I kept waiting for the “other questions” that NSF should have asked, but they never did. I got my chance a few weeks later after giving a talk at UCLA. I asked some of the seniors, first year graduate students, and a few professors the same questions about the seasons and the phases of the moon and got very similar results: about 95% gave bogus explanations along the same lines as the Harvard students and professors. But now I got to ask the next questions.

To those that didn’t understand the seasons, I asked if they knew what season it was in South America and Australia when it is summer in North America. They all knew it was winter. To those that didn’t understand the phases of the moon, I asked if they had ever seen the moon and the sun in the sky at the same time. They all had. Slowly, and only in a few, I watched them struggle to realize that having opposite seasons in the different hemispheres could not possibly be compatible with their “closer to the sun for summer” theory, and that the sun and the moon in the sky together could not possibly be compatible with their “Earth blocks the suns rays” theory of the phases.

To me NSF quite missed the point. They thought they were turning up a “science problem,” but there are thousands of science “facts” and no scientist knows them all; we should be grateful that the Harvard and UCLA students didn’t “know the answers.” What actually turned up is a kind of “math problem,” a thinking and learning problem that is far more serious.

Why more serious? Because the UCLA students and professors (and their Harvard counterparts) knew something that contradicted the very theories they were trying to articulate and not one of them could get to that contradictory knowledge to say, “Hey, wait a minute…”! In some form, they “knew” about the opposite seasons and that they had seen the sun and the moon in the sky at the same time, but they did not “know” in any operational sense of being able to pull it out of their memories when thinking about related topics. Their “knowings” were isolated instead of set up to be colliding steadily with new ideas as they were formed and considered.

From Julian Jaynes, The Origin of Consciousness in the Breakdown of the Bicameral Mind (pg 389-91),

If a hypnotized person is told to walk across the room, and a chair has been placed in his path, and he is told that there is no chair there, he does not hallucinate the chair out of existence. He simply walks around it. He behaves as if he did not notice it — which of course he did since he walked around it. It is interesting here that if unhypnotized subjects are asked to simulate hypnosis in this particular situation, they promptly crash into the chair, since they are trying to be consistent with the erroneous view that hypnosis actually changes perceptions.

Hence the important concept of trance logic which has been brought forward to denote this difference. This is simply the bland response to absurd logical contradictions. But it is not any kind of logic really, nor simply a trance phenomenon. It is rather what I would prefer to dress up as paralogical compliance to verbally mediated reality. It is paralogic because the rules of logic (which we remember are an external standard of truth, not the way the mind works) are put aside to comply with assertions about reality that are not completely true…

It is paralogic compliance when a subject can accept that the same person is in two locations at the same time. If a hypnotized person is told that person X is person Y, he will behave accordingly. Then if the real person Y walks into the room, the subject finds it perfectly acceptable that both are person Y.

I can’t help but notice the spatial rather than merely logical contradictions in these examples: the seasons in the northern and southern hemispheres, seeing the moon and the sun simultaneously, walking around the nonexistent chair, a person in two places at once. We see one “area” of reality, and we see some other “area”, but we don’t see the two areas together, at once.

Unfortunately, we “learn” many facts the way the hypnotized patient “learns” that the chair does not exist or that person X is person Y. We’ll readily agree to the truth of the fact (proof by authority in this case), but we won’t see the fact in relation to the other ways we understand the world. We see many small pictures, but cannot change our perspective to see the pictures in relation to each other.

How can we combat our tendency to “deny” these contradictory perspectives?

First, we need to place our “knowledge” in an experiential setting, rather than a verbally-mediated setting. Schooling encourages us to file our knowledge via labels. We recall facts when prompted with “keywords”; the “key” unlocks the otherwise isolated knowledge. This mental organization encourages us to reason by verbally associating via the labels (”there’s too much crime, so we need more police”), rather than seeing a system of interrelated parts. You can challenge this tendency in your own thought by eliminating the verb “to be” from your vocabulary. This exercise unearths label-based reasoning.

Second, we need to improve our ability to see more at once. We can “enlarge” our mental space by challenging our imagination. Can you see how the tilt of the earth creates the seasons as it revolves around the sun? When you look at the moon, can you relate the earth, moon, and sun in your mind’s eye? (I have trouble with this one.) We also enlarge our mental space by externalizing it: drawing diagrams, making physical models, putting pictures on the wall. We get very powerful leverage by inventing new spatial representations. Our “picture” of the world changed with the invention of the map.

Degrees of Freedom: Constraints and Creativity

Posted in Design, Life on January 10th, 2014 by Toby – Comments Off

Movement is vital to living systems. Movement allows feedback, which corrects imbalances.

Paradoxically, productive movement is created by constraining movement. Block movement in one direction and it becomes stronger in another direction. Constraints channel movement, creating flow.

Creative constraints (scope, requirements, deadlines, etc.) tend to amplify creativity. Like a beaver’s dam diverting a river, constraints divert creative energy to previously inaccessible places.

We see the interplay between movement and constraint in our bodies. We have soft, flexible flesh which can move in many directions and hard, rigid bones which structure this movement. One or the other on its own would be useless; the interplay creates the versatility.

We also use this principle in design. We constrain the possible movements of an object until the remaining degrees of freedom are the useful ones. For example, the levered doorknob is a single degree of freedom which suggests how to use it. Once turned, this unlocks a new degree of freedom to rotate the door on its hinge. All the other degrees of freedom (lifting the door up, pulling out the doorknob, etc.) have been constrained away, allowing the design of the object to inform its usage.

If we are clever in providing only useful degrees of freedom to channel energy, we can design objects of great versatility. For example, a bike’s handlebars provide a single degree of freedom. This constraint channels the human power via the pedals to create a rich space of mobility.

Stewart Brand explains the spectrum between movement and constraint as the fast and slow parts of a system:

The combination of fast and slow components makes the system resilient, along with the way the differently paced parts affect each other. Fast learns, slow remembers. Fast proposes, slow disposes. Fast is discontinuous, slow is continuous. Fast and small instructs slow and big by accrued innovation and occasional revolution. Slow and big controls small and fast by constraint and constancy. Fast gets all our attention, slow has all the power. All durable dynamic systems have this sort of structure; it is what makes them adaptable and robust.

So how can we use constraints to productively channel our energy? Here are a few ideas:

Use constraints to focus energy. A good example of this is Edward de Bono’s Six Thinking Hats process for structuring a group discussion. He identifies six different modes of thought that people tend to use and makes them explicit (by naming the hat). Each “hat” is then worn in turn by the entire group at once. In this way the group mind is channeled in one direction at a time. Participants amplify each others’ ideas along each of these dimensions as each dimension becomes the group focus.

An intention is a constraint which aligns your thoughts toward a single focus. Think of a well-formed intention like a lens directing the sun’s rays. Like the quality of a lens, the quality of an intention is its form. How well does it direct energies from different directions toward its focus?

A concrete, external representation is the physical analog of an intention. An outline is a constraint on the finished essay, a to-do list is a constraint on the series of actions, a blueprint is a constraint on the final object. We build these representations to fix a big picture, which then lets us concentrate in turn on each detail without the rest of the project slipping away. Representations are useful as individual aids to channel our fluid mind and indispensable for channeling collaborative energy.

Use constraints to create clarity. Often as energies accumulate, they need to be organized into coherent streams. This is like taking a pool of flesh and adding the bones. Often this process takes the form of creating a new vocabulary. By creating a framework of names, ideas are constrained to relate to the vocabulary in explicit ways. Nebulous ideas crystalize onto these names.

Recognize that constraints create freedom. Sometimes we feel like we’re stuck, blocked in by obstacles. But if you’re alive then you have vital energy and it is going somewhere. Often just being aware of this gives you enough leverage to consciously change how your energy is flowing. Recognize that to get around constraints sometimes requires intentionally creating additional constraints to effectively channel your energy.

Recognize that constraints coevolve with movement. As the water flows, it alters the landscape, which in turn changes how the water flows. Sometimes the flow reinforces the constraint, deepening it. Sometimes a constraint outlives its usefulness and the flow erodes it away.

No Modes vs Buy More Modes

Posted in Uncategorized on December 29th, 2013 by Toby – Comments Off

Some thoughts on Jef Raskin’s Canon Cat.

From one perspective, Jobs and Raskin ended up going down two opposite paths.

Raskin emphasized that “modes” were a major cause of UI problems. Essentially you want a UI that the user can habituate to as strongly as possible, so that all one’s attention can be focused on the actual task and all of the administrivia you need to do tell the computer your intention are handled subconsciously. Like touch typing at a higher level.

The issue with modes is that they break habituation. If performing a given UI gesture does one thing in one mode and another thing in another mode, you can’t make that gesture a habit. For example: Cmd+Z is a conventional gesture that many applications interpret as undo. If the keyboard shortcut changed between applications (or worse Cmd+Z meant something else in another application/mode), it wouldn’t be so habitual and you’d be less productive.

Raskin was very serious about no modes. The Cat for example didn’t even have an on/off mode. It would go to sleep to save power, but if you started typing it would buffer all your key strokes and have them in your document by the time the thing woke up. That is, you didn’t have to switch from off mode to on mode! And because you were always in a document (that is, there were no separate application modes), you knew that typing some words always did the same thing, so the scheme really worked.

On the other hand, Apple has really pushed, especially since iOS, on the “App” model. Applications are, of course, giant modes. And the strategy has been to push a separate App (mode) for every single use of the machine. So rather than learning a few powerful gestures and then combining them to do disparate tasks, users need to learn a separate, surface-level gesture complex (App) for each individual task they want to do on their machine.

Which is more efficient or appealing? On what time scale of use?

Did Apple end up this way because Apps are a more natural fit for a consumerist model? “Want to do this task with your machine? Don’t bother figuring out how you can do it yourself. There’s an App for that!” No Modes vs Buy More Modes?

Raskin’s book, The Humane Interface, talks extensively about his UI design philosophy. In addition to explaining the above problems with modes, he discusses how to actually design a computer system with no modes (I believe an elaboration of what he did with the Cat). He also explains other really important UI principles and their ramifications, for example, “The user’s data is sacred” (hence undo).

PS:

Raskin’s definitions: A gesture is defined as an action that can be done automatically by the body as soon as the brain “gives the command”. So Cmd+Z is a gesture, as is typing the word “brain”. What constitutes a single gesture will be different depending on the user! A mode is defined as any situation not at the user’s locus of attention that would cause a gesture to perform an action different from another mode. So “pseudomodes” where the user holds down a modifier key or holds the mouse button while performing a drag gesture get around this since they keep the user’s locus of attention on the fact that they are performing the pseudomode.

I think both the above definitions are still a bit problematic but Raskin’s definitions are better than any other that I’ve heard. I hope there are more people who study and discuss these deep UI design issues! What do you think about modes?

The Last Taboo

Posted in Uncategorized on December 22nd, 2013 by Toby – 1 Comment

Sex was a taboo of a previous generation. Normal people don’t think about sex. If you think about sex then you’re not a good person and you should feel ashamed. You need to get control of your mind and stop thinking about sex! Looking back we can see that this was just a guilt complex, a combination of obsession and denial.

Laziness is the taboo of our generation. I hope future cultures will look back and see that we were obsessed with working all the time. Anyone who wasn’t working enough felt ashamed. Be more productive! Your worth as a person is only as good as your job title / how much money you make / however you fit in to the production-consumption system.

I’m not saying people should do no work. I think people should work when they feel like working. But overworking is what causes a lot of problems. That’s when people get stressed out and start treating each other badly. Or maybe blaming other people because they’re not working enough. I have to do all the work around here!

Checking your email is working. As is maintaining your status within social networks. Unread messages! Have to read them and process them!

Whenever you feel like you don’t have enough time to do all the things you “have” to do you are working.

It’s hard to stop working so much. We’re conditioned to always think about working. If we’re not working we feel like we’re falling behind.

If you feel like maybe you’re working too much but you can’t stop, you can’t bear to feel like you’re lazy, then a good antidote is play. Try to find more play in your life. Eventually the play will help you transition to spending time without doing anything in particular and not feeling bad about it.

Overworking really is a problem! It’s like overplanting a field and not letting the soil recover.

In 1932 Bertrand Russell wrote a great essay called In Praise of Idleness. England was just starting to recover from the Industrial Revolution. That was the period where people working the longest and the hardest. Poor people especially, but also the rich people. Everyone worked way too hard and it sucked! People thought they were making progress but it was really a very dark time, more so than the Middle Ages in many ways. There are still places in the world where the Industrial Revolution is still happening, but the developed world was coming out of it by 1932.

Russell’s essay is very optimistic. He realizes that most of our production has been going toward things we don’t need. He predicts that as society reorganizes itself, people can start having more leisure time. Everyone can work 4 hour days. The time that previously only the “leisure” class had, to develop themselves personally and culturally and discover things about the world, that time can be had by all.

“Athenian slave-owners, for instance, employed part of their leisure in making a permanent contribution to civilization which would have been impossible under a just economic system. Leisure is essential to civilization, and in former times leisure for the few was only rendered possible by the labors of the many. But their labors were valuable, not because work is good, but because leisure is good. And with modern technique it would be possible to distribute leisure justly without injury to civilization.”

If you think this would be a better way for all of us to live, I think the key to realizing it is finding an alternative value system other than identifying our human worth based on the work we do. This is difficult. Most people have no idea how to understand their place in the world except in relation to their job. Who am I? I’m a __role__ at __institution__.

So I think the most valuable thing you can do to challenge this taboo is to find something that you know is important in the world. This is personal. Not something someone else says is important, something you know is important. Keep this in mind when you judge yourself and others and it will put things in perspective!

Transparent Computers

Posted in Technology on November 11th, 2013 by Toby – Comments Off

I’m reading Belinda Barnett’s excellent history of hypertext, Memory Machines.

The second chapter, on Vannevar Bush, has so many excellent bits of historical context which I was unaware of.

First, the term “computer” originally referred to a profession.

I’ll tell you what a computer was in [the 1940s]. It was an underpaid woman sitting there with a hand calculator, and they’d have rooms full of them, that’s how they got their computing done. So you’d say, ‘What’s your job?’ ‘I’m a computer.’ (Doug Engelbart interviewed by Henry Lowood 1986)

Bush developed some of the first computing machines. In particular, the Differential Analyzer solved differential equations which were (among other things) necessary for calculating ballistics. The military’s contracting of MIT for devices like this was the start of the partnership between defense and academia which would lead to ARPA, etc.

102618648-03-01

I was particularly attracted to a passage in which Bush describes how he developed respect for a mechanic he worked with, who developed an understanding of differential equations solely through working with the machine.

I never consciously taught this man any part of the subject of differential equations; but in building that machine, managing it, he learned what differential equations were himself […] [It] was interesting to discuss the subject with him because he had learned the calculus in mechanical terms – a strange approach, and yet he understood it. That is, he did not understand it in any formal sense, he understood the fundamentals; he had it under his skin. (Bush cited in Owens 1991, 24)

This type of understanding is one of the true joys of programming. When you really wrestle with a problem, you can almost feel the shape of it, you know it viscerally, “under the skin”. This way of knowing is the heart of Seymour Papert’s project: put a kid in “Math Land” and she’ll learn math as naturally as a kid in France learns French. So this recognition by Bush is a very early understanding of the profound cognitive effects of computing technology.

This understanding crops up again, of course, in Bush’s Memex. But until I read this chapter by Barnett, I didn’t fully appreciate that the Memex was imagined entirely in the analog paradigm.

I can’t help but wonder if we collectively lost a great deal of visceral understanding in the past 60 years through the dominance of the digital paradigm. The mechanism of the Differential Analyzer reminds me of the style of geometric proofs that can be found in old math books but which are absent from present day curricula. Barnett remarks that the Differential Analyzer was “mathematically transparent”. You could watch it “think”, its memory was physically “held”, it drew its answers as curves.

This reminds me of a passage from Ivan Illich’s Tools for Conviviality. Illich begins by talking about hand tools, tools which directly amplify human power, such as levers. Then tools which are partly human powered and partly use power we “harness”, such as chainsaws. Then tools in which the human power is absurdly dwarfed by the harnessed power, like a modern jet plane. Illich remarks, “The pilot is reduced to a mere operator guided by data which a computer digests for him. The machine needs him for lack of a better computer; or he is in the cockpit because the social control of unions over airplanes imposes his presence.”

Illich worried that our tools tend to grow into institutions which use us (manipulatory tools) more so than tools which we can use to express our autonomy (convivial tools). Any tool, high or low tech, can in principle be convivial or manipulatory, Illich says, but the contrast between hand tools and power tools is useful for seeing the difference.

Tools foster conviviality to the extent to which they can be easily used, by anybody, as often or as seldom as desired, for the accomplishment of a purpose chosen by the user. The use of such tools by one person does not restrain another from using them equally. They do not require previous certification of the user. Their existence does not impose any obligation to use them. They allow the user to express his meaning in action.

This directness, “they allow the user to express his meaning in action”, is what makes “transparent” tools convivial.

Curious Objects

Posted in Uncategorized on October 13th, 2013 by Toby – 3 Comments

A ball is more curious than a chair. A chair usually stays put, but a ball gets bored of where it is and rolls somewhere else.

Water is more curious still than a ball. Like a ball, it doesn’t let friction slow it down so much, and it’s also very curious about finding spots closer to the center of the earth. It also evaporates, becomes a cloud, and then explores other places.

I don’t count air as curious because even though it tends to go everywhere, it doesn’t really favor one place over another. It’s expansive but not curious. Curiosity is about exploring new situations, while still maintaining some structural integrity. Do you agree with me about air not being curious?

A cat is more curious than water, even.

Singular Plural

Posted in Life, Totem on March 7th, 2012 by Toby – 1 Comment

When do we use the singular plural form of word?

Fish. Water. Information. Electricity. Mist. Air. Everything.

I think we use this form when we think of word as fluid, as opposed to solid or discrete entity. It makes no sense to talk of an individual water, because as a fluid, water can be divided indefinitely. It makes no sense to track an individual water, as one water gets replaced by another water continuously. As they say, you can’t step in the same river twice.

What is it like to see everything in a continuous state of becoming? We’d see only fluid.

As a language exercise, drop all plural form of word. See the thing around us as fluid.

Haiku Wifi

Posted in Art, Programming, Standards, Technology on January 30th, 2012 by Toby – Comments Off

Haiku Wifi is a neighborhood bulletin board, hosted on a router, living in the wireless cloud.

When you’re in the area and you search for wifi, you’ll see the haiku listed as network names. If you connect to the haiku network and go to any web site, you’ll see a web page where you can enter a new haiku.

Haiku Wifi is entirely self-contained on a hacked commodity wifi router. Full details and source code are up on Github.

Jonathan Dahan (check out his other hack) and I created Haiku Wifi for Art Hack Day at 319 Scholes. We exhibited it at the public opening on Saturday as the router itself, on a pedestal with instructions for visitors.

In doing this hack–and in conversations with Jonathan, Bryan Newbold, and Sean McIntyre (who lent us the router for this project)–I realized the growing importance of hacking and understanding the invisible radio signals that we use to communicate.

I believe that 2012 will be the year we reclaim our networks. The SOPA battle of a few weeks ago is a harbinger of a growing awareness that no centralized structures can be fully entrusted with our communication; even the United States cannot guarantee an open internet. The MegaUpload shutdown and Google’s new privacy policy will further push people to take control of their own data and communication.

The internet–that is, the protocols that define the internet–were created with these principles in mind. The internet was designed as a decentralized communications network with no single point of failure.

When the internet became popular in the 90s, it was presented to the mainstream as a consumption channel, like TV and radio. In the 00s, with YouTube, blogs, and social networks, we saw people pushing content back into the network. In this decade I hope to see people altering the topology of the network itself. This capability is entirely realizable with the technology architecture we have, as demonstrated by this simple 48-hour hack.

And in addition to reclaiming our network, we were able to collect some great haikus! Thanks to all the visitors who contributed!

Morning sunset on seashore
Trampoline rising hart with u
Someday waves will wake us..

obtaining IP
address from haiku wifi
you are now connected.

Under my haiku
The frog map does say drop do
Now we are frozen

Hello bromo do
You have a nice face and hand
Bodies are so weird

Juliadam mosellera
Pizzarty brocolini
Loveblur

Lost in wifi sea.
Too much weed, how to haiku?
Im no good at this.

Im at an art show
It is full of artsy nerds
Im pretty happy

Myriad lighted LEDs
Unexplained art
Thousand kinds

Sphere of Water

Posted in Art, Project Development Studio (Marina Zurkow) on January 29th, 2012 by Toby – Comments Off

I built this piece for Art Hack Day this weekend at 319 Scholes.

I have been doing work with mirrors for about a year. This “analog” work is inspired by and co-evolves with my digital video work (e.g. interactive video installations with cameras and projectors/screens). I think of interactive art work as pieces which take information from the environment, process or transform that information, and then output information back to the environment (e.g. on a projector, screen, speaker, etc). The advantage of using mirrors for this work versus a camera, computer, and screen is that less information is lost in the transformation. Mirrors have maximum resolution, minimum latency, and critically preserve the intensity and angle of light. That is, when you see an object in a mirror it still looks 3D and real–like you could grab it–unlike seeing a picture of an object on a screen.

I’ve had the idea for Sphere of Water for several months. I had built computer visualizations and janky prototypes. I don’t consider the Art Hack Day version finished, but I do consider it above the critical threshold where the viewer sees it–on first impression–as the intended representation. As I was building my first prototype on Friday out of mylar, people would come by to see it and they’d stare for a few moments and then say “Oh, I see the sphere”. That is, they initially saw the materials and had to look for the intended representation. But by the end of the hackathon I had gotten above the threshold where this is reversed–where people initially see the sphere and then have to examine the contraption to see how it “actually” works.

To do this–to create a successful illusion–you need to take into account the cues that people use to make sense of the world. In this case, the tapered kaleidoscope creates the 3D geometry (the tapering bends the kaleidoscopic infinite plane into a sphere). The water is moved with a pump and lit in such a way that only the surface is visible, so that people don’t look into the water. Next a mirror at 45 degrees is placed above the kaleidoscope to reorient gravity. The cue that gravity points down is very strong in people. For the Sphere of Water, due to this 45 degree mirror, gravity points forward. Finally, the illusion only works from certain angles so I obscured much of the contraption and cut a “window” through which to see it. I also installed the piece in a small dark room (janitor’s closet) at eye level to make these concessions feel natural.

The result is that these perceptual cues cause people to see something which collides forcefully with their model of the world. To reconcile this collision, viewers need to consciously or subconsciously reexamine their system of perception and/or their model of the world. Rebuilding our view of the world is the purpose of art, as far as I can tell.

The people and resources that 319 Scholes brought in for this hackathon were very helpful for production. I made several trips to chinatown for materials–mylar, front-surface acrylic mirrors, and water-proof LED ribbon (it’s so helpful that these materials can still be acquired a few subway stops away, without having to buy online). I used the laser cutter provided by Fabricator’s Guild to cut the mirror to the exact angles that I needed, and to cut the foamcore supports. Many of the materials were shared and repurposed by other participants in the hackathon. Nova Jiang and Olov Sundstrom used my leftover mylar to create a beautiful light box to display their 3D fabricated sculptures.

There was lots of cross collaboration on projects. Also over the weekend I built Haiku Wifi with Jonathan Dahan. I helped various people with coding their projects, and also received advice about materials and mechanics on Sphere of Water–what glue do I use to waterproof the lights, how do I keep the pump from flipping over, etc. Sofy Yuditskaya, art materials genius, was especially helpful.

The mix of backgrounds present in this community are extremely powerful. I come from a more technical background (math and computer science), so I’ve learned so much from people with more art, design, and architecture backgrounds about how to effectively deliver a concept to viewers. When you’re dealing with lots of technicalities you sometimes miss the human factors like scale, putting things at eye level, understanding how people flow through a room, and other details which really make a piece work. This combination of disciplines along with a powerful drive to create new realities is the most exciting thing happening in New York City!

Quasicomposer

Posted in Art, Programming, Quartz Composer, Science, Video on December 31st, 2011 by Toby – Comments Off

Here is a Quartz Composer / Core Image port of the animated quasicrystals that have been going around recently.

It runs in realtime at 60fps at 1440×900 on my old Macbook Pro.

Unfortunately the video compression really kills this :’(

Here’s the source code for the Core Image kernel. It’s very simple!

Or download the Quartz Composer file.