class: center, middle # .title.alex[Creative Rust] Lisa '[lislis](https://lislis.de/)' Passing [Rust Linz May 2021](https://rust-linz.at/) --- class: middle ## $ whoami I'm Lisa or lislis and I'm a creative technologist. And I like Rust. --- class: center, middle .subtitle[So let's talk about creative coding in Rust.] --- class: center, middle, sec .subtitle[ What is creative coding?] --- class: middle > "Creative coding is [...] about creating something **expressive** instead of something **functional**." .cite[https://en.wikipedia.org/wiki/Creative_coding] --- background-size: contain # CC Techniques - Generative Art - Artificial Intelligence - Physical computing - Audio-visual performance - Light Art .cite[Overview from [Possibilities of Creative Coding webinar](https://youtu.be/4GIwWLy0iOg?t=2606) by Luis Ferreira] --- background-image: url(assets/crespo.jpg) background-size: 50% background-position: 90% 50% ## Artificial Intelligence Sofia Crespo [Neural Zoo](https://neuralzoo.com/) (2018 - 2020) --- ## Physical computing [Niklas Roy](https://niklasroy.com), [Kati Hyyppä](http://katihyyppa.com) J'ai faim! (2018) .center[
] --- ## Audio-visual Performance Live Coding / [Algorave](https://algorave.com/) [Canute](http://canute.lurk.org/) (2015) .center[
] --- background-image: url(assets/projection-mapping.jpg) background-size: 40% background-position: 90% 50% ## Light Art Projection mapping Festival of Lights, Lyon (2008) --- background-size: contain # CC Techniques .highlight[ - Generative Art] - Artificial Intelligence - Physical computing - Audio-visual performance - Light Art .cite[Overview from [Possibilities of Creative Coding webinar](https://youtu.be/4GIwWLy0iOg?t=2606) by Luis Ferreira] --- class: center, middle, sec .subtitle[Generative Art] --- class: middle > Work of **art created by a system** with some level of autonomy or without intervention of the artist. --- class: middle > The **artist designs the system** with rules and algorithms. --- background-image: url(assets/digital-grotesque-II-22-m.webp) background-size: 40% background-position: 90% 50% ## Architecture Michael Hansmeyer [Digital Grotesque II](http://www.michael-hansmeyer.com/digital-grotesque-II) (2017) --- background-image: url(assets/oulipo.jpg) background-size: 40% background-position: 90% 50% ## Literature and poetry [Oulipo](https://en.wikipedia.org/wiki/Oulipo) [Cent mille milliards de poèmes](https://en.wikipedia.org/wiki/Hundred_Thousand_Billion_Poems) (1961) --- background-image: url(assets/ambient-1.jpg) background-position: 90% 50% ## Music Brian Eno [Music for Airports](https://www.youtube.com/watch?v=vNwYtllyt3) (1978) --- background-image: url(assets/screen-manoloide.png) background-size: 40% background-position: 90% 50% ## Visual art [Manoloide](https://www.behance.net/manoloide) (2021) --- class: center, middle > Learn from (and be inspired by) what came before! --- class: center, middle, sec .subtitle[Vera Molnár] -- Pioneer of computer art --- background-image: url(assets/molnar.jpeg) background-size: 50% background-position: 100% 50% # Vera Molnár .half[ - Born 1924 - Studied art and art history 1942 in Budapest - Developed the *méthode imaginaire* in the 50ies and 60ies in Paris - Started making computer generated art in 1968 ] --- background-image: url(assets/axidraw.webp) --- background-image: url(assets/interruptoins.jpg) background-size: contain background-position: 90% 50% ## Interruptions (1968-1969) --- background-image: url(assets/desordres.jpg) background-position: 80% 50% ## (Dés)Ordres (1974) --- background-image: url(assets/structure.jpg) background-size: contain background-position: 80% 50% .half[ ## Structures de Quadrilatères (1988) ] --- class: center, middle, sec .subtitle[... and Rust?] --- class: center, middle, sce # nannou [//nannou.cc](https://nannou.cc/) [//github.com/nannou-org/nannou](https://github.com/nannou-org/nannou) --- background-image: url(assets/structure.jpg) background-size: contain background-position: 80% 50% -- ### What's the plan? -- - Look at what we have -- - Draw a random rectangle -- - Draw a grid of those -- - Choose colors -- - Draw more per position -- - Add some interaction --- class: center, middle, sec .subtitle[Let's draw some squares] --- --- background-image: url(assets/final.gif) background-size: contain --- ## Nannou and Rust specific - The nannou guide https://guide.nannou.cc/ - Nannou tutorial on creating *Gravel* by Georg Ness https://github.com/sidwellr/schotter - Session by Alexis André (@mactuitui) on creative coding in Rust https://www.youtube.com/watch?v=Ml6tpyTyXhM - *Generative Design* and *Nature of Code* examples in the repo https://github.com/nannou-org/nannou - Interview with Alexis André on generative art in Rust https://blog.abor.dev/p/making-generative-art-with-rust --- ## General resources and further reading - https://github.com/terkelg/awesome-creative-coding - https://generativeartistry.com/tutorials/ - https://www.notion.so/Creative-coding-algorithms-techniques-c5550ef2f7574126bdc77b09ed76651b - https://tylerxhobbs.com/essays - https://thecodingtrain.com/ - https://aiartists.org/ --- class: middle ## Thank you! .no-bullets[ - 📧 mail@lislis.de - 🐘 [@lislis@toot.cat](https://toot.cat/@lislis) - 🐙 || 🦊 lislis - 📽 [//lislis.de/talks/creative-rust](https://lislis.de/talks/creative-rust) - 💽 [//github.com/lislis/talk-creative-rust](https://github.com/lislis/talk-creative-rust)]