GMU:Bots 'n' Plots: Difference between revisions

From Medien Wiki
(Improve Application Procedure :P)
(Remove dead link and add new learning resource)
 
(49 intermediate revisions by 15 users not shown)
Line 8: Line 8:
''Date:'' Wednesday 17:00 - 20:30 Uhr <br>
''Date:'' Wednesday 17:00 - 20:30 Uhr <br>
''Venue:'' [[Marienstraße 7b]], Room 204<br>
''Venue:'' [[Marienstraße 7b]], Room 204<br>
''First meeting:'' Thursday, 15. Apr. 2015
''First meeting:'' Wednesday, 15. Apr. 2015


<br style="clear: both">
<br style="clear: both">
Line 14: Line 14:
'''NEWS'''
'''NEWS'''


'''You need to apply until April 12th, 2015.'''
'''>>> We will be screening our bots during the [http://www.uni-weimar.de/de/universitaet/profil/veranstaltungen/veranstaltungen-2015/summaery2015/ Summaery 2015] at the [http://www.digital-bauhaus-lab.de Digital Bauhaus Lab] <<<'''
Applications after the deadline will not be taken into consideration.


  '''Follow [http://twitter.com/botsnplots @botsnplots] on Twitter!
[[Image:botsn-plots-twitterwall-preview.jpg|800px]]
 
'''Save the date: Thursday 09.07.15, 20:00 – 23:00'''
 
 
'''Twitterbots at the Summaery:'''
 
* Awkward Bot ([http://twitter.com/awk_bot @awk_bot]) combining akward pictures with awkward questions
* Animal Faces Bot ([http://twitter.com/animalize_it @animalize_it]), an animalistic face substitution bot
* Picturius Bottian ([http://twitter.com/picturius @picturius]), a photoshop-like filter effects bot
* 3D Bot ([http://twitter.com/uipluis/ @uipluis]), make a 3D image!
* Kaleidogif Bot ([http://twitter.com/kaleidogif @kaleidogif]), feat. animated kaleidoscopic gifs
* 8bit Bot ([http://twitter.com/8bitify @8bitify]), retro computifies everything!
* Imagesorting Bot ([http://twitter.com/JHDrop @JHDrop]), messing up pixels since 2015
 
 
Check out the '''[https://twitter.com/botsnplots/lists/summaery-2015 List of Twitter-Bots]''' running on our brand new Videowall.<br>
Send them a tweet with an image to see what they do.<br>
Or just follow '''[http://twitter.com/botsnplots @botsnplots]''' on Twitter.


== Description ==
== Description ==
Line 41: Line 58:
As a result of the course you will acquire fundamental programming skills that will enable you to take more advanced courses in the future. <br>
As a result of the course you will acquire fundamental programming skills that will enable you to take more advanced courses in the future. <br>
It is recommended to combine the course with the [[GMU:eval(nature)|eval(nature) module]].<br>
It is recommended to combine the course with the [[GMU:eval(nature)|eval(nature) module]].<br>
Application for this class is due until April 5th, 2015 via email.<br>
To apply and to find out more about the deadlines, requirements and grading scheme, please refer to the [http://www.uni-weimar.de/medien/wiki/GMU:Bots_'n'_Plots website of the course].


== Beschreibung ==
== Beschreibung ==
Line 68: Line 81:
Im Rahmen des Kurses werden grundlegende Programmierkentnisse vermittelt, die es ermöglichen in Zukunft fortgeschrittene Kurse zu belegen.<br>
Im Rahmen des Kurses werden grundlegende Programmierkentnisse vermittelt, die es ermöglichen in Zukunft fortgeschrittene Kurse zu belegen.<br>
Es wird empfohlen diesen Kurs mit dem Projekt-Modul [[GMU:eval(nature)|eval(nature)]] zu kombinieren.
Es wird empfohlen diesen Kurs mit dem Projekt-Modul [[GMU:eval(nature)|eval(nature)]] zu kombinieren.
Die Bewerbung für den Kurs muss bis spätestens 5. April 2015 per Email erfolgen.<br>
Weitere Infos zur Bewerbung, Zulassungs-Voraussetzungen, Deadlines und Benotungs-Schema auf der [http://www.uni-weimar.de/medien/wiki/GMU:Bots_'n'_Plots Webseite  zum Kurs].




== Evaluation ==
* Presence and active participation (required)
* Punctual and complete submission of homework (required)
* 50% Technical and aesthetic execution of the final bot project
* 20% Emergent behaviour from making the robots talk
* 20% Documentation of the final project
* 10% Contribution to the MediaWiki


== Participants ==
* [[GMU:Bots_'n'_Plots/Sebastian Stang|Sebastian Stang]]
* [[GMU:Bots_'n'_Plots/Luis Hurtarte|Luis Hurtarte]]
* [[GMU:Bots_'n'_Plots/Apasri Titatarn|Apasri Titatarn]]
* [[GMU:Bots_'n'_Plots/Jan Dropmann|Jan Dropmann]]
* [[GMU:Bots_'n'_Plots/Azucena Sanchez|Azucena Sanchez]]
* [[GMU:Bots_'n'_Plots/Natalia Martínez|Natalia Martínez]]
* [[GMU:Bots_'n'_Plots/smin kim|Smin Kim]]
* [[GMU:Bots_'n'_Plots/Christopher Marx|Christopher Marx]]
* [[GMU:Bots_'n'_Plots/Shubhra Bhatt|Shubhra Bhatt]]
* [[GMU:Bots_'n'_Plots/Constantin Oestreich|Constantin Oestreich]]
* [[GMU:Bots_'n'_Plots/Oliver Hannemann|Oliver Hannemann]]
* [[GMU:Bots_'n'_Plots/Ashin Mandal|Ashin Mandal]]
== Language ==
== Language ==
The course will be in English, unless all participants are speaking German.
The course will be in English, unless all participants are speaking German.


== Eligible Participants ==
== Eligible Participants ==
Undergraduates and graduates enrolled in the faculties of:
Undergraduates and graduates enrolled in the faculties of:
 
* Media Art/Design
* Media Art/Design and Media Architecture
* Visual Communication
* Visual Communication
* Product Design
* Architecture


== Requirements ==
== Requirements ==
* Burning Interest in Artificial Intelligence, Computer-Linguistics and Generative Design
* Burning Interest in Artificial Intelligence, Computer-Linguistics and Generative Design
* Previous course about the Internet of Things highly recommended
* Previous course about the Internet of Things highly recommended
Line 94: Line 118:
* Time and Devotion for lots of coding homework, which may be frustrating at times
* Time and Devotion for lots of coding homework, which may be frustrating at times
* Programming experience considered helpful
* Programming experience considered helpful


== Application ==
== Application ==
 
The deadline to apply for this course is April 13th, 2015
The deadline to apply for this course is April 12th, 2015


  You need to provide links to previous work to be elligible to this course.
  You need to provide links to previous work to be elligible to this course.
Line 167: Line 191:
| 08. July 2015
| 08. July 2015
|}
|}
== Evaluation ==
* Presence and active participation (required)
* Punctual and complete submission of homework (required)
* 50% Technical and aesthetic execution of the final bot project
* 20% Emergent behaviour from making the robots talk
* 20% Documentation of the final project
* 10% Contribution to the MediaWiki




== Links ==
== Links ==
Here are a couple of links that should give you an idea of where this course is heading ...
Here are a couple of links that should give you an idea of where this course is heading ...


=== Learning Python ===
=== Learning Python ===
* [https://classpert.com/python-programming Python Online Courses] at Classpert
* [http://www.codecademy.com/en/tracks/python Learn Python] at Code Academy
* [http://www.codecademy.com/en/tracks/python Learn Python] at Code Academy
* [https://www.diveinto.org/python3/table-of-contents.html Dive Into Python 3]
=== Image Processing ===
=== Image Processing ===
* [http://software-carpentry.org/v4/media/ Multimedia Programming] by Software Carpentry
* [http://software-carpentry.org/v4/media/ Multimedia Programming] by Software Carpentry
Line 190: Line 206:
* [https://zulko.github.io/moviepy/ MoviePy] by Zulko
* [https://zulko.github.io/moviepy/ MoviePy] by Zulko
* [https://zulko.github.io/blog/2014/09/20/vector-animations-with-python/ Vector Animations with Python]
* [https://zulko.github.io/blog/2014/09/20/vector-animations-with-python/ Vector Animations with Python]
=== Audio ===
==== IO ====
* [http://people.csail.mit.edu/hubert/pyaudio/ PyAudio] realtime IO, PortAudio
* [https://github.com/thestk/rtaudio/tree/master/contrib/python/pyrtaudio PyRtAudio] realtime IO, RtAudio
* [http://www.ar.media.kyoto-u.ac.jp/members/david/softwares/audiolab/ audiolab] audio file IO, libsndfile
==== Analysis and Synthesis ====
* [http://www.cerlsoundgroup.org/Loris/ Loris]
* [http://musickit.sourceforge.net MusicKit]
* [http://sndobj.sourceforge.net SndObject]
==== Plotting ====
* [http://matplotlib.org matplotlib]
==== Number Crunching ====
* [http://docs.scipy.org/doc/ scipy and numpy]
=== Language Processing ===
=== Language Processing ===
* [http://h6o6.com/2013/03/using-python-and-the-nltk-to-find-haikus-in-the-public-twitter-stream/ Using Python and the NLTK to find Haikus in the public twitter stream]
* [http://h6o6.com/2013/03/using-python-and-the-nltk-to-find-haikus-in-the-public-twitter-stream/ Using Python and the NLTK to find Haikus in the public twitter stream]
Line 195: Line 224:
=== Twitter ===
=== Twitter ===
* [https://zulko.github.io/blog/2014/07/26/a-tweets-controlled-python-script/|A Python Script controlled via Twitter]
* [https://zulko.github.io/blog/2014/07/26/a-tweets-controlled-python-script/|A Python Script controlled via Twitter]
 
=== Contributions by Students ===
* [http://www.belfasttelegraph.co.uk/technology/robot-that-bought-mdma-passport-and-baseball-cap-released-by-authorities-31150495.html "Random Darknet Shopper" bot released from prison]
*[[Media:vapory-on-osx.txt |tutorial Vapory on unix]]
== Literature ==
== Literature ==
* Bird, Steven: ''Natural Language Processing with Python'' ISBN 978-0596516499 ([http://www.nltk.org/book/ online])
* Bird, Steven: ''Natural Language Processing with Python'' ISBN 978-0596516499 ([http://www.nltk.org/book/ online])
Line 201: Line 232:
* Russel, Mathew: ''Mining the Social Web'' ISBN 978-1449367619
* Russel, Mathew: ''Mining the Social Web'' ISBN 978-1449367619
* Segaran, Toby'': Programming Collective Intelligence'' ISBN 978-0596529321
* Segaran, Toby'': Programming Collective Intelligence'' ISBN 978-0596529321
=== Python ===
=== Python ===
This is a list of recommended books for the Python language:<br>
This is a list of recommended books for the Python language:<br>

Latest revision as of 19:43, 3 July 2019

Drawing by the Draughtsman-Writer Bot ca. 1800


Bots 'n' Plots — Malen nach 0 und 1

Werkmodul/Fachmodul
Lecturer: Martin Schneider
Credits: 6 ECTS, 4 SWS
Date: Wednesday 17:00 - 20:30 Uhr
Venue: Marienstraße 7b, Room 204
First meeting: Wednesday, 15. Apr. 2015


NEWS

>>> We will be screening our bots during the Summaery 2015 at the Digital Bauhaus Lab <<<

Botsn-plots-twitterwall-preview.jpg

Save the date: Thursday 09.07.15, 20:00 – 23:00


Twitterbots at the Summaery:

  • Awkward Bot (@awk_bot) combining akward pictures with awkward questions
  • Animal Faces Bot (@animalize_it), an animalistic face substitution bot
  • Picturius Bottian (@picturius), a photoshop-like filter effects bot
  • 3D Bot (@uipluis), make a 3D image!
  • Kaleidogif Bot (@kaleidogif), feat. animated kaleidoscopic gifs
  • 8bit Bot (@8bitify), retro computifies everything!
  • Imagesorting Bot (@JHDrop), messing up pixels since 2015


Check out the List of Twitter-Bots running on our brand new Videowall.
Send them a tweet with an image to see what they do.
Or just follow @botsnplots on Twitter.

Description

The internet of things is infiltrating the social web.
A rich ecosystem of social bots is evolving right now.
Those bots range from the purposeful via the poetic to the philosophical.
And they are starting to talk to each other.

In the Bots 'n' Plots course, we will create little robots that doodle and babble.
Our robots will be based in software, but we will also learn how to connect them with the physical world, using vision sound and serial connections.

In the course of the class you will:

  • Learn programming with Python
  • Process images and text
  • Create generative drawings and poems
  • Use APIs for the social web, including Twitter and Mediawiki
  • Create your own software bots and make them talk to each other

The course requires no previous programming experience.

As a result of the course you will acquire fundamental programming skills that will enable you to take more advanced courses in the future.
It is recommended to combine the course with the eval(nature) module.

Beschreibung

Das Internet der Dinge erobert die sozialen Netzwerke.
Im Augenblick entwickelt sich ein vielfältiges Ökosystem sozialer Bots.
Die Bots decken ein weites Spektrum ab, vom Praktischen, über Poetisches bis hin zum Philosophischen.
Und sie fangen an miteinander zu kommunizieren...

In Malen nach 0 und 1 werden wir kleine Roboter erschaffen, die kritzeln und brabbeln.
Unsere Roboter bestehen aus Nullen und Einsen, aber wir werden auch lernen sie mit der materiellen Welt zu verbinden, wobei Kameras, Töne und Kabel zum Einsatz kommen.

Im Rahmen des Moduls werdet ihr:

  • Programmieren mit Python lernen
  • Grafik und Text verarbeiten
  • Generative Grafiken und Gedichte erzeugen
  • APIs für Soziale Netzwerke nutzen, inkl. Twitter und Mediawiki
  • Eigene Software-Bots entwickeln und sie dazu bringen miteinander zu reden.

Dieses Modul erfordert keine Programmierkentnisse.

Im Rahmen des Kurses werden grundlegende Programmierkentnisse vermittelt, die es ermöglichen in Zukunft fortgeschrittene Kurse zu belegen.
Es wird empfohlen diesen Kurs mit dem Projekt-Modul eval(nature) zu kombinieren.


Evaluation

  • Presence and active participation (required)
  • Punctual and complete submission of homework (required)
  • 50% Technical and aesthetic execution of the final bot project
  • 20% Emergent behaviour from making the robots talk
  • 20% Documentation of the final project
  • 10% Contribution to the MediaWiki

Participants

Language

The course will be in English, unless all participants are speaking German.

Eligible Participants

Undergraduates and graduates enrolled in the faculties of:

  • Media Art/Design
  • Visual Communication

Requirements

  • Burning Interest in Artificial Intelligence, Computer-Linguistics and Generative Design
  • Previous course about the Internet of Things highly recommended
  • Working knowledge of Web Technologies (HTML, CSS, Javascript ...)
  • Time and Devotion for lots of coding homework, which may be frustrating at times
  • Programming experience considered helpful


Application

The deadline to apply for this course is April 13th, 2015

You need to provide links to previous work to be elligible to this course.

To: Martin Schneider
Subject: Bots n Plots /// Application
Content:

  1. Please provide links to three of your visual, poetic or algorithmic works online.
  2. Please answer these questions:
    • What is your favourite bot on twitter?
    • What kind of bot would you like to be able to create at the end of the course?
  3. Please tell us about you:
    • program and semester (Studienprogramm und Fachsemester)
    • matriculation number (Matrikelnummer)
    • Valid email address @uni-weimar.de (no other mailing addresses will be accepted) Why?


Schedule

This is the outline of the course.
The details may still be subject to change.
Theme Topic Date
Part 1: Python 01: Programming I 15. April 2015
02: Programming II 22. April 2015
Part 2: Plotter Bots 03: Drawing and Plotting I 29. April 2015
04: Drawing and Plotting II 06. May 2015
05: Image Processing I 13. May 2015
06: Image Processing II 20. May 2015
Part 3: Chatter Bots 07: Language Processing I 27. May 2015
08: Language Processing II 03. June 2015
09: Generating Poetry 10. June 2015
Part 4: Social Bots 10: Twitter Bots I 17. June 2015
11: Twitter Bots II 24. June 2015
12: Wiki Bots I 01. July 2015
13: Wiki Bots II 08. July 2015


Links

Here are a couple of links that should give you an idea of where this course is heading ...

Learning Python

Image Processing

Video Processing

Audio

IO

Analysis and Synthesis

Plotting

Number Crunching

Language Processing

Twitter

Contributions by Students

Literature

Python

This is a list of recommended books for the Python language:

Further Reading

There are a couple of books in the Semesterapparat of Society of Networked Things, that you might want to flip trough.