Expressive Computation: Artworks by Widianto Nugroho

22
float merah, hijau, biru; float tambah; // Konstruktor Gelombang(float _posx, float _posy, float _tambah, float _kecx, float _kecy, float _merah, float _hijau, float _biru) { posx = _posx; posy = _posy; kecx = _kecx; kecy = _kecy; merah = _merah; hijau = _hijau; biru = _biru; tambah = _tambah; } // Menggambar bentuk void gambar() { smooth(); for (int i=0; i<(width*3); i+=tambah) { noFill(); stroke(merah, hijau, biru); ellipseMode(CENTER); ellipse(posx, posy, i, i); /* stroke(merah, hijau, biru); noFill(); ellipse(posx, posy, size, size); */ } // Mengubah posisi bentuk (menggerakkan) void gerak() { posx += ( kecx * arahx ); posy += ( kecy * arahy ); // Menguji apakah bentuknya melebihi batas layar // Bila ya, balikkan arahnya dengan mengalikannya dengan -1 if (posx < 0) { arahx *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posx > width) { arahx *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posy < 0) { arahy *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posy > height) { arahy *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } } } // Klik untuk memulai dari awal void mousePressed() { setup(); } import processing.pdf.*; import processing.opengl.*; // “psychedelic wave” created 2005 02 16 int besar = 75; int kecil = 50; // int size = 50; // Lebar dari bentuk int jumlah = 1; float gelap = 75; float terang1 = 125; float terang2 = 255; Gelombang glb1[] = new Gelombang[jumlah]; Gelombang glb2[] = new Gelombang[jumlah]; Gelombang glb3[] = new Gelombang[jumlah]; void setup() { size(800, 600, OPENGL); noStroke(); frameRate(500); // background(80, 65, 45); // Menentukan posisi awal for (int i = 0; i < jumlah; i++) { glb1[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang1), random(gelap, terang1), random(gelap, terang1)); } for (int i = 0; i < jumlah; i++) { glb2[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang2), random(gelap, terang2), random(gelap, terang2)); } for (int i = 0; i < jumlah; i++) { glb3[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang2), random(gelap, terang2), random(gelap, terang2)); } } void draw() { // background(80, 65, 45); noStroke(); smooth(); for (int i = 0; i < jumlah; i++) { glb1[i].gambar(); glb1[i].gerak(); } for (int i = 0; i < jumlah; i++) { glb2[i].gambar(); glb2[i].gerak(); } for (int i = 0; i < jumlah; i++) { glb3[i].gambar(); glb3[i].gerak(); } } class Gelombang { // Variabel class float posx, posy; // Posisi awal float kecx; // Kecepatan float kecy; // Kecepatan int arahx = 1; // Arah ke kiri dan kanan int arahy = 1; // Arah ke atas dan bawah Widianto Nugroho Computation Expressive

description

Expressive Computation: Artworks by Widianto Nugroho

Transcript of Expressive Computation: Artworks by Widianto Nugroho

Page 1: Expressive Computation: Artworks by Widianto Nugroho

float merah, hijau, biru; float tambah;

// Konstruktor Gelombang(float _posx, float _posy, float _tambah, float _kecx, float _kecy, float _merah, float _hijau, float _biru) { posx = _posx; posy = _posy; kecx = _kecx; kecy = _kecy; merah = _merah; hijau = _hijau; biru = _biru; tambah = _tambah; }

// Menggambar bentuk void gambar() { smooth(); for (int i=0; i<(width*3); i+=tambah) { noFill(); stroke(merah, hijau, biru); ellipseMode(CENTER); ellipse(posx, posy, i, i); }

// smooth();

/* stroke(merah, hijau, biru); noFill(); ellipse(posx, posy, size, size); */ }

// Mengubah posisi bentuk (menggerakkan) void gerak() { posx += ( kecx * arahx ); posy += ( kecy * arahy );

