diff --git a/README.md b/README.md index 70ece86..2838a83 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ _a workshop by Cristina Cochior and Joana Chicau for Constant's work session [Co [Varia](http://varia.zone/en/) is a collective-space [^1] in Rotterdam focused on everyday technologies. We keep a [trail of photographs](https://vvvvvvaria.org/archive/) of what we've done. -Together, we try to experiment with various [tools](https://varia.zone/en/pages/collective-infrastructures.html) for collaborative processes, as well as collective infrastructure making and [self-hosting](https://varia.zone/images/variaecosystem.png). +Together, we try to experiment with various free software [tools](https://varia.zone/en/pages/collective-infrastructures.html) for collaborative processes, as well as collective infrastructure making and [self-hosting](https://varia.zone/images/variaecosystem.png). In October 2019, we wrote our own first [CoC](https://pad.vvvvvvaria.org/coc). @@ -40,213 +40,182 @@ Varia members use [XMPP](https://en.wikipedia.org/wiki/XMPP ) as a chat protocol Working on our own digital infrastructure allows us to adapt the tools to our own needs and behaviours; meaning that these bots make sense to us, but they may not make sense to someone else. -Currently, we use: -* [Streambot](https://git.vvvvvvaria.org/varia/xmpp.streambot): a bot that saves the images sent to the main Varia group chat and creates an [html page](https://vvvvvvaria.org/stream/) for them. + -* [Logbot](https://git.vvvvvvaria.org/varia/logbot): a bot that [logs](https://vvvvvvaria.org/logs/) the quotes that are sent to it. +Currently, we use: + +* [Streambot](https://git.vvvvvvaria.org/varia/xmpp.streambot): a bot that saves the images sent to the main Varia group chat and creates an [html page](https://vvvvvvaria.org/stream/) for them. +* [Logbot](https://git.vvvvvvaria.org/varia/logbot): a bot that [logs](https://vvvvvvaria.org/logs/) the quotes that are sent to it. * You can find a genealogy of the bots around Varia in this footnote [^2] -

+
### 15:30-15:45 - _bot as conductor or bot as conductive_ -_Conducting: "the art of directing the simultaneous performance of several players or singers by the use of gesture." [https://en.wikipedia.org/wiki/Conducting]. There are many roles as conductors [https://en.wikipedia.org/wiki/Conductor] Also, in connection to the enviroment: "a substance, body, or device that readily conducts heat, electricity, sound"._ - -Looking into the bots [examples](https://git.vvvvvvaria.org/ccl/bots-of-conduct) -**_name:_** cross.py; - -**_action mode:_** - -**_situation:_** +* create an account and [choose nickname](https://conversejs.org/fullscreen.html#converse/register ) on conversejs +* once you are logged in, join the group chat named botsofconduct@muc.vvvvvvaria.org
-**_name:_** gather.py; - -**_action mode:_** - -**_situation:_** +_Conducting: "the art of directing the simultaneous performance of several players or singers by the use of gesture." https://en.wikipedia.org/wiki/Conducting. There are many roles as conductors https://en.wikipedia.org/wiki/Conductor also, in connection to the enviroment: "a substance, body, or device that readily conducts heat, electricity, sound"._
-**_name:_** greet.py; - -**_action mode:_** - -**_situation:_** +Looking into the bots [examples](https://git.vvvvvvaria.org/ccl/bots-of-conduct)
-**_name:_** spark.py; +**_name:_** transit.py; -**_action mode:_** +**_action mode:_** announces when someone enters or leaves the room; -**_situation:_** +**_situation:_** finding non-verbal ways of communicating through presence and absence; making presence felt otherwise; -
- - -**_name:_** whisper.py (we don't have this one yet) -**_action mode:_** - -**_situation:_** +
-

+**_name:_** gather.py; -* split into groups of maximum 5 (mixed interest in code) +**_action mode:_** generates a shared language; it creates a collective document; -

+**_situation:_** a collective discursive setting that generates its own vocabulary; -_BREAK — 10 minutes ;)_

-### 15:45-16:25 — _creating situations_ +**_name:_** greet.py; -Imagine you are a collective-space with your group peers and you have been active for 2 years +**_action mode:_** sends a message when it enters the room; - -* **create a name for the chatroom:** - +**_situation:_** when there is a theme, for example: "send a reference to an existing or imaginary code of conduct, complaint, guideline, bug report, open letter, license or other social-technical protocol and explain why it is of interest to you."; how one wants to be introduced; - * to open up the imagination (rooms /sites of action/ environments); +

-* **imagine a situations:** +**_name:_** spark.py; - * from your own experiences working in collaboration, or with a collective, or having read a CoC, try to recall a specific moment which can define an action mode; +**_action mode:_** replies to a specific word; brings alternatives into the situation; tries to create new habits and terminologies; +**_situation:_** potentially in moments when a situation seems difficult and there is a need for more joyful interactions; - * which situation to think through? / if a code of conduct would exist for a situation? +

-* **embody the situation through a conductor / conductive bot:** +**_name:_** whisper.py - * in relation to the situation, does your bot act as conductor or as conductive? +**_action mode:_** takes what someone says to it in confidentiality and echoes it to a group chat, thus anonymising it; +**_situation:_** there are remarks or complaints in the room, but the person does not feel comfortable to bring up the issue themselves; - * what are your "action modes" (for eg.: sitting; dancing; witnessing; listening; gathering; greeting; sparking; whispering; reminders is a specific kind of action); action modes that create (or perform within specific) situations (for eg.:conversation is unbalanced); +
+Split into groups of maximum 4-5 (mixed interest in code). - * how can bots be embodied / physically enacted? what gestures would it perform? +
+**_BREAK — 10 minutes ;)_** - * what apart from language can be used as a way of conducting? what other modes of expression (non-linguistic)? +
- * other possibilities for bot behaviour: +### 16:10-16:30 — _creating situations_ +Imagine you are a collective-space with your group peers and you have been active for 5 days; +* **create a name for the chatroom:** + + * or rooms /sites of action/ environments ..to open up the imagination of what a chatroom may be like! - * iteration, repetition; +* **imagine situations:** - * lack of memory + * from your own experiences working in collaboration, or with a collective, or having read a CoC, try to recall a specific moment which can define an action mode; - * other temporalities (duration / tempo); +* **action modes: embody the situation through a conductor / conductive bot:** + * in relation to the situation, does your bot act as conductor or as conductive? + * what are your "action modes" (for eg.: sitting; dancing; witnessing; listening; gathering; greeting; sparking; whispering; reminders is a specific kind of action); + * action modes that create or perform within specific situations (for eg.:conversation is unbalanced); + * what apart from language can be used as a way of conducting? what other modes of non-linguistic expression? - * will your bot perform in other space extensions? speaking to other (chat)rooms? to other spatial formats (file systems, like the glossary and the txt file); +* **further questions:** + * how could the bot be physically enacted? what gestures would it perform? + * some (non-exhaustive) attributes of bot behaviour: iteration, repetition, lack of memory, other temporalities (duration / tempo); + * will your bot perform in other space extensions? speaking to other (chat)rooms? to other spatial formats (file systems, like the gather.py which uses a txt file for adding words to a glossary); * will your bot be a channel between private to public? semi-public to semi-public? semi-public to private? private to private? - - - * will your bot relate to other bots? - - - * thinking of distance and proximities between members and bots: is it listening to a specific member? is it listening to other bots? + * will your bot relate to other bots? thinking of distance and proximities between members and bots: is it listening to a specific member? is it listening to other bots?

-### 16:25-16:40 - _round of ideas-sharing_ +### _installing and running the bots_ (optional) + +**For computers running Windows OS** +* install [Anaconda](https://docs.anaconda.com/anaconda/install/windows/) with python 3 + +**For computers running MacOS** +* open the terminal +* check which version of python you have: + > python -V +* if you have a python 2 version, you could install [Anaconda](https://docs.anaconda.com/anaconda/install/mac-os/) with python 3 + +**For computers running Linux OS** +* open the terminal +* check which version of python you have: + > python -V + > python3 -V +* if you have a python 2 version, you could install python 3 + > sudo apt-get install python3 + > sudo apt-get install python3-pip + +* download the bots from this page +* go to the folder where you have installed them +* run the following commands in the terminal: +> pip3 install slixmpp requests +* to run a bot, you can copy paste the commands which are already mentioned in the bot file, but a general command looks like this: +> python3 bot.py -d -j administratorbot@conversejs.org -r botsofconduct@muc.vvvvvvaria.org -n bot -p testing +* where: + - j stands for JID (jabber id) + - r means room + - n stands for bot nickname + - o stands for for output + - . means here + +* if you dont have a code editor, we can suggest (among others) [Sublime Text](https://www.sublimetext.com/) +* to install the conversations app on your phone, you could use either Conversations or [Quicksy](https://quicksy.im/) for Android phones (among others)

-### 16:40-17:10 - _installing_ - -* create an account and choose nickname on converse: https://conversejs.org/fullscreen.html#converse/register - -* once you are logged in, join the group chat named tuwazap@muc.vvvvvvaria.org - -_optional_: for anyone who would like to install and run the bots: - - -1. are there any Windows users? - -2. open the Terminal application on your computer - - -3. install python3 - -dependencies (pip install slixmpp requests, install python3, pip3, text editor) - - -3. download the bots: https://git.vvvvvvaria.org/ccl/bots-of-conduct/src/branch/master - -5. run a bot in the terminal (be sure to be in the same directory of the files): - -4. show & explain the parts where one can intervene - -> $ python3 bot.py -j user@vvvvvvaria.org -p password -r tuwazap@muc.vvvvvvaria.org -n nickname -o . - - -* -j means JID (the xmpp protocol) - -* -r means room - -* -n means bot nickname - -* -o output - - -* . means here - -

- -* if you dont have a code editor, we can suggest (among others): https://www.sublimetext.com/ - -* if you don't have python3 installed: - -* to install the conversations app on your phone [click here](https://quicksy.im/) - -

- -### 17:10-17:30 - _bot in the situation_ +### 17:00-17:30 - _bot in the situation_ * experimenting with bots: either adapt the ones we provided (experiment with code) or enact the bots' behaviours iteratively (bot behaviour); - -* bot behaviour: iteration, repetition +* bot behaviour: iterations, repetition, ...

-### 17:30-18:00 - _present and perform_ +### 17:30-18:00 - _discussion and performing_

### Footnotes -**Link to reference's [pad](https://pad.vvvvvvaria.org/Bots_of_Conduct_References) — further references and materials assembled by Joana and Cristina - feel free to add your owns!** +**Link to reference's [pad](https://pad.vvvvvvaria.org/Bots_of_Conduct_References) — further references and materials assembled by Joana and Cristina - feel free to add your own!** [^1]: Varia is not merely a collective, nor merely a space. Varia is an interdependent concatenation of both [^2]: * https://gitlab.com/relearn/relearn2017/blob/master/xmpp-bots/timekeeper-bot/timekeeper.py (Relearn 2017) - * https://gitlab.com/relearn/relearn2017/blob/master/xmpp-bots/collection-bot/collection-bot.py (Relearn 2017) - * https://gitlab.com/relearn/relearn2017/tree/master/xmpp-bots/archive-bot (Relearn 2017) - * https://gitlab.com/relearn/relearn2017/blob/master/xmpp-bots/cake-bot/cake-bot.py (Relearn 2017) - * https://gitlab.com/lidia_p/author-is-not-present/ (Bots by Lidia and Cristina, 2019) \ No newline at end of file diff --git a/log_bot_01.jpg b/log_bot_01.jpg new file mode 100644 index 0000000..7205bee Binary files /dev/null and b/log_bot_01.jpg differ diff --git a/log_bot_02.jpg b/log_bot_02.jpg new file mode 100644 index 0000000..1ebe79c Binary files /dev/null and b/log_bot_02.jpg differ