Tuesday 12 April 2022

The house on the house on the house


 

Lately I've been experimenting with generating pseudo random text. Using two inputs via scripts which use dadadodo https://www.jwz.org/dadadodo/. Interestingly dadadodo is installable on Debian/ubuntu based systems by just doing 'sudo apt install dadadodo' , which makes life a lot easier. The script runs from a terminal and  uses a randomiser which chooses between 1 to 3 lines from the top of the file writes those to a holding file then deletes those 3 lines from the top of the source files then adds them back at the bottom ( the script loops until  you stop it). Dadadodo randomizes the intermediate file and saves that to a temporary file then we use xdotool to write that to a vim window . Two scripts fight against each other to generate pseudo random Asemic text like this below :

w to begin.  Knew how to begin. 
Pdh ew eHRoeu sre aolnl yt hiem pHosusieb loen. 
t h e  H o u s eI nodne
eTdh ew eHRoeu sre aolnl yt hiem pHOosussieb loen: TNhoe
 H o u s e  o nu steh ei nH owuasiet
ionng tbhye  tHoeu slei totnl eT
h e  H  o u s ed oonr ,t hseo  Hsohues ew eont  TTHhee
rHeo usee moend  Tthoe
  H o u s e  o nb eT hneo  Huosues ei no nw aTIhtei nHGo ubsye  tohne
t h e  H o u s el iotnt lteh ed oHOor,u sseo  osnh et hwee nHto utsoe boen ntoh
e  H o u s e 
 ouns et hien  Hwoauistei nogn btyh et heo ulsiet tolne 
t h e  H o u s ed oonr ,T hseo
 HSohues ew eonnt TLhiet tHLoeu sdeo oorn, TShoe
 H o u s e  o ns hTEh ew eHNotu sIen doene
dt hwe rHEo urseea lolny 
t h e  H o u s ei mopno stshieb lHEo.u s eI nodneHouse on the House on The House on the House on
The House on the House on The House on The House
on the House on the House on The House on The
House on the House on The House on the House on
the House on the House on The House on the House
on the House on the House on the House on the
House on The House on the House on the House on
The House on the House on The House on The House
on the House on the House on the House on the
House on the House on the House on The House on
The House on the House on  t h e  H o uBSaec ko nt oT hteh eH otuasbel
eo,n hTahlef  Hhooupsien go ns hteh em iHgohuts
e  o n  T h e fHionuds ea noont THheer
 HKoeuys eo no ni tT<h eo rH oauts.e  oBna ctkh et oH
o u s e  o n  the HToaubsle ,o nh
atlhfe  hHOopuisneg osnh et hmei gHotu sfei nodn
 t h e  H o u saen ootnh eTRh ek eHYo uosne 
iotn, tohre  aHTo ukseey on tihte, HOoru saet 
o n  t h e  H ours ea to!n  
the
House on the House on The House on the House on
The House on the House on The House on the House
on the House on the House on
 

This is an unedited video of the output from the scripts :


 Source texts

 The two source texts used were Lewis Carrols 'Alice in wonderland' and William Hope Hodgsons 'The house on the borderland' sourced from Project Gutenburg project.

The scripts

There are 3 scripts to run this, I've renamed the source texts as source.txt and contra.txt . The first script is started from the command line and calls the other two scripts in a specific way. They run on an infinite loop until stopped.

  starter.sh

 lxterminal -e ./test.sh & xterm -e vim & lxterminal -e ./contra.sh

test.sh 

 #!/bin/bash
#./contra.sh
for (( ; ; ))
do
#rm new.txt
#rm inter.txt
n=$(( $RANDOM % 2 + 1 ))
f=$(( $RANDOM % 2 + 1 ))
#read first n lines of source file
find . -type f -name 'source.txt' | while read filename; do sed  -n '1,'$n'p' ${filename} > inter.txt;

#shuffle n lines to end of file and delete those lines from top of file
  sed  -n '1,'$n'p' ${filename} >> source.txt
 
#strip $n lines from top starting at line 1 ( to avoid using the same lines over and again)  
  sed '1,'$n'd' ${filename} > swap.txt
 
# replace original source with swap
  mv swap.txt source.txt
 
# Do the magic mangling
 
dadadodo -c $f -p 3 -w 50 inter.txt > new.txt

# type it into a vim window !!
WINDOW_ID=$(xdotool search --name vim)
xdotool windowfocus --sync $WINDOW_ID
xdotool type --file /home/crash-stop/repeater/new.txt
 
sleep 10
done
done

contra.sh

#!/bin/bash
for (( ; ; ))
do

n=$(( $RANDOM % 3 + 1 ))
f=$(( $RANDOM % 3 + 1 ))
#read first n lines of source file
find . -type f -name 'contra.txt' | while read filename; do sed  -n '1,'$n'p' ${filename} > inter2.txt;

#shuffle n lines to end of file and delete those lines from top of file
  sed  -n '1,'$n'p' ${filename} >> contra.txt
 
#strip $n lines from top starting at line 1 ( to avoid using the same lines over and again)  
  sed '1,'$n'd' ${filename} > contraswap.txt
 
# replace original source with swap
  mv contraswap.txt contra.txt
 
# Do the magic mangling
 
dadadodo -c $f -p 3 -w 50 inter2.txt > contranew.txt

# type it into a vim window !!
WINDOW_ID=$(xdotool search --name vim)
xdotool windowfocus --sync $WINDOW_ID
xdotool type --file /home/crash-stop/repeater/contranew.txt

sleep 5
done
done
 


 

 


Friday 8 April 2022

This is not a a desktop

 

  Over the last two years of the (ongoing) pandemic we have become more and more familiar with the space of our desktops. In the first few months of 2020 just doom scrolling and waiting to see how bad it became, but then as a means to carry on connections as the real world closed down.

Our desktops, laptop, desktop or phone became our workspace, meeting point, lifeline and entertainment, our desktops became our lived reality.

In that process of using how many of us started to notice annoyances, updates, quirks of design? How certain operating systems guided us  to make choices of software and methodology with built in bias or not so subtle adware, or how through the structure of menu, icon and choice of file manager we realised we are all now administrators constantly juggling the search for lost files, the inconvenience of constant updates and  the ever present fear of losing connection whilst looking for that one vital piece of information or that one application that has suddenly gone missing and we need to complete a vital task. 

This rabbithole reflects the corporate origin and destination of most of the software repurposed for home use, how did we come to this state of cubicle dweller orientated software that both reflected the times of the pandemic and the mindset of those who designed it. How can we break out of those inbuilt constraints and make this software performative and meaningful, to make art from and in this space?

In other words as 'This is not a desktop' is to 'this is not a Pipe' what then is it ?

ikillerpulse ( requires tomato.py in working directory)

I've been working on this script for the last week or so. What does it do? It takes an input video/s,  converts to a format we can use f...