Compiling the Conscious Brain

Error!

Ars Technica had a great post this week about the differences between compiled and interpreted code, and why some computer languages are faster than others.

If you’ve ever wondered how a compiler works, or why someone might choose C++ for a project rather than Python this is a great read.

This compilation process has several steps. The source code is analyzed and parsed. Basic coding mistakes such as typos and spelling errors can be detected at this point. The parsed code is used to generate an in-memory representation, which too can be used to detect mistakes—this time, semantic mistakes, such as calling functions that don’t exist, or trying to perform arithmetic operations on strings of text.

This in-memory representation is then used to drive a code generator, the part that produces executable code. Code optimization, to improve the performance of the generated code, is performed at various times within this process: high-level optimizations can be performed on the code representation, and lower-level optimizations are used on the output of the code generator.

I’m not a programmer (not mostly, anyway) but this definition makes sense to me. Essentially, compiling code in advance saves time so that the program runs faster later.

What is interesting to me is that the human brain functions very similarly. We are hard-wired to interpret and react to certain types of information much faster than others. In particular, we interpret images and sounds faster and react more emotionally to them than to textual data. These types of information are processed by different hemispheres of the brain.1

“In a real sense, we each have two brains,” writes Dr. Martin L. Rossman.  “One thinks as we are accustomed to thinking, with words and logic. The other, however, thinks in terms of images and feelings.”

One of the chief difference between right-brained (emotion, imagery, sound) and left-brained (text, logic, mathematical computation) information processes is their speed; the human brain processes and reacts to right-brain information types almost immediately, while left-brain information requires sequential processing. Think about how long it took to read this article. Then think about long you spent looking at the brain illustration graphic. Although you almost certainly spent longer reading the text than looking at the illustration, when measured in bytes, the illustration contains 97.75 times as much information as the text. (That’s 4KB vs. 391KB.)

If you think the analogy above is far-fetched, think about traffic signs. Why do the most important road signs and signals use colors, shapes, and symbols in place of or in addition to words? In large part, it’s because drivers react more quickly to pictures than to words, and that extra second or two might save somebody’s life.

This makes sense from an evolutionary standpoint — if you see a snake moving through the grass, you need to be able to jump back. If you hear an infant wail in distress, that sound had better be the most piercing and unpleasant thing you could possibly imagine. Written language wasn’t even invented as a technology until about 5,000 years ago (mathematics even more recently) so it kind of has to take a back seat to the survival traits that got our ancestors through life as hunter-gatherers.

Today, the bulk of human communications do not happen by accident. Instead, they are mediated, organized, and planned by the industries we know as marketing, propaganda, advertising — and of course, design. Appeals to the right brain can be powerful and subtle. Because citizens are not trained to evaluate or analyze right-brain “coding techniques,” these techniques lend themselves to manipulation and abuse by hidden persuaders — usually those with power and money.

But no technology is good or bad — it’s all in how we use them. Images, sounds, video and other “pre-compiled” right-brained media are incredibly effective at communicating information quickly and reaching people on an emotional, gut level. Just as one might choose node.js for one project, or C++ for another, images, video, and sound are not the best technology for every situation or to convey every type of information, but they are a powerful tool in the hands of those who have the skill and awareness to wield them.

http://www.nobelprize.org/educational/medicine/split-brain/background.html

Gone Mobile!

There is a very good chance you are reading this post on a phone.

According to the most recent Pew Internet Project Mobile Technology Fact Sheet:

  • As of May 2013, 63% of adult cell owners use their phones to go online.
  • 34% of cell internet users go online mostly using their phones, and not using some other device such as a desktop or laptop computer
  • 30% of cell phone owners have used their phone to decide whether to visit a business, such as a restaurant, in the past 30 days.
  • 58% of American adults own a smartphone
  • 42% of American adults own a tablet

Read more…

Creative Commons

A Series Showcasing Real-Life Examples of Art Meeting Code (Part 4 of 4)

Choosing the final installment of this series was difficult. We had a lot of strong contenders: a pro bono event that brought designers and programmers together, a young adult novel about cryptography — even the classic video game, Myst.

Instead, we chose to feature a tool that literally involves art meeting code — Creative Commons, a way for artists to share their work on their own terms, while still retaining copyright:

Creative Commons “Wanna Work Together” from Ryan Junell on Vimeo.

It’s a simple piece of HTML that anyone can post into their own website or blog, and it spells out in plain language exactly what uses are permitted and permitted — for instance, noncommercial use, use with credit, derivative works or “remixes,” etc.

Sample Creative Commons License

Sample Creative Commons License