// Menguji apakah bentuknya melebihi batas layar // Bila ya, balikkan arahnya dengan mengalikannya dengan -1 if (posx < 0) { arahx *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posx > width) { arahx *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posy < 0) { arahy *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } if (posy > height) { arahy *= -1; merah = random(gelap, random(terang1, terang2)); hijau = random(gelap, random(terang1, terang2)); biru = random(gelap, random(terang1, terang2)); } }}

// Klik untuk memulai dari awalvoid mousePressed(){ setup();}

import processing.pdf.*;import processing.opengl.*;

// “psychedelic wave” created 2005 02 16

int besar = 75;int kecil = 50;// int size = 50; // Lebar dari bentukint jumlah = 1;float gelap = 75;float terang1 = 125;float terang2 = 255;Gelombang glb1[] = new Gelombang[jumlah];Gelombang glb2[] = new Gelombang[jumlah];Gelombang glb3[] = new Gelombang[jumlah];

void setup(){ size(800, 600, OPENGL); noStroke(); frameRate(500); // background(80, 65, 45);

// Menentukan posisi awal

for (int i = 0; i < jumlah; i++) { glb1[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang1), random(gelap, terang1), random(gelap, terang1)); }

for (int i = 0; i < jumlah; i++) { glb2[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang2), random(gelap, terang2), random(gelap, terang2)); }

for (int i = 0; i < jumlah; i++) { glb3[i] = new Gelombang(random(width), random(height), random(kecil, besar), random(random(-8, -4), random(4, 8)), random(random(-8, -4), random(4, 8)), random(gelap, terang2), random(gelap, terang2), random(gelap, terang2)); }}

void draw(){ // background(80, 65, 45); noStroke(); smooth(); for (int i = 0; i < jumlah; i++) { glb1[i].gambar(); glb1[i].gerak(); }

for (int i = 0; i < jumlah; i++) { glb2[i].gambar(); glb2[i].gerak(); }

for (int i = 0; i < jumlah; i++) { glb3[i].gambar(); glb3[i].gerak(); }}

