Explorations in Creative Coding
-
Upload
eelco-den-heijer -
Category
Art & Photos
-
view
301 -
download
2
Transcript of Explorations in Creative Coding
![Page 1: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/1.jpg)
Explorations in Creative Coding
Semantic Web OutingVU University, Egmond aan Zee
5 April 2016
Eelco den Heijer
![Page 2: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/2.jpg)
•What is Creativity?
•Man-Machine Creativity
•Creative Coding
•Examples; EvoArt, Arfunkel, Dichtfabriek
•Live Coding
![Page 3: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/3.jpg)
eelco den heijer
• Developer/ Architect/ Scrum Master• Part-time Researcher• MSc Cognitive Artificial Intelligence (Utrecht)
• PhD at Computational Intelligence Group, VU, with Guszti Eiben (2009-2013)
![Page 4: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/4.jpg)
![Page 5: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/5.jpg)
What is Creativity?• Margaret Boden - Creativity and Art: Three
Roads to Surprise
• Combinational - unusual combination of usual ideas
• Exploration - like local search in concept space
• Transformational - transforming a concept in concept space, ‘changing the rules’
![Page 6: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/6.jpg)
Combinational Creativity
![Page 7: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/7.jpg)
Exploratory Creativity
![Page 8: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/8.jpg)
Transformational Creativity
![Page 9: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/9.jpg)
Man-Machine
Generative Art
Man Made Art
Digital Designer
Computer Assisted Design
Evolu- tionary
Art
machineman
Parametric Design
Creative Coding
![Page 10: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/10.jpg)
![Page 11: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/11.jpg)
![Page 12: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/12.jpg)
![Page 13: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/13.jpg)
![Page 14: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/14.jpg)
![Page 15: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/15.jpg)
![Page 16: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/16.jpg)
Maker Culture
![Page 17: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/17.jpg)
![Page 18: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/18.jpg)
![Page 19: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/19.jpg)
![Page 20: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/20.jpg)
![Page 21: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/21.jpg)
Example 1: EvoArt
• Autonomous Evolutionary Art
• PhD research, 2009-2013
• Genetic Programming engine
• Multiple Genotypes
![Page 22: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/22.jpg)
EvoArt
• Computational Aesthetics
• Several functions to assess various ‘aspects of beauty’
• Multiple Genotypes; expression, SVG, Glitch
• Autonomous EvoArt system (vs. Interactive Evo Art)
![Page 23: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/23.jpg)
![Page 24: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/24.jpg)
![Page 25: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/25.jpg)
![Page 26: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/26.jpg)
![Page 27: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/27.jpg)
![Page 28: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/28.jpg)
Example 2: Arfunkel• Art Functions
• Research project in Functional Programming in Java 8
• Collection of building blocks that act on Images
• Generators
• Filters
• Merge/Combine
![Page 29: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/29.jpg)
Functions on Images
create
filter
![Page 30: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/30.jpg)
blend
split
terminate
![Page 31: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/31.jpg)
Functions• Various blend functions
• Various colour space functions
• All functions act on images or on image functions
• All functions act as Lego blocks
![Page 32: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/32.jpg)
![Page 33: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/33.jpg)
RGB
HSV
CIELAB
![Page 34: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/34.jpg)
Mirroring • Simple horizontal, vertical mirror
• Sort of Kaleidoscope effect
![Page 35: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/35.jpg)
Workflow ex. 1
Get Image
Get Image
Blend Recolour Solarize
![Page 36: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/36.jpg)
Workflow ex. 2
Get Image
Get Image
Blend
Recolour
MirrorLeft/Right
Recolour
![Page 37: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/37.jpg)
![Page 38: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/38.jpg)
![Page 39: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/39.jpg)
![Page 40: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/40.jpg)
![Page 41: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/41.jpg)
![Page 42: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/42.jpg)
![Page 43: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/43.jpg)
Arfunkel• Between Combinational and Exploration
Creativity
• Between Parametric Design and Generative Art
• Will not ‘break the rules’, since workflow is now hard coded
• Next step is making the workflow dynamic
• Introduce REPL - Read Eval Print Loop
![Page 44: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/44.jpg)
Example 3: Dichtfabriek
• Dichtfabriek: Poetry Factory
• Proof of Concept
• Collaboration between me and Wouter van der Land
• Built in Python
![Page 45: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/45.jpg)
Dichtfabriek• Kind of “Poetry Remix engine”
• Indexes poetry, stores word sequences (Markov chain)
• Produces a number of poetry forms:
• snowball (based on anagrams)
• limerick
• haikus
• ABAB
![Page 46: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/46.jpg)
at Art prat Praet patser Stapert raptekst startplek kerstplaat slaaptekort
As ras Rosa Laros Oerals Oeraals Boelaars Bostelaar Stobbelaar borstelbaan
WA anw Ewan nawee Waelen Salween leswagen wagenspel speelwagen wespenangel
![Page 47: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/47.jpg)
Word pairing
• “The quick brown fox jumps over the lazy dog”
• “The quick” + “quick brown” + “brown fox”, etc
• Create index in memory
• Create phrases starting with last word, using markov chain index
• Create indices use different corpora ==> remixing
![Page 48: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/48.jpg)
'bout 'bout it bout it is een sappieben dan hij komt vjezze oeh Jappieboy vaderlay lowsappie opgeluchtplat ja ik heb ondoeltreffender
alle schoon prijs aan t beter zangers rijk juweel in t hare kostgangers in liefdes almacht herdenkt de haardracht gegeven hun hulde aan windvangers
Source: William Shakespeare (Sonnetten)
Source: Jeugd van Tegenwoordig
![Page 49: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/49.jpg)
Formats & Functions• Different templates for poetry forms Limerick,
Haiku, SMS, Snowball, etc.
• Easily implemented in Python
• Small functions:
• Syllables (language specific)
• Groene Boekje (Dutch Word List)
• Anagram
• Rhyme
![Page 50: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/50.jpg)
is de club huilenlucht kwam ineens changde z'nholler at ya boy
aan de stervling steeds aan den gloed en zinneloos de schuld en voorproeft
Source: William Shakespeare (Sonnetten)
Source: Jeugd van Tegenwoordig
![Page 51: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/51.jpg)
Dichtfabriek
• Still Proof of Concept
• Real fun to do, very short development time
• Generative Art, Combinational Creativity
• Python is excellent for Creative Coding
• Currently: Dutch only, 100% form, 0% Content
• Many points of extension for future work
![Page 52: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/52.jpg)
Live Coding• Producing and Performing at the same time
• Similar to jazz improvisation
• Incremental changes
• REPL:
• Read, Evaluate, Print Loop
• LISP, Chuck, Impromptu
• Algorave
![Page 53: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/53.jpg)
![Page 54: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/54.jpg)
![Page 55: Explorations in Creative Coding](https://reader034.fdocuments.net/reader034/viewer/2022052318/5889438f1a28abde5a8b4e0d/html5/thumbnails/55.jpg)
Conclusions• Many forms of Creative Coding
• Creative Coding is totally fun
• Choice of Platform or Language is important
• How much creativity do you want to contribute?
• Or:
• How much control do you want to keep?