Page 1

THE MARRIAGE OF ART AND CODE


This book is intended to convey the message and concept of the conference <script> Book Title: [code] Subtitle: The Marriage of Art and Code on


THE MARRIAGE OF ART AND CODE


Š 2014 All rights reserved. No part of this publication can be reporduced without express permission from Tina Niu. on


00:01


INTRODUCTION

06

MEANDERING CODE

18

PERCEPTION SCRIPT

30

RHYTHM

42

SCHEDULE AT-A-GLANCE

44

CAMPUS MAP & GENERAL INFO

CONTENT

04

← ←

;F.prototype.k=f s.s)return D.k( ];this.i++;b!=t


02:03

document.getElementBy Id(a.id.substring(1)).href;return!0};(function(){'use strict' ;var e=this,h=Date.now||function(){return+new Date};var s=function(b,d){if(null===d)return!1;if("contains"in b&&1==d.nodeTy pe)return b.contains(d);if("compareDocumentPosition"in b)return b==d||Boolean(b.compareDocumentPosition(d)&16);for(;d&&b!=d;)d=d.parentNode;return d==b};var u=function(b,d ){return function(a){a||(a=window.event);return d.call(b,a)}} ,v="undefined"!=ty peof navigator&&/Macintosh/.test(navigator.userAgent),w="undefine d"!=ty peof navigator&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test(navigator.userAgent),z={A:13,BU TTON:0,CHECKBOX:32,COMBOBOX:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENU ITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:13,RADIO:32,RADI OGROUP:32,RESET:0,SUBMIT:0,TAB:0,TABLIST:0,TREE:13,TREEITEM:13},A={ CHECKBOX:1,OP TION:1,RADIO:1};var B=function(){this.o=this.i=null},E=function(b,d){var a=D;a.i=b;a.o=d;return a};B.prototype.k=function(){v a r b = t h i s . i ; t h i s . i & & t h is.i!=this.o?this.i=this.i.__owner||this.i.parentNode:this.i=null;return b};var F=function(){this.p=[];this.i=0;this.o=null;this.s=!1}

fu n c t i on(){if(thi ); i f ( t his.i!=this.p.length) { v a r b = t h i s . p [ t h i s . i hi s . o & &b& &b.__owner&&(this.s=!0,E(b.__owner,this.o));return b}return null};var D=new B,G=new F;var I=function(){this. w=[];this.i=[];this.o=[];this.s={};this.k=null;this.p=[];H(this,"_custom")},aa="undefined"!=ty peof navigator&&/iPhone|iPad

| i P od/.test(navigator.userAgent),ba=/\s*;\s*/,da=function(b,d){return function(a){var c=d;if("_custom"==c){c=a. detail;if(!c||!c._type)ret

urn;c=c._ty pe}var g;if("click"==c&&(v&&a.metaKey ||!v&&a.ctrlKey ||2==a.which||null==a.which&&4= =a.button||a.shiftKey ))c="clickmod";else{var k=a.which||a.key

beginRecord("nervoussy stem.obj.OBJExport", dateString+"_"+scaleFactor+"_"+"mrna"+".obj");

scale(1, 1, 1);

for (int i = 0; i < con text.pixels.length; i++) {

// data is an array analog to context pixels, it stores amount of draw-overs for every pixel.

int height = min(int(float(data[i]) * scaleFactor), context.width); if (height >=

1 && height < (float(context.width) *0.25)) {

int x = i % context.width;

int y = (i - x) / context.width;

pushMatrix();

translate(x,y, float(height)*0.5);

box(1,1,-height);

popMatrix();

}

}

endRecord();


<script> is a festival and conference concerned with the aesthetic, technical, tactical and cultural potentials of c o m p u t e r a r t - e s p e c i a l l y, b u t n o t exclusively, including the revolutionary coding languages. This highly interdisciplinary event brings together, for the first time, tinkerers and hackers, computational artists and designers, professional game developers, and l e a d i n g re s e a rc h e r s i n t h e f i e l d s o f computer vision, robotics and human c o m p u t e r i n t e r a c t i o n . H a l f m a k e r ’s festival, half academic symposium, <script> takes place November 212 3 a t C a rn e g i e M e l l o n U n i v e r s i t y i n Pittsburgh.

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■

INTRODUCTION

■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■■■■■■■ ■■■■■■■

■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■ ■■■■■■■■■■■

■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■


04:05

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■

■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■


PROGRAMMING PLAYS A HUGE ROLE IN THE WORLD THAT SURROUNDS US, AND THOUGH ITS USES ARE OFTEN PURELY FUNCTIONAL, THERE IS A GROWING COMMUNITY OF ARTISTS WHO USE THE LANGUAGE OF CODE AS THEIR MEDIUM. THEIR WORK INCLUDES EVERYTHING FROM COMPUTER GENERATED ART TO ELABORATE INTERACTIVE INSTALLATIONS, ALL WITH THE GOAL OF EXPANDING OUR SENSE OF WHAT IS POSSIBLE WITH DIGITAL TOOLS. dna = loaddata(); canvas = createCanvas(); for each letter in dna{ switch (letter) { case 't': currentPos.add(0,-1); break; case 'c': currentPos.add(1,0); break; case 'g': currentPos.add(0,1); break; case 'a': currentPos.add(-1,0); break; default: break; canvas.lineto(currentPos); }

To simplify the coding process, platforms and libraries have been assembled to allow co d e rs t o c u t t h ro u g h t h e n i t t y - g r i t t y o f p ro g ra m m i n g a n d fo c u s o n t h e c re a t i ve aspects of the project. These platforms all share a strong open source philosophy that encourages growth and experimentation, creating a rich community of artists that s h a re t h e i r st ra te g i e s a n d wo r k w i t h unprecedented openness.

MEANDER CODE

"The world around us in complicated and wonderful ways. We spend the earlier parts of our lives learning about our environment throug perception and interaction. We expect the physical world around us to behave consistently with our perceptual memory, e.g. if we drop a rock it will fall due to gravity, if a gust of wind blows, lighter objects will be tossed by the wind further. This class focuses on understanding, simulating, and incorporating motionbased elements of our physical world into the digital worlds that we create. Our hope is to create intuitive, rich, and more satisfying experiences by drawing from the perceptual memories of our users." Is Digital Art really art? It has been argued that digital art is not real art since it is computer generated and there are infinite copies and there is no â&#x20AC;&#x2DC;originalâ&#x20AC;&#x2122;. However it is now widely accepted as art since it involves creativity, and the knowledge of art and design principles. B y t h e 1 9 7 0 s , a n u m b e r o f a r t i s t s h a d b e g u n t o teach themselves to program, rather than relying on collaborations with computer programmers. Many of these artists came to the computer from a traditional fine art background, as opposed to the scientific or mathematical background of the earliest practitioners. Artists were attracted to the logical nature of the computer and the processes involved. In the early 1970s the Slade School of Art, University of London, established what was later called the 'Experimental and Computing Department'. The Slade was one of the few institutions that attempted to fully integrate the use of computers in art into its teaching curriculum during the 1970s. The department offered unparalleled resources with its in-house computer system. Paul Brown studied at the Slade from 1977 to 1979. His computer-generated drawings, use individual elements that evolve or propagate in accordance with a set of simple rules. Brown developed a tile-based image generating system. Despite using relatively simple fo r m s , i t wo u l d h a ve t a ke n a lo n g t i m e t o w r i t e a program to produce a work such as this.


08:09

RING

JAME S TU , DYNA MIC BODIES COURSE

DES CRIPTIO N, SPRING 2003, ITP


10:11

PROGRAMMING PLAYS A HUGE ROLE IN THE WORLD P ro g r a m m i n g u s e s a re o f t e n p u re ly f u n c t i o n a l , t h e re i s a growing community of artists who use the language of code as their medium. Their work includes everything from computer generated art to elaborate interactive installations, all with the goal of expanding our sense of what is possible with digital tools. To simplify the coding process, several platforms and libraries have been assembled to allow coders to cut through the nittygritty of programming and focus on the creative aspects of the project. These platforms all share a strong open source philosophy that encourages growth and experimentation, creating a rich community of artists that share their strategies and work with unprecedented openness.

<script> is a festival and conference concerned with the aesthetic, technical, tactical and cultural potentials of computer art â&#x20AC;&#x201D;

especially, but not exclusively, including the revolutionary coding languages. This highly interdisciplinary event brings together,

for the first time, tinkerers and hackers, computational artists and designers, professional game developers, and leading researchers

in the fields of computer vision, robotics and human computer interaction. Half makerâ&#x20AC;&#x2122;s festival, half academic symposium, <script>

takes place November 21-23 at Carnegie Mellon University in Pittsburgh.

beginRecord("nervoussy stem.obj.OBJExport", dateString+"_"+scaleFactor+"_"+"mrna"+".obj"); scale(1, 1, 1); for (int i = 0; i < context.pixels.length; i++) { // data is an array analog to context pixels, it stores amount of draw-overs for every pixel. int height = min(int(float(data[i]) * scaleFactor), context.width); if (height >=

1 && height < (float(context.width)

*0.25)) { int x = i % context.width; int y = (i - x) / context.width; pushMatrix(); translate(x,y , float(height)*0.5); box(1,1,-height); popMatrix(); } } endRecord();


d o c u m e n t . g e t E l e m e n t B y I d ( a . i d . s u b s t r i n g ( 1 ) ) . h r e f;return!0};(function(){'use strict';var e=this,h=Date.now||function(){return+new Date};var s=function(b,d) { i f ( n u l l = = = d ) r e t u r n ! 1 ; i f ( " c o n t a i n s " i n b & & 1 = = d . nodeTy pe)return b.contains(d);if("compareDocumentPosition"in b)return

b==d||Boolean(b.

c o m p a r e D o c u m e n t P o s i t i o n ( d ) & 1 6 ) ; f o r ( ; d & & b ! = d ; ) d =d.parentNode;return d==b};var u=function(b,d){return function(a){a||(a=window.event);return d . c a l l ( b , a ) } } , v = " u n d e f i n e d " ! = t y p e o f n a v i g a t o r & &/Macintosh/.test(navigator.userAgent),w="undefine O p e r a / . t e s t ( n a v i g a t o r . u s e r A g e n t ) & & / W e b K i t / . t e s t(navigator.userAgent),z={A:13,BU I T E M : 0 , M E N U I T E M C H E C K B O X : 0 , M E N U I T E M R A D I O : 0 , O P T I ON:13,RADIO:32,RADI

d"!=ty peof navigator&&!/

TTON:0,CHECKBOX:32,COMBOBOX:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR :0,MENU

OGROUP:32,RESET:0,SUBMIT:0,TAB:0,TABLIST:0,TREE:13,TREEITEM:13},A={

T I O N : 1 , R A D I O : 1 } ; v a r B = f u n c t i o n ( ) { t h i s . o = t h i s . i =null},E=function(b,d){var a=D;a.i=b;a.o=d;return a};B.prototy pe.k=function(){v

CHECKBOX:1,OP

ar b=this.i;this.i&&this.i!=this.o?this.

i = t h i s . i . _ _ o w n e r | | t h i s . i . p a r e n t N o d e : t h i s . i = n u l l;return b};var F=function(){this.p=[];this.i=0;this.o=null;this.s=!1};F.prototy pe.k=function(){if(thi

s.s)return D.k();if(this.i!=this.p.length){var b=this.p[this.i ];this.i++;b!=this.o&&b& &b.__owner&&(this.s=!0,E(b.__owner,this.o));return b}return null};var D=new B,G=new F;var I=function(){this.

w=[];this.i=[];this.o=[];this.s={};this.k=null;thi s.p=[];H(this,"_

c u s t o m " ) } , a a = " u n d e f i n e d " ! = t y p e o f n a v i g a t o r & & / i P hone|iPad

| i P o d / . t e s t ( n a v i g a t o r . u s e r A g e n t ),ba=/\s*;\s*/,da=function(b,d){return function(a){var c=d;if("_custom"==c){c=a.detail;if(!c||!c._ty pe)ret

urn;c=c._ty pe}var g;if("click"==c&&(v&&a.

8600

860076868688

86007686

DATA . 5756760006860

DATA . 5756760006860076868

DATA . 57567600068600768

G OE

860076868688

DATA . 5756760006860076868688

m e t a K e y | | ! v & & a . c t r l K e y | | 2 = = a . w h i c h | | n u l l = = a . w h ich&&4==a.button||a.shiftKey ))c="clickmod";else{var k=a.which||a.key


12:13

#include <Wire.h> #include <Adafruit_PWMServoDriver.h> A d a f r u i t _ P W M S e r v o D r i v e r p w m = A d a f r u i t _ P W M S ervoDriver();

#define SERVOMIN

1 5 0 / / 1 5 0 t h i s i s t h e ' m inimum' pulse

length count (out of 4096) #define SERVOMAX

6 0 0 / / 6 0 0 t h i s i s t h e ' m aximum' pulse

length count (out of 4096) uint8_t servonum = 0; int servototal = 8; void setup() { Serial.begin(9600); Serial.println("16 channel Servo test!");

pwm.begin(); pwm.setPWMFreq(60);

/ / A n a l o g s e r v o s r u n at ~60 Hz

updates } void loop() { // Get serial data if(Serial.available()) { servonum = Serial.read(); } Serial.println(servonum); / / l o o p t h r o u g h s e r v o s i f o n e e q u a l s s e r i al data then set position to "on"/max for(int i=0; i < servototal; i++) { if(i == servonum) { pwm.setPWM(servonum, 0, SERVOMAX);

} else { pwm.setPWM(i, 0, SERVOMIN); } } }


, [[ [ ` ` `’`’`[;[= = . .. ] \

‘ ; ; -- ``

}

en dR ec or d( );

}

po pM at ri x( );

pus hM at ri x( );

bo x(1,1 ,- he ig ht );

t ransl ate (x,y, float (he ig ht )* 0. 5) ;

w idth) * 0. 25 )) {

i nt x = i % co ntext.width;

int y = (i - x) / con te xt .w id th ;

scal eFa ctor) , c ontex t. wi dt h) ;

1 && hei ght < (f loat(context. if ( hei ght > =

in t hei ght = mi n(i nt(fl oat (d at a[ i] ) *

it s tor es am oun t of dra w-ove rs for e very pixel.

i++) {

// data is an a rra y a nal og to co ntext pixels,

scale (1 , 1, 1 );

fo r (in t i = 0; i < con tex t.pix els.length;

. .-/-/---=

’’ ... . - - -

begi nRe cord( "ne rvous system .ob j.OBJExport",

-.

[

d ateSt rin g+"_" +sc aleFa cto r+"_" +"m rna"+".obj");

= ] - -- ] [

THE INTERNET IS THE ONLY PLACE TO SEE WHAT IS BEING DONE IN DIGITAL ART SINCE THE GALLERIES, FOR THE MOST PART, DON'T SHOW DIGITAL. Digital art, like traditional art, lies on a broad spectrum from very bad art to very good art. This is not surprising. But perhaps art produced digitally has a further burden. T h e t e c h n o lo g y t h a t i s s o u s e f u l t o t h e artist, also easily facilitates the off-hand, frivolous and accidental image that is then easily presented on the internet as art. The internet allows anyone to define what they do as art The truth is there is no place to see art produced digitally that has been juried by artists or art professionals. The websites that show such images are not selective. Google Images is not selective. Any internet search is not selective. Such l a c k o f s e le c t i v i t y c re a t e s a " d u m b i n g down" or reduction to the lowest common denominator of the whole range of work presented on the internet. But, the internet is the only place to see what is being done in digital art since the galleries, for the most part, don't show digital. This will change, but at this stage of its evolution, a search for good digital art is a dismal endeavor.

‘ / / ,,

VUL


#include <Wire.h> #include <Adafruit_PWMServoDriver.h> A d a f r u i t _ P W M S e r v o Driver pwm = Adafruit_PWMServoDriver();

#define SERVOMIN

150 // 150 this is the 'minimum' pulse

#define SERVOMAX

600 // 600 this is the 'maximum' pulse

length count (out of 4096) length count (out of 4096) uint8_t servonum = 0; int servototal = 8; void setup() { Serial.begin(9600);

- =

.[ [ -- - `` ` ;`;`

S erial.println("16 channel Servo test!");

.> ` `’’’’---- - /// - -.-- .-p w m . s e t P W M F req(60);

pwm.begin();

// Analog servos run at ~60 Hz updates } void loop() { // Get serial data if(Serial.available()) { servonum = Serial.read(); } Serial.println(servonum);

/ / l o o p t h r o u g h servos if one equals serial data then set position to "on"/max for(int i=0; i < servototal; i++) { if(i == servonum) { pwm.setPWM(servonum, 0, SERVOMAX);

} else { pwm.setPWM(i, 0, SERVOMIN); } } }

14:15

‘ .

. . / -.- . --


The artists in Drawing with Code represent some of the earliest innovations in computergenerated art from the U.S., Europe, and Asia, pioneering a new form of collaboration between technology and art that pushed the boundaries of both.

< t itle>Outlook.com - sa g i t t a r i u s t e r & # 6 4 ; h o t m a i l . c o m < / t i t l e > < l ink rel="icon" href=" h t t p s & # 5 8 ; / / a . g f x . m s / O L F a v . i c o " t y p e = " i m a g e / x - i c o n " / >

< h t m l l a n g = " z h - h a n s " x m l : l a n g = " z h - h a n s " x m l n s = " h t t p : / / w w w . w 3 . o r g / 1 9 9 9 / x h t ml" class="m_ul fh <head> < m e t a h t t p - e q u i v = " C o nt e n t - T y p e " c o n t e n t = " t e x t / h t m l ; c h a r s e t = u t f - 8 " / > < s c r i p t t yp e = " t e x t / j av a s c r i p t " > / / < ! [ C D A T A [

hnl " sty le="">


16:17

IN THE ARTS—VISUAL, CINEMATIC, MUSICAL, DANCE, AND THEATER-THE COMPUTER HAS BECOME NOT ONLY AN ACCEPTED, I n o u r c u r re n t d i g i ta l e n v i ro n m e n t w h e n j u st a b o u t eve r yo n e h o l d s t h e processing power of a full computer in their pocket, it is difficult to remember a time when computer technology was not involved in every aspect of our lives. In the arts—visual, cinematic, musical, dance, and theater—the computer has become not only an accepted, but in many cases, an intrinsic tool for artistic expression. The artists featured in Drawing with Code emerged in the early computer-era when the technology was rudimentary by current standards a n d i t s c a p a b i l i t i e s ra re ly e x t e n d e d b eyo n d t h e wo r l d o f co m p u t a t i o n . Merging their interests in art and coding, these practitioners came to be known as "Algorists," artists who employed original algorithms to create images. In addition to works on paper, Drawing with Code presents the work of filmmakers.

/ / ] ] > < / s c r i p t > < s c r i p t t y p e = " t e x t / j a v a s c r i p t " > / / <![CDATA[ w i n d o w . $ B S I = { h e a d T i m e : ( n e w D a t e ) . g e t T i m e ( ) } , w i ndow.$CSIPerf={lapse:[{},{s:"h",t:$BSI.headTime}],csd:{},_ttg:$BSI.headTime} //]]></script> < s t y l e t y p e = " t e x t / c s s " > b o d y { d i s p l a y : n o n e ; } </sty le><script ty pe="text/javascript">//<![CDATA[


This situation is described clearly by John Maeda in his book Creative Code: “To use a tool on a computer, you need do little more than point a n d c l i c k ; t o c re a t e a t o o l , yo u THE MORE YOU KNOW ABOUT COMPUTERS . . . THE BETTER YOUR IMAGINATION CAN FLOW BETWEEN THE TECHNICALITIES, CAN SLIDE THE PARTS TOGETHER, CAN DISCERN THE SHAPES OF WHAT YOU WOULD HAVE THESE THINGS DO. must understand the arcane art of computer programming.” The negative aspects of this situation a re t h e co n st ra i n t s i m p o s e d b y software tools. As a result of being easy to use, these tools obscure some of the computer’s potential. To fully explore the computer as an artistic material, it’s important to understand this “arcane art of computer programming.”

☐☐☐☐☐☐☐☐☐


20:21

So Lopes’ individuation condition for an art form fails, if understood statistically; and if it is understood normatively, it does not support his conclusion that computer art form i s a lw a y s i n t e ra c t i ve . A cco rd i n g t o t h e t h e o r y - s k e t c h d e v e lo p e d e a r l i e r, t h e c o m p u t e r a r t f o r m embraces both interactive and non-interactive works; both exploit automated algorithmic exploration, which grounds a r t i s t i c a l ly d i s t i n c t i v e fe a t u re s . Such a nested framework allows one better to appreciate the commonalities, for instance, between non-interactive digital cinema and videogames; both are types of cinema (the medium of the moving image) and both a re t y p e s o f co m p u t e r a r t fo r m , differing in that the latter supports interactivity and the former does not; but the technology behind both has a great deal in common and the appreciation of that technology is essential to the appreciation of works in the media (Gaut 2010). Since so much of it is non-interactive, computer a r t i s f a r m o re u b i q u i t o u s a n d varied than Lopes countenances. A Philosophy of Computer Art i s a n e n o r m o u s ly a cco m p l i s h e d a n d g ro u n d b re a k i n g wo r k t h a t w i l l s h a p e f u t u re p h i lo s o p h i c a l d i s c u ss i o n o f co m p u t e r a r t . B u t i t o v e r ly re s t r i c t s t h e co m p u t e r art to its interactive form and so impoverishes the domain to b e d i s c u s s e d . T h e re i s m o re t o computer art than is dreamt of in its philosophy.

Developments at Xerox PARC led to the Dynabook, a prototype for today’s personal computers. The Dynabook vision included more than hardware. A programming language was written to enable, for example, children to write storytelling and drawing programs and musicians to write composition programs. In this vision there was no distinction between a computer user and a programmer. Thirty years after these optimistic ideas, we find ourselves in a different place.

The idea of general software literacy has been discussed since the early 1970s. In 1974, Ted Nelson wrote about the minicomputers of the time in Computer Lib / Dream Machines. He explained “the more you know about computers . . . the better your imagination can flow between the technicalities, can slide the parts together, can discern the shapes of what you would have these things do.” In his book, Nelson discusses potential futures for the computer as a media tool and clearly outlines ideas for hypertexts (linked text, which set the foundation for the Web) and hypergrams (interactive drawings).

A technical and cultural revolution did occur through the introduction of the personal computer and the Internet to a wider audience, b  ut people are overwhelmingly using the software tools created by professional programmers rather than making their own.


rm al Ac ti vi ty

\\\importient is going on when it is notand i repeaet this over and over again \\ so it looks something \\\\importient is going on when it is notand i repeaet this over and over again \\ so it looks something \\\\importient is going on

No

84583

56345756867

Stable Settings Normal Activity

RE V O L U T I ON IN ART

A

56345756867

DI G I T A L ART IS THE N EXT


56345756867

r i a l

l a i r e S

T

Before the camera, the role of artists was to depict the real world. Art changed in the way it was used or the subjects it showed, but each time it was a ‘window into the real w o r l d ’ . W h e n t h e c a m e ra w a s i n ve n t e d , a r t i s t s re a l i z e d t h a t i t w a s n o l o n g e r important to portray the real world, and their role could be redefined. They started to express their imagination in different ways and to show something that is not real – something abstract. Abstract art can be considered a major step in the evolution of art and it started with the invention of new technology – the camera. With the creation of the computer and its use in art, we are now looking at the next major step in the evolution of art. With the use of the computer, artists can create something t h a t w a s n eve r p o s s i b le . T h e w a y a r t i s defined itself is changing. Alternatively, perhaps “normally,” in Lopes’ individuation condition should be read not as a statistical notion, but as a normative one; we ought to compare the Rembrandt with the cave painting because we can learn something from the comparison. However, making this move undermines Lopes’ c l a i m t h a t t h e re i s n o d i g i t a l a r t fo r m . One can illuminatingly appreciate digital works by comparing them with each other, even when they are in different traditional m e d i a . O n e c a n , f o r i n s t a n c e , u s e f u l ly co m p a re A A R O N ’s d i g i t a l p a i n t i n g s w i t h E M I ’s d i g i t a l m u s i c a l wo r k s : t h e fo r m e r a re m o re o r i g i n a l , s i n ce C o h e n s e le c te d the input and algorithms to reflect his own style, but Cope chose EMI’s database and algorithms in accordance with an analysis o f o t h e r co m p o s e rs’ st y le . H oweve r, t h e best of EMI’s output is I think artistically more successful than the best of AARON’s o u t p u t , w h i c h l i ke ly re f le c t s t h e g re a te r value of the initial stylistic parameters that were fed into EMI. Comparing the two kinds of works, then, sheds light on the range a n d va l u e o f t h e p o ss i b i l i t i e s o f fe re d b y automated algorithmic exploration. So if the ‘normal’ in the definition of an appreciative art kind is a normative notion, there is a digital art form. Recall that I individuated art forms in terms of a medium’s affording distinctive artistic possibilities. Given that account, it will always be true that there is something to be learned from a comparison o f t w o w o r k s i n a n a r t fo r m , s i n ce t h ey both illustrate something of the distinctive artistic possibilities afforded by the art form. This understanding of what an art form is explains why Lopes’ account understood n o r m a t i v e ly g e t s m a t t e r s e x t e n s i o n a l ly correct.

e S

22:23


Digital art, like traditional art, lies on a broad spectrum from very bad art to very good art. This is not surprising. But perhaps art produced digitally has a further burden. T h e t e c h n o lo g y t h a t i s s o u s e f u l t o t h e artist, also easily facilitates the off-hand, frivolous and accidental image that is then easily presented on the internet as art. The internet allows anyone to define what they do as art The truth is there is no place to see art produced digitally that has been juried by artists or art professionals. The websites that show such images are not selective. Google Images is not selective. Any internet search is not selective. Such l a c k o f s e le c t i v i t y c re a t e s a " d u m b i n g down" or reduction to the lowest common denominator of the whole range of work presented on the internet. But, the internet is the only place to see what is being done in digital art since the galleries, for the most part, don't show digital. This will change, but at this stage of its evolution, a search for good digital art is a dismal endeavor.

PERCEPTI SCRIPT >. `` -- ; ; ‘ \ ] . .=---/-/-. . .- --- . -.- / . . - -. --.= - - - - . ... ’’

[ [ ] -- - ] = . ‘

. = =[;[`’`’` ` ` [ [[ , ,, / / ‘

/// - ----’’’’` `;`; ` `` - -- [ [


24:25

ON <subject>

<The Fibonacci numbers are the sequence of numbers { F_n}_(n=1)^infty defined by the linear recurrence equation F_n=F_(n-1)+F_(n-2) with F_1=F_2=1. As a result of the definition, it is conventional to define F_0=0.> <title> The Fibonacci numbers </title>

</subject>


0

0

0

0

0

0

0

0

4

6

0 0 0 8

5

7

0

0

0

0

0 0 0 9

A Normal Activity

Stable Settings

document.getElementBy Id(a. id.substring(1)).href;retur

Date};var s=function(b,d){if(null===d)return!1;if("contains" return

b==d||Boolean(b.co

u=function(b,d){retu rn function(a){a||(a=window test(navigator.userAgent),w="u ndefine WebKit/.test(navigator.userAgent),z={A:13,BU

ITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:13,RADIO:32,RA CHECKBOX:1,OP

{this.o=this.i=null},E=function(b,d){var a=D;a.i=b;a.o=d;return a};B.p

i=this.i.__owner||this.i.parentNode:this .i=null;return b};var F=fun

{if(thi

b=this.p[this.i ];this.i++;b!=this.o&&b&

&b.__owner&&(this.s=!0,E(b.__owner

w=[];this.i=[];this.o=[];this.s={};this.k=null;this.p=[];H(this,"_custom")},aa="un

s*/,da=function(b,d){return function(a){var c=d;if("_custom"==c){c=a.detail;if(!c| urn;c=c._ty pe}var g;if("click"==c&&(v&&a.metaKey ||!v&&a.ctrlKey||2==a.which||nul

ty

vi

ti

al

N

m or

Ac


0 0

pwm.setPWM(i, 0, SERVOMIN);

}

}

}

else {

}

pwm.setPWM(servonum, 0, SERVOMAX);

if(i == servonum) {

for(int i=0; i < servototal; i++) {

// loop through servos if one equals serial data then

Serial.println(servonum);

set position to "on"/max

servonum = Serial.read(); }

if(Serial.available()) {

// Get serial data

void loop() {

}

pwm.setPWMFreq(60);

updates

// Analog servos run at ~60 Hz

AESTHETICS IN DIGITAL ART

SCULPTING, DRAWING, PAINTING, DIGITAL ART

1

3

0

pwm.begin();

Serial.println("16 channel Servo test!");

Serial.begin(9600);

void setup() {

int servototal = 8;

uint8_t servonum = 0;

600 // 600 this is the 'maximum' pulse

150 // 150 this is the 'minimum' pulse

length count (out of 4096)

# define SERVOMAX

length count (out of 4096)

# define SERVOMIN

Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

# include <Adafruit_PWMServoDriver.h>

# include <Wire.h>

0 0 0

26:27

2

0

0

0

Moving into the mid-20th century, t h e co n ce p t u a l t ra n s fo r m a t i o n s that arose from new approaches to art led to a crisis of aesthetics, as was manifested in new art media. While borrowing many of the conventions of traditional media, digital art can draw upon aesthetics from many other fields. But various criticisms have been made against it: for example, given the variety of tools at their disposal, how much effort do digital artists really have to put into their work? T h e 2 0 t h ce n t u r y w a s a t u r n i n g point in our conception of art, which is mainly why contemporary a r t i st s f re q u e n t ly re a c h fo r n ew concepts, break with tradition and reject classic notions of beauty. All these factors have given birth to abstract art. The artist no longer tries to reflect reality, but rather t r i e s to g i ve ex p re ss i o n to t h e i r inner world and feelings. The 20th century was a turning point in our conception of art, which is mainly why contemporary artists frequently reach for new concepts, break with tradition and reject classic notions of beauty. All these factors have given birth to abstract art. The artist no longer tries to reflect reality, but rather tries to give expression to their inner world and feelings. W h e n yo u lo o k a t b e a u t i f u l d i g i ta l rn ! 0 } ; (function(){'use stri c t ' ; v a r e = t h i s , h = D a t e . n o w | | f u n c t i o n ( ) { r e t u r n + n e w art and compare it with the things "i n b & &1==d.nodeType)return b . c o n t a i n s ( d ) ; i f ( " c o m p a r e D o c u m e n t P o s i t i o n " i n b ) you draw with a pencil, you can feel om p a r e DocumentPosition(d)&1 6 ) ; f o r ( ; d & & b ! = d ; ) d = d . p a r e n t N o d e ; r e t u r n d = = b } ; v a r astonished and belittled. If only you w. e v e n t);return d.call(b,a) } } , v = " u n d e f i n e d " ! = t y p e o f n a v i g a t o r & & / M a c i n t o s h / . could afford a graphics tablet, you d"!=typeof n a v i g a t o r & & ! / O p e r a / . t e s t ( n a v i g a t o r . u s e r A g e n t ) & & / co u l d b e j u st a s g o o d ! A n d i f yo u T T ON:0,CHECKBOX:32,COMB O B O X : 1 3 , L I N K : 1 3 , L I S T B O X : 1 3 , M E N U : 0 , M E N U B A R : 0 , M E N U already have a tablet, your thought AD I OGROUP:32,RESET:0,S U B M I T: 0 , T A B : 0 , T A B L I S T: 0 , T R E E: 1 3 , T R E E I T E M : 1 3 } , A = { T I O N : 1 , R A D IO : 1 } ; v a r B = f u n c t i o n ( ) is, "If only I could afford Photoshop! pr o t o t ype.k=function(){v a r b = t h i s . i ; t h i s . i & & t h i s . i ! = t h i s . o ? t h i s . So many amazing things can be done nc t i o n (){this.p=[];this.i=0 ; t h i s . o = n u l l ; t h i s . s = ! 1 } ; F . p r o t o t y p e . k = f u n c t i o n ( ) with this software." If you've got both s . s ) r e t u r n D . k ( ) ; i f ( t h i s . i ! = t h i s . p . l e n g t h ) { v a r a decent tablet and good software, you're dreaming about the godlike r, t h i s .o));return b}return n u l l } ; v a r D = n e w B , G = n e w F ; v a r I = f u n c t i o n ( ) { t h i s . Wacom Cintiq the bigger, the better. nde f i n e d "!=typeof navigator&& / i P h o n e | i P a d B u t , u n t i l t h e n , yo u ' re st u c k . Yo u |iPod/.test(navigator.userAgent),ba=/\s*;\ can't be any better. It's not your fault, ||! c . _ t y pe)ret l= = a . w hich&&4==a.button||a.s h i f t K e y) ) c = " c l i c k m o d " ; e l s e { v a r k = a . w h i c h | | a . k e y it's all about money! T h i s i s p r o b a b l y w h y t h e r e ' s a m i s co n ce p t i o n t h a t d i g i t a l a r t i s n ' t real art. After all, a real artist needs to learn all these hard things, master pencils, brushes, color mixing, different kinds of pigment, and they can't just undo a mistake! And when they finish, their art is one of a kind, it exists p h y s i c a l ly, i t ' s n o t j u s t a n a r r a y o f digits that you can copy infinitely. At the same time, a digital "artist" buys some expensive equipment and that's all—they can now produce outstanding art. That's cheating, isn't it?

There are lots of methods of recreating the real world in some s m a l l fo r m . Yo u ca n t a ke a s o f t m a ss a n d m o l d i t . Yo u c a n t a ke something harder and sculpt i t . Yo u c a n m a k e t h i n ro w s i n sand to represent the outlines of something. You can take a sheet of white paper and create smudges with a small bit of charcoal. You can make blobs of color to imitate patches of light and shadow. The weird thing is that we don't have a word for all these activities. It's n o t re a l ly " c re a t i n g " — w e d o n ' t create a thing, we create an image of it. In the end, we tend to call it sculpting (for built forms) and d r a w i n g ( fo r s h a p e s o n p a p e r ) . People more familiar with art add another category to it, painting, to distinguish it from line-based works. Not so long ago another category appeared—digital art. The co m p u t e r h a s t u r n e d o u t t o b e a p o w e r f u l t o o l fo r a n a r t i st . I t provides a clean workspace, with the freedom to make mistakes. It's so powerful that traditional artists have started to look at it as some kind of unfair extension. One pen instead of a bunch of pencils with different softness, all the brushes t h a t n e e d t o b e c le a n e d a l l t h e time, charcoal, ink and whatever you'd like to use? One machine for every size, shape and material of canvas, for every color and way of blending? Everything neatly placed on your desk, with the option to save for later? A dream tool for lazy people! C o m p u t e rs a re a l s o we l l k n ow n fo r t h e i r f u n c t i o n o f a u to m a t i n g boring and time-consuming processes. For example, you give it ten big numbers to multiply, and get a result without any effort on your side. In the same way you can create a brush (one not similar to anything traditional) of a tree, and create a whole forest with simple clicks. Click, click, click—and there you are, every tree perfectly detailed. All in a matter of seconds. Want to create a gradient for the sky? No problem—select white and blue, and it just creates itself. Did the character turn out to be too small? Don't worry, just scale it. Or use a special deform tool to change its shape without having to draw it again. Everything without affecting the background—we've got layers, after all. It's too easy. Too easy to be called art.


Computer art exploits automated algorithmic exploration to artistically distinctive effect. It allows artists to discover the full potential of what r u le s p e r m i t , s o m e t h i n g that would not be in practice possible without automation. There are two broad classes of cases, depending on how the input is determined â&#x20AC;&#x201C; solely by the artist in the case of non-interactive computer art, or partly by the audience in the case of interactive computer art.

"The world around us in complicated and wonderful ways. We spend the earlier parts of our lives learning about our environment throug perception and interaction. We expect the physical world around us to behave consistently with our perceptual memory, e.g. if we drop a rock it will fall due to gravity, if a gust of wind blows, lighter objects will be tossed by the wind further. When we talk of computer art, we have in mind electronic computers, not human b e i n g s r u n n i n g U T M ro u t i n e s . T h e co n j u n c t i o n o f t wo fe a t u re s i s d i st i n c t i ve of electronic computers. First they operate at speeds that far outrun human capacities, made possible by their automation of procedures. Second, since they are UTMs, they operate according to algorithms. These algorithms define a space of possibilities. Varying the input changes the output in accordance with the algorithms; varying the inputs allows us to discover what the algorithms permit, to explore the possibility space defined by the algorithmic rules. Doing so by electronic computer enables exploration with a thoroughness and speed not otherwise achievable. Computers thus afford automated algorithmic exploration. 1980's The 1980s saw digital technologies reach into everyday life, with the widespread adoption of computers for both business and personal use. Computer graphics and special effects began to be used in films such as 'Star Trek II: The Wrath of Khan' and 'Tron', both 1982, as well as in television programmes. Combined with the popularity of video and computer games, computing technology began to be a much more familiar sight at home, as well as at work.


28:29

#include <Wire.h> #include <Adafruit_PWMServoDriver.h> Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define SERVOMIN

150 // 150 this is the 'minimum' pulse

length count (out of 4096) #define SERVOMAX

600 // 600 this is the 'maximum' pulse

length count (out of 4096) uint8_t servonum = 0; int servototal = 8; void setup() { Serial.begin(9600); Serial.println("16 channel Servo test!");

pwm.begin(); pwm.setPWMFreq(60);

// Analog servos run at ~60 Hz

updates } void loop() { // Get serial data if(Serial.available()) { servonum = Serial.read(); } Serial.println(servonum); // loop through servos if one equals serial data then set position to "on"/max for(int i=0; i < servototal; i++) { if(i == servonum) { pwm.setPWM(servonum, 0, SERVOMAX);

} else { pwm.setPWM(i, 0, SERVOMIN); } } }


ok.com - sagittariuster&#64;hotmail.com</title> l="icon" href="https&#58;//a.gfx.ms/OLFav.ico" type="image/x-icon" />

<html lang="zh-hans" xml:lang="zh-hans" xmlns="http://www.w3.org/1999/xhtml" class="m_ul fh <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> <script type="text/javascript">//<![CDATA[

hnl " style="">


//]]></script><script type="text/javascript">//<![CDATA[ window.$BSI={headTime:(new Date).getTime()},window.$CSIPerf={lapse:[{},{s:"h",t:$BSI.headTime}],csd:{},_ttg:$BSI.headTime} //]]></script> <style type="text/css">body{display:none;}</style><script type="text/javascript">//<![CDATA[


32:33

MULTIPLE PLATFORMS

The digital experience was embraced and meant to enhance the physical experience of exploring the museum. The trend has only accelerated since, at the Met and across the museum world. At first glance, it might seem like a capitulation, giving in to the virtual enemy when museums are so essentially physical spaces.

Yet listen to museum curators and administrators today and they often sound like executives in media, retailing, consumer goods and other industries. T h ey ta l k o f d i s p l a y i n g t h e i r w a re s o n " m u l t i p le platforms," and the importance of a social media strategy and a "digital first" mind-set.

Lopes’ argument depends on individuating art forms in part by comparison classes. The theory-sketch given earlier individuated art forms in terms of a medium’s (such as the computer medium’s) affording distinctive artistic possibilities (see Gaut 2010: chapter 7). Lopes’ individuation condition, however, does not individuate art forms. Consider Rembrandt self-portraits and prehistoric c a v e p a i n t i n g s . T h e y b o t h b e lo n g t o t h e art form of painting, showing some of the distinctive artistic possibilities afforded by p a i n t o n a s u r fa ce t h ro u g h e n a b l i n g , fo r instance, seeing-in by attending to a worked surface. But it is not true that we normally a p p re c i a t e R e m b r a n d t s e l f - p o r t r a i t s b y comparison to cave paintings: perhaps such a comparison has never been made. So we d o n o t i n d i v i d u a t e a r t fo r m s i n t e r m s o f normally appreciating a work in the kind by comparing it arbitrarily with any other work in the kind, for that is not true of Rembrandt and cave paintings. It may be replied that this is one of the abnormal cases: Rembrandt portraits or cave paintings are s o m e o f t h e e xc e p t i o n s w h e re o n e o n ly compares the paintings to a restricted set of other paintings rather than to arbitrarily any other painting. But taking this line m e a n s t h a t i n o rd e r t o a ss u re o u rs e lve s t h a t t h e a r t fo r m o f p a i n t i n g e x i s t s , w e would have to engage in a statistical survey to show that most paintings are compared to arbitrarily any other paintings and that only a minority of paintings are compared to some restricted set of paintings. But we know that the art form of painting exists without engaging in any such inquiry, and indeed this sort of enquiry seems absurd.


'};google.kHL='en';})();(function(){google.lc=[];google.li=0;google.getEI=function(a){for(var b;a&&(!a.ge

-

ute||!(b=a.getAttribute("eid")));)a=a.parentNode;return b||google.kEI};google.https=function(){r

e-

tps:"==window.location.protocol};google.ml=function(){};google.time=function(){return(new Date).get

-

;google.log=function(a,b,d,h,k){var c=new Image,f=google.lc,e=google.li,g="",l=google.ls||"";c.oner

-

nload=c.onabort=function(){delete f[e]};f[e]=c;d||-1!=b.search("&ei=")||(g="&ei="+go

o-

EI(h));a=d||"/"+(k||"gen_204")+"?atyp=i&ct="+a+"&cad="+b+g+l+"&zx="+google.time();/^http:/i.test(a)&&google

)?(google.ml(Error("a"),!1,{src:a,glmm:1}),delete f[e]):(c.src=a,google.li=e+1)};google.y={};google.x=fun

c-

b){google.y[a.id]=[a,b];return!1};google.load=function(a,b,d){google.x({id:a+m++},function(){google.load(a,

;var m=0;})();google.kCSI={};

j.b=(!!location.hash&&!!location.hash.match('[#&]((q|fp)=|tbs=rimg|tbs=simg|tbs=sbi)')

e.j.qbp;google.arwt=function(a){a.href=document.g

)

e-

tById(a.id.substring(1)).href;return!0};(function(){'use strict';var e=this,h=Date.now||function(){re

-

w Date};var s=function(b,d){if(null===d)return!1;if("contains"in b&&1==d.nodeType)return b.co

n-

);if("compareDocumentPosition"in b)return b==d||Boolean(b.compareDocumentPosition(d)&16)

;-

&b!=d;)d=d.parentNode;return d==b};var u=function(b,d){return function(a){a||(a=window.event);return

b,a)}},v="undefined"!=typeof navigator&&/Macintosh/.test(navigator.userAgent),w="undefined"!=typeof

or&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test

(-

or.userAgent),z={A:13,BUTTON:0,CHECKBOX:32,COMBOBOX:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENUITEM:0,MENUI

KBOX:0,MENUITEMRADIO:0,OPTION:13,RADIO:32,RADIOGROUP:32,RESET:0,SUBMIT:0,TAB:0,TABLIST:0,TREE:13,TREEITEM:1

HECKBOX:1,OPTION:1,RADIO:1};var B=function(){this.o=this.i=null},E=function(b,d){var a=D;a.i=b;a.o=d;return

ototype.k=function(){var b=this.i;this.i&&this.i!=this.o?this.i=this.i.__own

-

s.i.parentNode:this.i=null;return b};var F=function(){this.p=[];this.i=0;this.o=null;this.s=!1};F.pro

-

k=function(){if(this.s)return D.k();if(this.i!=this.p.length){var

p[this.i];this.i++;b!=this.o&&b&&b.__owner&&(this.s=!0,E(b.__owner,this.o));return b}return null};var D=new F;var I=func

-

this.w=[];this.i=[];this.o=[];this.s={};this.k=null;this.p=[];H(this,"_custom")},aa="undefined"!=typeof

or&&/iPhone|iPad|iPod/.test(navigator.userAgent),ba=/\s*;\s*/,da=function(b,d){return function(a){var

"_custom"==c){c=a.detail;if(!c||!c._type)return;c=c._type}var g;if("click"==c&&(v&&a.m

e-

!v&&a.ctrlKey||2==a.which||null==a.which&&4==a.button||a.shiftKey))c="clickmod";else{var k=a.which||a.key

.key;w&&3==k&&(k=13);var f=a.target||a.srcElement,x=(f.getAttribute("role")||f.

-

.tagName).toUpperCase(),p=13==k||32==k,n;if(n="keydown"==a.type)"getAttribute"i

n

.getAttribute("role")||f.type||f.tagName).toUpper

-

-

n="TEXT"!=n&&"TEXTAREA"!=n&&"PASSWORD"!=n&&"SEARCH"!=n&&("COMBOBOX"!=n||"INPUT"!=f.tagName.toUpperCase())&&

ntentEditable):n=!1;var q="INPUT"==f.tagName.toUpperCase()&&!f.type,r=0==z[x]%k,k=!(x in z)&&13==k,f=!!a.

lTarget&&a.originalTar

-

-

n&&!(a.ctrlKey||a.shiftKey||a.altKey||a.metaKey)&&p&&((r||k)&&!q||f)&&(c="clickkey")}var f=a.srcEle

-

.target,p=J(c,a,f,"",null),l;a.path?(G.p=a.path,G.i=0,G.o=this,G.s=!1,n=G):n=

s);for(;q=n.k();){r=g=q;l=c;q=r.__jsaction;if(!q&&(q={},r.__jsaction=q,k=void 0,k=null,"getAttribute"in

.getAttribute("jsaction")),k))for(r=k.split(ba),k=0,x=r?r.length:0;k<x;k++){var t=r[k];if(t){var C=t.inde

,Q=-1!=C,ca=Q?t.substr(0,C).r

x-

e-

^\s+/,"").replace(/\s+$/,""):"click",t=Q?t.substr(C+1).replace(/^\s+/,"").replace(/\s+$/,""):t;q[ca]=t}}"cl

==l?l="click":"click"!=l||q.click||(l="clickonly");l={v:l,action:q[l]||"",C:!1};p=J(l.v,a,f,l.action||"",g,

tamp);if(l.C||l.action)break}if(l&&l.action){if(f="clickkey"==c)f=a.target||a.srcElement,f=(f.type||f.tagNa

pperCase(),(f=32==(a.which||a.keyCode||a.key)&&"CHECKBOX"!=f)||(l=a.target||a.srcElement,f=(l.getAttribute(

||l.tagName).toUpperCase(),l=l.type,f="BUTTON"==f||!!l&&!(l.toUpperCase()in A));f&&(a.preventDefault?a.pr

ault():a.returnVa

e-

l-

if("mouseenter"==c||"mouseleave"==c)if(f=a.relatedTarget,!("mouseover"==a.type&&"mouseenter"==c||"mouseout"

e&&"mouseleave"==c)||f&&(f===

f)))p.action="",p.actionElement=null;else{var c={},m;for(m in a)"function"!==typeof a[m]&&"srcEl

=m&&"target"!==m&&(c[m]=a[m]);c.type=

e-

"-

er"==a.type?"mouseenter":"mouseleave";c.target=c.srcElement=g;c.bubbles=!1;p.event=c;p.targetElement=g}}els

ion="",p.actionElement=null;g=p;b.k&&(m=J(g.event

-

event,g.targetElement,g.action,g.actionElement,g.timeStamp),"clickonly"==m.eventType&&(m.eventType="click")

!0));if(g.actionElement)if("A"==g.actionElement.tagName&&"click"=

=

Type&&(a.preventDefault?a.preventDefault():a.returnValue=!1),b.k)b.k(g);else{var y;if((m=e.docu

!m.createEvent&&m.createEventObject)try{y=m.createEventObject(a)}catch(ga){y=a}else y=a;g.event=y;b.p.

-


34:35

# i n c l u d e < W i re.h> # i n c l u d e < A d a f r u i t _ P W M S e r v o D r i ver.h> A d a f r u i t _ P W M S e r v o D r i v e r p w m = A d a f r u i t _ P W M S e r v o D r i ver();

# d e f in e S E R V O M I N

1 5 0 / / 1 5 0 t h i s i s t h e ' m i n i m u m ' p u l s e length

# d e f in e S E R V O M A X

6 0 0 / / 6 0 0 t h i s i s t h e ' m a x i m u m ' p u l s e length

c o u n t ( o u t o f 4096) c o u n t ( o u t o f 4096) u i n t 8 _ t s e r v o n u m = 0; i n t s e r v o t o t a l = 8; v o i d s e t up() { S e r i a l . b e g i n ( 9 600); S e r i a l . p r i n t l n ( " 1 6 c h a n n e l S e r v o t e st!");

p w m . b e gin(); pwm.setPWMFreq(60);

/ / A n a l o g s e r v o s r u n a t ~ 6 0 H z u pdates } v o i d l o op() { / / G e t s e r i a l data i f ( S e r i a l . a v a i l a b l e()) { s e r v o n u m = S e r i a l . r e ad(); } S e r i a l . p r i n t l n ( s e r v o num);

/ / l o o p t h r o u g h s e r v o s i f o n e e q u a l s s e r i a l d a t a t h e n set p o s i t i o n t o " o n "/max f o r ( i n t i = 0 ; i < s e r v o t o t a l ; i ++) { i f ( i = = s e r v o num) { p w m . s e t P W M ( s e r v o n u m , 0 , S E R V O MAX);

} e lse { p w m . s e t P W M ( i , 0 , S E R VOMIN)

DIGITAL INSTALLATION ART Digital installation art constitutes a broad field of activity and incorporates many forms. Some resemble video installations, particularly large scale works i n vo lv i n g p ro j e c t i o n s a n d l i ve video capture. By using projection techniques that enhance an a u d i e n ce s i m p re s s i o n o f s e n s o r y envelopment, many digital installations attempt to create immersive environments. Others go even further and attempt to facilitate a c o m p le t e i m m e r s i o n i n v i r t u a l realms. This type of installation is g e n e r a l ly s i t e - s p e c i f i c , s c a l a b le , a n d w i t h o u t f i xe d d i m e n s i o n a l i t y, meaning it can be reconfigured to accommodate different presentation s p a ce s . N o a h Wa rd r i p - Fr u i n ' s " S c re e n " i s a n ex a m p le o f d i g i t a l installation art which makes use of a Cave Automatic Virtual Environment to create an interactive experience.

One can spend hours looking at c h i l d i s h c a r t o o n s , s c i e n ce f i c t i o n n o n s e n s e , s e x u a l d a y d re a m s a n d g i b b e r i s h . B u t s u d d e n l y, l i k e a breath of fresh air on a hot day, one is rewarded by someone doing great things using the computer to make art. Someone who, in Robert Henry's wo rd s i s a n " i n ve n t i ve , s e a rc h i n g , daring, self-expressing creature". To paraphrase Ansel Adam's comments on making great photographs: Those w h o a s p i re t o d o i n g g re a t d i g i t a l a r t , a s w i t h a n y a r t , s h o u l d k n ow their computer programs well; but most importantly they should study art. Study traditional art, its history, m o v e m e n t a n d i d e a s . We c a n n o t know where we are going until we know where we have been; and as with any great endeavor, art is built on the shoulders of every artist who came before.


D I G I TA L P R O D U C T I O N T E C H N I Q U E S I N VISUAL MEDIA

}

endRecord();

}

popMatrix();

pushMatrix();

box(1,1,-height);

translate(x,y , float(height)*0.5);

int x = i % context.width;

int y = (i - x) / context.width;

1 && height < (float(context.width) *0.25)) { if (height >=

Andy Warhol created digital art using a Commodore Amiga where the computer was publicly introduced at the Lincoln C e n t e r, N e w Yo r k i n J u l y 1 9 8 5 . A n image of Debbie Harry was captured in monochrome from a video camera and digitized into a graphics program called ProPaint. Warhol manipulated the image adding colour by using flood fills.

int height = min(int(float(data[i]) * scaleFactor), context.width);

D i g i t a l a r t c a n b e p u re ly c o m p u t e r generated (such as fractals and a l g o r i t h m i c a r t ) o r t a k e n f ro m o t h e r sources, such as ascanned photograph or an image drawn using vector g r a p h i c s s o f t w a re u s i n g a m o u s e o r graphics tablet. Though technically the term may be applied to art done using other media or processes and merely s c a n n e d i n , i t i s u s u a l ly re s e r ve d fo r art that has been non-trivially modified b y a c o m p u t i n g p ro c e s s ( s u c h a s a computer program,microcontroller or any electronic system capable of interpreting an input to create an output); digitized text data and rawaudio and video recordings are not usually considered digital art in themselves, but can be part of the larger project ofcomputer art and information art. Artworks are considered digital painting when created in similar fashion to non-digitalpaintings but using s o f t w a re o n a co m p u te r p l a t fo r m a n d digitally outputting the resulting image as painted on canvas.

scale(1, 1, 1);

Digital visual art consists of either 2D visual information displayed on an electronic visual display or information m a t h e m a t i ca l ly t ra n s l a te d i n to 3 D information, viewed through perspective projection on an electronic visual display. The simplest is 2D computer graphics which reflect how you might draw using a pencil and a piece of paper. In this case, however, the image is on the co m p u t e r s c re e n a n d t h e i n st r u m e n t you draw with might be a tablet stylus or a mouse. What is generated on your screen might appear to be drawn with a pencil, pen or paintbrush. The second kind is 3DÂ computer graphics, where the screen becomes a window into a virtual environment, where you arrange objects to be "photographed" by the computer. Typically a 2D computer graphics use raster graphics as their primary means of source data representations, whereas 3D computer graphics use vector graphics in the creation of immersive virtual reality installations. A possible third paradigm is to generate art in 2D or 3D entirely t h ro u g h t h e e xe c u t i o n o f a l g o r i t h m s c o d e d i n t o c o m p u t e r p ro g r a m s a n d could be considered the native art form of the computer. That is, it cannot be produced without the computer. Fractal art, Datamoshing, algorithmic art and real-time generative art are examples.

for (int i = 0; i < context.pixels.length; i++) {

After some initial resistance, the impact of digital technology has transformed activities such as painting, drawing,sculpture and music/sound art, while new forms, such as net art, digital installation art, and virtual reality, have become recognized artistic practices. More generally the term digital artist is used to describe an artist who makes use of digital technologies in the production of art. In an expanded sense, "digital art" is a term applied to contemporary art that uses the methods of mass production or digital media.

The techniques of digital art are used ex t e n s i ve ly b y t h e m a i n st re a m m e d i a in advertisements, and by film-makers to produce visual effects. Desktop publishing has had a huge impact on the publishing world, although that is more related to graphic design. Both digital and traditional artists use many sources of electronic information and programs to create their work. Given the parallels between visual and musical arts, it is p o s s i b le t h a t g e n e r a l a c c e p t a n c e o f the value of digital art will progress in m u c h t h e s a m e w a y a s t h e i n c re a s e d acceptance of electronically produced music over the last three decades.

// dat a is an array analog to context pixels, it stores amount of draw-overs for every pixel.

Digital art is an artistic work or p ra c t i ce t h a t u s e s d i g i t a l t e c h n o lo g y as an essential part of the creative or presentation process. Since the 1970s, various names have been used to describe the process including computer art and multimedia art, and digital art is itself placed under the larger umbrella term new media art.

COMPUTER-GENERATED VISUAL MEDIA

be gin Recor d("nervoussy stem.obj.OBJExport", dateString+"_"+scaleFactor+"_"+"mrna"+".obj");

DIGITAL ART

#inc lude <Wire .h>

#in clu de <A dafru it_PW MServo Drive r.h>

PWMS ervoD river ();

150 // 1 50 th is is the ' minim um'

600 // 6 00 th is is the ' maxim um'

puls e le ngth c ount (out of 40 96)

puls e le ngth c ount (out of 40 96)

A dafr uit_ PWMS ervoDr iver pwm = Adaf ruit_

#d efi ne SE RVO MIN

#d efi ne SE RVO MAX

i nt se rvotot al = 8;

uin t8_t servon um = 0;

v oid s etup( ) {

S erial .begin (9600 );

pwm. begin ();

// Analo g serv os ru n at ~60

Se rial .pri ntln ("16 chann el Ser vo te st!") ;

pwm .setP WMF req(6 0); }

Hz upda tes

void loop( ) {

// Ge t seri al da ta

}

i f(Ser ial.av ailab le()) {

se rvonu m = S erial. read( );

Se rial.p rintl n(serv onum );

t hen s et po sitio n to " on"/m ax

// loop thr ough ser vos i f one equal s ser ial d ata

i f(i = = serv onum) {

fo r(i nt i= 0; i < ser votota l; i+ +) {

pwm. set PWM(se rvonu m, 0, SERVO MAX);

}

}

els e {

pw m.setP WM(i, 0, SE RVOMI N);

}

}


36:37

DENSITY AMOUNT

.3 5 3135581

563457568674465656552. 56564 f6 556655 981497899873497 9712549791 74 01840818945648 64621 565468888956312321864 94104

56345756867 56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

56345756867

Seri al cl ass

/ / Cre ate ob ject from

impo rt pro cessi ng.ser ial. *;

S erial myPor t;

v oid s etup( ) {

int l astSe nt = -1;

si ze(12 00,90 0);

print ln(Se rial.l ist() );

c heck on li st to matc h your p ort

Stri ng p ortN ame = Seria l.lis t()[9 ]; //

}

960 0);

myPort = n ew Ser ial(t his, p ortNa me,

void draw( ) {

}

line (i,0, i, 60 0);

fo r(i nt i= 0; i< width ; i+=w idth/ 8) {

* 8 );

i nt x = i nt( float( mouse X)/fl oat(w idth)

m yP ort.w rite( x);

i f(x ! = last Sent) {

lastS ent = x;

}

}

pri ntln( x);

56345756867


COMPUTER GENERATED ANIMATED IMAGERY Computer-generated animations are animations created with a computer, from digital models created by the 3D artists o r p ro ce d u r a l ly g e n e r a t e d . T h e t e r m i s usually applied to works created entirely with a computer. Movies make heavy use of computer-generated graphics; they are called computer-generated imagery (CGI) in the film industry. In the 1990s, and early 2000s CGI advanced enough so that for the first time it was possible to create realistic 3D computer animation, although films had been using extensive computer images since the mid-70s. A number of modern films have b e e n n o te d fo r t h e i r h e a v y u s e o f p h o to realistic CGI. As this theory-sketch shows, the computer art form comes in two basic types, non-interactive and interactive. The differences between the types are important, and condition the ontology of works in those types, the role of the audience and that of the artist, and several other matters. These differences stem from the absence of audience input into the algorithms that generate the works in the case of non-interactive computer art; and the existence of audience input into the algorithms whose implementation constitutes the works in the case of interactive computer art. Nevertheless, there is a single art form that embraces both interactive and non-interactive computer works, constituted by the distinctive artistic possibilities afforded by automated algorithmic exploration. Some art forms contain other art forms: the art form of picture printing contains the art forms of woodcuts, engravings, etchings, etc. Interactive and non-interactive computer art forms likewise are contained within the broader art form of computer art. #include <Wire.h>

#include <Adafruit_PWMServoDriver.h>

150 // 150 this is the 'minimum' pulse

Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define SERVOMIN

600 // 600 this is the 'maximum' pulse

length count (out of 4096)

#define SERVOMAX

length count (out of 4096)

uint8_t servonum = 0;

int servototal = 8;

Serial.begin(9600);

void setup() {

// Analog servos run at ~60 Hz

Serial.println("16 channel Servo test!");

pwm.begin();

pwm.setPWMFreq(60);

updates

}

// Get serial data

void loop() {

servonum = Serial.read();

if(Serial.available()) {

}

Serial.println(servonum);

// loop through servos if one equals serial data then

pwm.setPWM(servonum, 0, SERVOMAX);

if(i == servonum) {

}

pwm.setPWM(i, 0, SERVOMIN);

else {

}

for(int i=0; i < servototal; i++) {

}

set position to "on"/max

}


38:39


DIGITAL MEDIA Digital media will be everything that has a digital outcome, that is, "in the form of digits". When you take a photo of your painting, it becomes digital too (of course, only the photo, not the physical original). That's what links all digital creations窶馬othing more. We still can distinguish other categories here: SCULPTING Digital sculpting is about creating 3 D m o d e l s o f s o m e t h i n g k n ow n from reality with a software that provides tools for it. The models can be textured and colored, and presented in a light that resembles a realistic environment. Finished w o r k s c a n b e b ro u g h t i n t o a traditional form with a 3D printer. DRAWING D i g i t a l d ra w i n g c a n b e c re a t e d with software that lets the user create dots of various diameter, which transform into lines. A d d i t i o n a l ly, o t h e r fe a t u re s ca n be used, like colors, erasers, and the transformation of drawn lines. Finished works can be then brought into the "real world" by printing. import processing.serial.*; S e r i a l m yP o r t ;

/ / Cr e a t e o b j e c t f r o m S e r i a l c l a s s int lastSent = -1; void setup() { size(1200,900);

String portName = S e r i a l . l i s t ( ) [ 9 ] ; / / c h e c k o n l i s t t o m a t c h y o u r p o r t println(Serial.list()); myPort = new Serial(this, portName, 9600); } void draw() { for(int i=0; i<width; i+=width/8) { line(i,0,i, 600); } i n t x = i n t ( f l oa t ( m o u s e X ) / f l o a t ( w i d t h ) * 8 ) ; if(x != lastSent) { myPort.write(x); lastSent = x; println(x); } } d o c u m e n t . g e t E l e m e n t B y I d (a.id.substring(1)).href;return!0};(function(){'use strict';var e=this,h=Date.now||function(){return+new Date};var s=function(b,d){if( r e t u r n b . c o n t a i n s ( d ) ; i f ( "compareDocumentPosition"in b)return

b==d||Boolean(b.compareDocumentPosition(d)&16);for(;d&&b!=d;)d=d.paren

{ a | | ( a = w i n d o w . e v e n t ) ; r e t urn d.call(b,a)}},v="undefined"!=ty peof navigator&&/Macintosh/.test(navigator.userAgent),w="undefine u s e r A g e n t ) & & / W e b K i t / . t e s t(navigator.userAgent),z={A:13,BU O G R O U P : 3 2 , R E S ET: 0 , S U B M I T:0,TAB:0,TABLIST:0,TREE:13,TREEITEM:13},A={

TTON:0,CHECKBOX:32,COMBOBOX:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENU

ITEM:0,

CHECKBOX:1,OP

B = f u n c t i o n ( ) { t h i s . o = t h i s .i=null},E=function(b,d){var a=D;a.i=b;a.o=d;return a};B.prototy pe.k=function(){v

ar b=this.i;thi s.i&&this.i!=this.o?this.i

F = f u n c t i o n ( ) { t h i s . p = [ ] ; t his.i=0;this.o=null;this.s=!1};F.prototy pe.k=function(){if(thi

b = t h i s . p [ t h i s . i ];this.i++;b!=this.o&&b& r e t u r n n u l l } ; v a r D = n e w B ,G=new F;var I=function(){this.

w=[];this.i=[];this.o=[];this.

n a v i g a t o r & & / i P h o n e | i P a d

{ r e t u r n f u n c t i o n ( a ) { v a r c=d;if("_custom"==c){c=a.detail;if(!c||!c._ty pe)ret u r n ; c = c . _ t y p e } v a r g ; i f ( "click"==c&&(v&&a.metaKey ||!v&&a.ctrlKey ||2==a.which||null==a.which&&4==a.button||a.shiftKey ))c="clickmod";else{var k=a.which||a.key


40:41

nu l l = = =d)return!1;if("conta i n s " i n b & & 1 = = d . n o d e T yp e ) tN o d e ; return d==b};var u=fu n c t i o n ( b , d ) { r e t u r n f u n c t i o n( a ) d " ! = typeof navigator&&!/Op e r a / . t e s t ( n a v i g a t o r . ME N U I T EMCHECKBOX:0,MENUITEM R A D I O : 0 , O P T I O N : 1 3 , R A D I O : 3 2 ,R A D I T I O N: 1 , R A D I O : 1 } ; v a r =t h i s . i.__owner||this.i.par e n t N o d e : t h i s . i = n u l l ; r e t u r n b } ; v a r

s.s) r e t u r n D . k ( ) ; i f ( t h i s . i ! = t h i s . p . l e n g t h ) { v a r

&b.__owner&&(this.s = ! 0 , E ( b . _ _ o w n e r , t h i s . o ) ) ; r e t u r n b } s= { } ; t his.k=null;this.p=[]; H ( t h i s , " _ c u s t o m " ) } , a a = " u n d ef i n e d " ! = t y p e o f

|iPod/.test(navigat o r . u s e r A g e n t ) , b a = / \ s * ; \ s * / , d a = f u n c t i o n ( b , d )


FRIDAY, JANUARY 16 / Registration [GE Lobby]

/ ARTS KEYNOTE:Stereoscopy and the Artistic Imagination(Huhtamo)[GE Auditorium]

/ Update from PrimeSense(Galor)[GE Auditorium]

SCHEDULE


42:43

SATURDAY, JANUARY 17

SUNDAY, JANUARY 18 / Breakfast [CFA Great Hall]

/ Breakfast & Late Registration[CFA Great Hall]

7:30-8:30am / 3B:Using the Kinect with OpenFrameworks(Lieberman&Wilcox)[STUDIO] / 1B:Algorithms for Point Clouds and Other 3D Data

/ Break / 2A:Getting Started with the Kinect for Windows SDK

/ Break

4B:Using the Kinect with Max/Map/ Jitter(Goldberg)[CFA 303]

Lounge closes at 5:30pm Exhibit:closes at 6:00pm

/ Lunch[CFA Great Hall] *ticket required

Demo:end at 6:00pm 5B:Kinect-Based MoCap for Flash and AfterEffect(Fox-Gieg)[STUDIO] / Unconference Sessions 1 and 2[rooms TBA]


FORBES AVENUE

SOUTH CRAIG STREET

system engaged

N

NNE

0

-3

NE

0

-6 0 ENE

51 41 61

E

-90

23

BAKER HALL


90

W

44:45

21

WSW

1

15 0

SW

1

20

-8

180 W

S

SS

MARGARET MORRISON

] Metric Unit

CFA

1658457

83%

83%

83%

83%

83%

83%

CARNEGI MELLON CAMPUS PITTSBURGH, PA 15213 GE Auditorium - Giant Eagle Auditorium (Baker Hall A51) GE Lobby - Giant Eagle Lobby (Baker Hall A51) CFA - College of Fine Arts ACH - Alumni Concert Hall (CFA first floor) Kresge Theatre (CFA first floor, across from ACH) STUDIO - STUDIO for Creative Inquiry (CFA 111) Peace Garden (Behind CFA on Frew Street) Great Hall (CFA first floor lobby) MM - Margaret Morrison UC - University Center (food, ATMs, bookstore)

1658457


■ ■ ■ ■ ■

School: Academy of Art Univeristy, School of Graphic Design Course: Typography 4: Refinement of Form Instructor: Ariel Grey Design & Illustrations: Tina Niu Conference: <script> Book bindery: California Office, San Francisco Title of Book: [code] Text stock: Moab Lasal Photo Matte 235 Fonts: DIN Regular / Kettler Regular / TSTARE Pro Light Software: Adobe Creative Cloud

This is a student project only. No part of this book or any other part of the project were produced for commercial use.

on


46:47


[code]  

THE MARRIAGE OF ART AND CODE

[code]  

THE MARRIAGE OF ART AND CODE

Advertisement