User:Golubjevaite/hackpact

From XPUB & Lens-Based wiki

PROJECT PROPOSAL

what do you want to make?


WRITER OR(IS) A READER OR(IS) A WRITER

> I want to investigate the topic of alternative reading, writing & publishing.
> What I mean with alternative here in this case is mainly alternative to printed r,w&p as well as what is considered a linear storytelling.
> My main goal with my project would be to develop a series of prototypes (tools) that would help me to research (through critical making) and experiment with a concept of a narrative.
> I would describe myself as a maker first of all and I usually "think" and come to conclusions thought a making process. That is why I cannot give you a full and concrete description of what the end result exactly will be. What I have now is a goal (idea) and an interest (topic) and a starting point ( current process). I like to work this way because it helps me to discover more as I go along the way, which is also how I want users to experience my work.
> The prototype I am currently working on is text to web content tool.
> Basically a tool that will take text as an input and will output an ongoing story on a webpage, where a reader will be able to further configure/manipulate the content of the story.
> So far I am deviding the curret idea into 3 main parts: input/ output / input2

          
                           (input)        |-------------------output-------------------|     (input2)                     
                            TEXT          |                TEXT2CONTENT                |   CONFIGURATION    
                                          |           (img, sound, txt, video)         |
               WRITER --->---->---->----> | DATABASE ---> ----> -----> ---> WEBPAGE    |<--<--<--->-->--> READER is a WRITER2
               Python                     |(DuckDuckGo)                   (Html/Css/   |                      Browser
              IRC chat                    | (WikI)                        Javascript)  |
                                          |--------------------------------------------|
                                                              |
                                                              |
                                                              |
                                                          (input 3?)
                                                        READER/WRITER
                                                            (???)

[input]
> How could computation help to develop new ways of telling a narrative?
> The idea is that any type of text can be the input. It can be something similar to a poem, a caption, a tweet, a code, a conversation, depends how a user or multiple users (writers) want to use it and what story they want to tell and/or what language they are comfortable using. The input text could be 1500 words and the output may be just 1 image. The other way around as well. The content on the webpage will update as long as there will be new text coming in.

[output]
> I am interested in what it means to read in post-digital and what I mean by reading is percieving information. Since we already are practising new behaviours of reading when we scan the content browsing the internet, I am interested in these new habits and how our cognitive abilities together with memory are effected by it. > I am curious about how it influences our sense of intuition and how could we read without it being spelled out to us? How far could we push the poetics (within computation) and in fact if it could communicate anything?

[input2]
> I want to challenge the relationship between a writer and a reader. > As you can see in the diagram sketch above what I want the user (a reader) on the browser side to have the power to affect the story that it is reading as well and therefore become what I would call a WRITER2 (too).

> At the moment I am working on this for my own purposes, but I would be happy to share my (final) project results and perhaps collaborate further with people who are interested in simillar topics and questions.

how do you plan to make it?


TO DO

  • Make an IRC_bot & make it "listen" to the input text
  • Research on different data storages (Wikidata, archive.org, etc.)
  • Explore internet search engines & possibility to download webcontent with a help of a bot (Python / bash)
  • Look into other Python/ Bash tools to grab/download content (youtube-dl/videogrep/pytube etc.)
  • other Python libraries for manipulating and editing img, sound, video, txt (imagemagick, pillow, ffmpeg, nltk, webvtt, etc.)
  • Install a MediaWiki and upload the personally collected AV material on it + connect it to the bot
  • Look into live editing the webpage/ content manipulation tools/ RGB split etc.
  • Test the prototypes with a help of other people and gather some feedback / XPUB & friends, and using Mastodon perhaps to find people outside my circle (as Marloes suggested).



A more detailed description:
> A single or multiple users will have the possibility to join an IRC chatroom and contribute (to write) some text (narrative). An IRC_bot [link] joins a dedicated IRC channel and "listens" - collects the text.
> Then I want to try out 2 ways of providing content for the website:
a. After the bot gets some input it runs a search on the internet for some content material and downloads it to a folder, dedicated to the webpage. For now I worked with DuckDuckGo[link] for images, which worked pretty well, but I want to explore other possibilities for other type of content.
b. I want to install a MediaWiki and create a personal database with my own collection of AV material. Then connect the bot with the API, so it retrieves the content from the Wiki.
> There will be other Python scripts that will help to manipulate the downloaded material into a final visible content, that will then appear on a webpage to view (to read).
> Apart from that I want there to be some additional tools (probably made with Javascript) in the front end of the webpage for the viewer (a reader) to manipulate (to write) the content (narrative) further. I want a single or multiple users have the possibility to browse the website and manipulate the content.
> The final presentation of this project as I see it now would be in a performative & interactive way - showcasing the prototypes live. People will be able to visit the webpage as well as to join inside a dedicated IRC chat room.

what is your timetable?


oct - nov:
1 . find a topic of interest
2. first hackpacts
3. write the project proposal + thesis outline
4. begin IRC_bot making
5. looking into Python libraries/ basics

6. search engines (DuckDuckGo)
7. look into ppl that could help me with my project

dec - jan
1. thesis first chapter + continue research/reading
2. pyratechnic workshop
3. continue with bot experiments
4. continue with Python libraries
5. start with webpage development

feb
1. thesis writing
2. install MediaWiki + upload personal collection
3. MediaWiki API
4. look into javascript possibilities for the webpage/ basics
5. have some test & feedback sessions with ppl

march - april
1. Finish writing thesis
2. Make further decissions/ changes/ improvements / remix on the prototypes according to the feedback & personal observations
3. Further webpage development/ configuration options / javascript
4. Test again

may
1. Wrap it up & make it presentable for the graduation
2. Share on Git(?)

why do you want to make it? & relation to previous practice

relation to a larger context

who can help you and how?

bibliography

HACKPACT

starting point

getUserMedia

> Webcam filters
> Take photo button + clear button
> Canvas
> rgbSplit
> Javascript
> navigator.mediaDevices.getUserMedia() / link

// Get media stream
navigator.mediaDevices.getUserMedia({video: true, audio: false})


File:Webfilter1.jpeg File:Webfilter2.gif


IRC bot

> Using Michaels reverse bot as a base / link

import irc.bot

> Downloading an img from a url into a folder

import requests # to get image from the web
import shutil # to save it locally
import re

image blend with PIL

# alpha-blend the images with varying values of alpha
alphaBlended1 = Image.blend(image5, image6, alpha=.8)
alphaBlended2 = Image.blend(image5, image6, alpha=.2)