It makes the implementation of a complex legal idea elegant, simple, and practical — a triumph of usability. More than that, the Creative Commons license was inspired by the Free Software Foundation’s GNU General Public License (GNU GPL) — the DNA of software’s Open Source Movement. You could say that Creative Commons was a very successful attempt to “port” the core concepts and principles of Open Source from the platform of software and engineering to new platforms of creative authorship (books, film, music, and visual art forms, among others).

The Internet economy is driven by content, yet artists and content creators are consistently at the very bottom of the food chain. From the likely demise of net neutrality to YouTube’s recent decision to block content from independent music labels, we are reminded that censorship does not need an authoritarian government to take hold — a corporate regime will do just fine.

Why might a license that allows free sharing be a step forward for artists? Because artists can reach a wider audience, while still retaining copyright and control of their own work. Specifically, they can negotiate better terms for commercial reuse of their work — for instance retaining rights to print, film, or television for a manuscript distributed online.

Artists who have released work under a Creative Commons license include Trent Reznor of Nine Inch Nails, and Randall Munroe, creator of the popular xkcd online comic.

Says Cory Doctorow, author of Little Brother (Tor Teen, 2010),

“For me — for pretty much every writer — the big problem isn’t piracy, it’s obscurity (thanks to Tim O’Reilly for this great aphorism). Of all the people who failed to buy this book today, the majority did so because they never heard of it, not because someone gave them a free copy…

The good news (for writers) is that this means that ebooks on computers are more likely to be an enticement to buy the printed book (which is, after all, cheap, easily had, and easy to use) than a substitute for it. You can probably read just enough of the book off the screen to realize you want to be reading it on paper.”

Fractals

A Series Spotlighting Real-Life Examples of Art Meeting Code (Part 3 of 4)

Peter King has been experimenting with fractals since the mid-1980s. Many of his designs take their input from nature and from human interaction — in the form of video camera inputs or a “Spirograph” style user experience — rather than from a fixed mathematical starting point. He invented a process to create fractals purely from video camera feedback — no computer necessary!

Video Fractal by Peter KingWhat is a fractal?

Forms that exhibit scalar self-similarity, combined with the fact that in-folding greater detail increases the measure of the geometry: The more convoluted a (one dimensional) line gets, the more it approaches filling a two dimensional plane, so the line exists in a fractional dimension, hence, fractal. Romanesco and Buddabrot are among my favorites.

Interactive Fractal, Program by Peter KingWhat got you interested in fractals?

Growing up, I loved to draw from my imagination and from life. As a senior in High School (1982), I was seduced by computer graphics, and wrote little programs on Apple II written in Basic. There was no command for a circle, so found out how sine & cosine are used to draw a circle with a for loop. It was all Euclidean geometry: First spirals and spirographs, then wrote a 3D wireframe program in Basic. But with all that focus on euclidean geometry, my drawings were getting really geometric, and I began missing the organic feel of natural structures.

Then in college a friend sent me an article on fractals and the mandelbrot set, and I was attracted by the psychedelic appeal, but also liked how well they described organic structures algorithmically. My math skills weren’t apt for fractal math, so I would draw fractals to help myself understand them. Just out of college I watched a NOVA episode on fractals and chaos theory, which gave a very simple description of how to draw a Sierpinski triangle, so after watching I went to my Amiga and wrote a basic program to do it, and then began tweaking the variables to see how it changed the fractals.

Fractal Artwork by Peter KingA couple years later, I was experimenting with video feedback. I really liked observing how it behaved similarly to cellular automata: There was chaotic emergence guided by recursive rules. I think the universe creates in a similar way, so engaging in creative process this immediate and responsive manner feels to me like collaborating with nature. Well, in these explorations, I wondered what would happen if I split the camera signal and sent it to two monitors. While I set things up, I realized it would make fractals, which was a very exciting realization. I refined the video fractal process by putting one video monitor behind a window, with the reflection of the second monitor superimposed. This creates very specific IFS fractals, but they pulse and throb with color and texture. Truly simple shamanic interactive television 🙂

When digital desktop video arrived, I switched to that medium, making versions with Max/MSP, Quartz Composer, and Flash. When the iPhone came out, I built a multitouch table, where the fractal is directly manipulated with multitouch gestures on affine transforms.

What preparation/skills did you need to acquire for these projects?

Programming skill progression: Basic, HyoerTalk (Hypercard), Flash Actionscript 3, Nodal noodle programming, such as Max/MSP, Pixelshox, Quartz Composer. Presently: HTML5 / css3 / javascript

Why create artwork that takes its inputs from outside phenomena (variables found in nature, interpolated by mathematical equations) rather than directly from the artist’s imagination?

I am fascinated by how nature designs, and by studying and imitating these processes, I feel like I am co-creating with nature.
Use the links below to check Peter King’s fractals — or make your own!