class Gelombang{ // Variabel class float posx, posy; // Posisi awal

float kecx; // Kecepatan float kecy; // Kecepatan

int arahx = 1; // Arah ke kiri dan kanan int arahy = 1; // Arah ke atas dan bawah

Widianto Nugroho

ComputationExpressive

Page 2: Expressive Computation: Artworks by Widianto Nugroho
Page 3: Expressive Computation: Artworks by Widianto Nugroho

3

Artist’s Statement

Work Generatio Spontanea VoicePaint/VoicePrint Virology (ViruStream and ViruSphere) Floating and Spinning Psychedelic Waves Dynamic Composition

Bio + Vita

5

71012141617

18

Contents

Page 4: Expressive Computation: Artworks by Widianto Nugroho
Page 5: Expressive Computation: Artworks by Widianto Nugroho

5

ex•pres•sive adjective effectively conveying thought or feeling. • [ predic. ] (expressive of ) conveying (the specified quality or idea)

com•pu•ta•tionnoun the action of mathematical calculation : months of computation carried out on more than 200 computers | statistical computations. • the use of computers, esp. as a subject of research or study.

I make artwork by writing programs or software. I am interested in how to build abstract forms that move in space to form dynamic compositions. I create software that produces motion dynamics and abstract shapes. Dynamics and movement among other displayed through a computer screen, or through print on paper output. Another thing to do is manually painted using acrylic on canvas with objects generated visual output from the screen and the printed results.

In a simple flow, the processes is to write a series of commands in a programming language and build it to be software that can be executed by a computer. The resulting output is not merely pure generative in the sense of not fully autonomous, but a semi-automatic, where the input and interaction from humans are necessary to obtain the desired visual.

I see similarities between the process of making ceramics that I have ever learned and making software. In making ceramic we have to treat the materials (clay) so that there is no trapped air which can lead to broken tiles at the time of combustion. Similarly, mixing glaze to get the desired color when baked clay into ceramics, needs to be done carefully. So it is with programming, we write the program line by line, then ordered a computer for compiling (compiling) or change the file that contains the program that we can read (human readable) into file that can be understood by the computer (machine readable). This process is repeated because there are times when we make mistakes so that the compiler or compiling a program that gives an error message. And so on until we do not find more bugs and at some point to get the results we want.

Widianto Nugroho

Artist’s Statement

Page 6: Expressive Computation: Artworks by Widianto Nugroho
Page 7: Expressive Computation: Artworks by Widianto Nugroho

Generatio Spontanea (Spontaneus Generation)

Moving through space via the Craig Reynold’s flocking/boids algorithm, the simulation of flock-ing behavior of birds. Based on “FLocking” by Daniel Shiffman

7

Page 8: Expressive Computation: Artworks by Widianto Nugroho

8

Page 9: Expressive Computation: Artworks by Widianto Nugroho

Spontaneous generation or Equivocal genera-tion is an obsolete theory regarding the origin of life from inanimate matter, which held that this process was a commonplace and everyday oc-currence, as distinguished from Univocal genera-tion, or reproduction from parent(s). The theory was synthesized by Aristotle[1], who compiled and expanded the work of prior natural philoso-phers and the various ancient explanations of the appearance of organisms; it held sway for two millennia. It is generally accepted to have been ultimately disproven in the 19th Century by the experiments of Louis Pasteur, expanding upon the experiments of other scientists before him (such as Francesco Redi who had performed simi-lar experiments in the 17th century). Ultimately, it was succeeded by germ theory and cell theory.

The disproof of ongoing spontaneous generation is no longer controversial, now that the life cycles of various life forms have been well documented. However, the question of abiogenesis, how living things originally arose from non-living material, remains relevant today.

--Wikipediahttp://en.wikipedia.org/wiki/Spontaneous_generation

9

Page 10: Expressive Computation: Artworks by Widianto Nugroho

VoicePaint/VoicePrintSound-generated interactive paintings/printsCollaborators: Hendy Hertiasa of DKV ITB and Gustaff Harriman of Commonroom Network Foundation

10

Page 11: Expressive Computation: Artworks by Widianto Nugroho

11

Page 12: Expressive Computation: Artworks by Widianto Nugroho

VirologyViruStream and ViruSphereAbstraction and dyamics of biological life-forms behavior.

ViruStream Yellow

12

Page 13: Expressive Computation: Artworks by Widianto Nugroho

ViruStream Red ViruStream 2

ViruStream 1 ViruSphere 5

13

Page 14: Expressive Computation: Artworks by Widianto Nugroho

Floating and Spinning

14

Inspired by decostructivist architecture, this work presents chaotic and disordered forms, boxes and ellipses floating and spinning across three dime-sional space.

Page 15: Expressive Computation: Artworks by Widianto Nugroho

15

Page 16: Expressive Computation: Artworks by Widianto Nugroho

Psychedelic Waves

16

Play with pure visual aspects by combining basic compositional elements such as color, line, shape, etc. with movement. I seek to discover many effect, for example something like waves and optical ef-fects produced by those combinations. This sketch displays bouncing balls with repeated ellipses to create wave-like optical effects.

Page 17: Expressive Computation: Artworks by Widianto Nugroho

Dynamic Composition

17

Earlier studies exploring dynamic aspect of soft-ware using curves moving around canvas.

Page 18: Expressive Computation: Artworks by Widianto Nugroho

Widianto Nugroho is an artist, designer, program-mer, researcher, and lecturer. He is primarily in-terested in computational media, and free/open source software (FOSS), among other things.

In the computational media, he explores methods and tools used in computer science or informat-ics engineering fields (computation, algorithm, and programming) to address and solve design problems as well as medium of expression with its unique potential. This activity resulted in series of software and generative works[1][2]. He works mainly with Processing[3], an open source pro-gramming language and environment to program images, animation, and interactions. He contrib-utes to the Processing project through lectures, workshops[4], and translated the reference of Pro-cessing language into Indonesian. Since 2005, at Bandung Institute of Technology (ITB) as part time faculty member he teaches undergraduate course in digital printmaking, where he spreads the idea of art making with programming.

In the FOSS area, from early 2007, Widianto works as researcher at Microelectronics Center[5] ITB. He is a member of a research group focused on the distribution of freely available FOSS application packages and simple desktop environment that can be run on low-end PC and removable media. This research activity is part of the National Strate-gic Research on Open Source Software (Riset Ung-gulan Strategis Nasional, RUSNAS-OSS) program funded by Indonesian Ministry for Research and Technology (RISTEK). Also at the Microelectron-ics Center he and his colleague develop desktop theme[6] (icon set, desktop background, and login

manager) for Gnome[7] desktop that depicts Indo-nesian culture and tradition. The theme has been released and is currently packaged into BlankOn Linux[8], an Indonesian-flavor Linux distribution.

With the theme development effort, along with lecture and workshop, he aims to promote the adoption of FOSS applications particularly graph-ics, video, and audio editing software by creative community to meet their professional needs in creative productions. While currently could not be said completely better than that of the propri-etary software, with FOSS creative workers running small/medium businesses could get legal software without pay expensive license cost. Beside FOSS adoption by creative community, he also aims to encourage contribution from the creative commu-nity back to the open source community. Through the open nature of FOSS development, anyone are allowed to contribute to any FOSS project, includ-ing artists and designers. For example, artists and designers can submit their artworks, icons, and themes under the terms of any licenses that con-form to the Open Source Definition[9], or simply re-port usability issue found on the FOSS software. By doing so, the developer are helped to make FOSS software better.

In his other life, Widianto works as web and infor-mation system specialist at ITB. He is responsible for leading a team in designing, implementing, and maintaining the daily operation of top-level ITB web site[10]. The web site has won many awards: in 2003, second prize for higher education website from Indonesian Ministry of Communication and Information (KOMINFO); in 2005 and 2007, first

Biography

18

Page 19: Expressive Computation: Artworks by Widianto Nugroho

prize for best university web site from Directorate of Higher Education (DIKTI), Indonesian Ministry of Education (DIKNAS); in 2006, ranks 46 on Webo-metrics TOP 100 Asian Universities on The Web.

In 1998, located at ITB Library, he and his friends co-found the Knowledge Management Research Group (KMRG). At KMRG he contributed to the development of Ganesha Digital Library (GDL)[11], a web-based digital library software with its core technology of exchanging metadata collections among digital library servers in XML formatted files. It is possible through implementation of Dub-lin Core metadata standard and Open Archive Ini-tiative (OAI) protocol. Today GDL has been widely used and adopted by many institutions. It has been deployed as main engine in the Indonesian Digital Library Network (IndonesiaDLN) by which its mem-ber institutions are able to connect each other and exchange metadata of their digital contents. GDL is released as open source software under GNU/GPL license. With KMRG, he has consulting and working for many clients.

Widianto graduated in from ITB with Bachelor of Fine Arts degree in ceramics. After graduated he works in information technology (IT) area for almost ten years. He is currently doing his gradu-ate work in Curriculum Development leading to a Master of Education degree at Indonesia University of Education (UPI) in Bandung Indonesia.

Born in 1972, Widianto lives in Bandung with his wife Aam, his daughter Alia, and his son Ilham. In his spare time, Widianto enjoys hiking, flickring[12], tweeting[13], facebooking[14], and railfaning with

his family. As a railfan he loves to see General Elec-tric locomotive in action and hear the sound of its diesel engine.

Links[1] http://wnugroho.org[2] http://graphics.itb.ac.id/wnugroho[3] http://processing.org[4] http://flickr.com/wnugroho/tags/processing[5] http://www.paume.itb.ac.id[6] http://graphics.itb.ac.id/wnugroho/kamonesan[7] http://www.gnome.org[8] http://www.blankonlinux.or.id[9] http://www.opensource.org/docs/osd[10] http://www.itb.ac.id[11] http://digilib.itb.ac.id[12] http://flickr.com/wnugroho[13] http://twitter.com/wnugroho[14] http://facebook.com/widianto.nugroho

19

Page 20: Expressive Computation: Artworks by Widianto Nugroho

20

Residence

Jalan Riung Saluyu A-VI No. 9Bandung 40295

Tel: +62-22-7534270Cell: +62-815-700-6-222

Email: [email protected]: http://wnugroho.org

Education

2008-present, Universitas Pendidikan Indonesia, Master of Education (Magister Pendidikan/M.Pd.) in Curriculum Development, degree expected 2010

1992-1999, Institut Teknologi Bandung, Bachelor of Fine Arts (Sarjana Seni/S.Sn.) degree in Ceramics

Experience

2009Initial Developer/ArtistVoicePaint/VoicePrint: Sound-generated Interactive Paintings/Prints- Semifinalist at Indonesia ICT Awards (INAICTA) 2009- Presented/Performed by Commonroom Network Foundation at FGD Expo 2009, Jakarta

2009Artist Participant/Software TesterShare Experiment, MIT Media Labhttp://share.media.mit.edu/gallery

2008-presentResearch AssistantRiset Unggulan Strategis Nasional - Teknologi Informasi dan Mikroelektronika (RUSNAS-TIMe/Kementerian Ristek RI)Microelectronics Center ITB

2005-presentIndependent Researcher in Computational Media Art and Designhttp://graphics.itb.ac.id/wnugrohohttp://flickr.com/wnugroho/tags/generative

2005Language Reference TranslatorProcessing Project, MIT Media Labhttp://processing.orghttp://processing.org/about/people/

2000-presentWebmaster/Information System SpecialistITBAwards:- 2007, First Prize “The Best University Web Site” Direc-torate of Higher Education, Department of Education, Indonesian Government.- 2006, Ranked 49th of 100 in Asia at “Webometric World Universities’ Ranking on the Web.- 2005, First Prize “The Best University Web Site” Direc-torate of Higher Education, Department of Education, Indonesian Government.- 2003, Second Prize “University Web Site Competition” Ministry of Communication and Information Indonesian Government.

2000-2007Research Assistant/User-Interface DesignerKnowledge Management Research GroupITB Library

Widianto Nugrohob. July 23, 1972 in Bandung

Page 21: Expressive Computation: Artworks by Widianto Nugroho

2000-2007IT Consultant/Web Developer for various organizations and companies

1998-2000UNIX System/Network AdministratorITB Library

Teaching Experience

2009Teaching AssistantApplied Photography, Visual Communication Design Undergraduate Program, Faculty of Art and Design ITB

2005-2008Teaching Assistant/Computational Media InstructorDigital Printmaking, Visual Art Undergraduate Program, Faculty of Art and Design ITB

Interview/Publications

2009Web Standards Project/Opera SoftwareBruce Lawson, Web Standards in Indonesia – a university web developer perspectivehttp://www.webstandards.org/2009/02/20/web-standards-in-indonesia-a-university-web-developer-perspective/

2008Featured at Desain Grafis Indonesiahttp://desaingrafisindonesia.wordpress.com/2008/04/01/widianto-nugroho/

Page 22: Expressive Computation: Artworks by Widianto Nugroho

Widianto Nugroho | Studio

Jalan Riung Saluyu A-VI No. 9Bandung 40295

Tel: +62-22-7534270Cell: +62-815-700-6-222

Email: [email protected]: http://wnugroho.org

© 2005-2009 Widianto NugrohoAll works and this publication is licensed under Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License