Winnie Soon (they/them) + Mara Karayanni (they/them) (6 March 2023)
a joint Sussex Humanities Lab & Full Stack Feminism workshop
Bash is a command line interface and a scripting language developed in 1989 as a piece of free software originally for the GNU System (GNU is not UNIX) and it is the default shell for Linux. Shell interface are also in Mac OS and Windows)
Anyone have experience with Bash?
Do you like bash? and why?
what are the functions/syntax you use most?
echo "hello world"
interesting object of study (technical and research object) in the area of computational culture
bash shell developed by the Bell Labs for the Unix OS, end 70s
Unix became popular due its modularity and exportability:
less functionality in kernel.
move functions to user libraries
Unix was not free distribution like Linux.
AT&T the telephone monopoly in US until 1982
Once monopoly was broken
they licensed and monetized Unix in 1982.
Computer wiring
Cray hired women for this task – ones selected for their patience and precision
https://designblog.nzeldes.com/2009/01/the-opposite-of-human-engineering/
Her work focused on graphics, word processing, and language design. Some of her earliest work at the Computing Science Research at Bell consisted of configuring systems to run an early version of Unix written in assembly language.
Expect the output of every program to become the input to another.
Design and build software, even operating systems, to be tried early, ideally within weeks. Don’t hesitate to throw away the clumsy parts and rebuild them.
Doug McIlroy in The Art of Unix 2003, p. 34
Cloud computing & economies of scales: AWS or Google Compute Engine
lack of peer review practices
In the late 1980s, Ramey took over from Brian Fox as the lead developer of Bash, and in 2014, he received an email about a serious security hole.
Within hours, hackers had released code that could take over vulnerable machines and turn them into a malicious botnet.
[T]here's a lot of code that doesn't actually get very many eyes at all," he says. "And a lot of open-source projects don't actually have all that many developers involved, even when they are fairly core.
The Internet Is Broken, and Shellshock Is Just the Start of Our Woes, Wired
Gettext decision making and gender bias
In this manual, we use he when speaking of the
programmer or maintainer, she when speaking of the translator
a patch that was submitted by a contributor in the GNU community was not accepted by the code maintener
- In a specific document or documentation, do we
want gender-neutral speak?- If we want gender-neutral speak, what is the
English grammar element that works best?
Here, it's futile to discuss the second question, since
the answer to the first question is already "no".
Bruno Haible skreiv, 2020
email thread on the GNU listsByte magazine 1977
(The magazine - a micocomputer magazine around hobbyists discussed ideas, sought help, shared opinions, and planned club events about computing technology. -1975-1988 / USA)
The Origin of Unix, 2019 conference 50yrs of Unix
Interview question for the coming manual:
What do you think is the most significant disparity in the sysadmin/programmer/coder role (gender, age, ethnicity, class) and why? Do you see this gap growing or being alleviated/fixed?
Mariana Marangoni
This field [system admin] is still a very hostile environment for anyone who isn’t a white middle-class cisgender man, and it’s not enough to advocate for gender equality only – as socio-economical background, transphobia, and ethnicity are also big factors in determining who feels welcomed in sys-admin (and similar) roles. There is also the case of how the technology industry sees Asian men as more suited to these roles, profiling and generalizing them in another form of racism. In recent years, there has been much more conversation around the issue, and many companies and organizations are trying to address the disparity – not always in the most successful of ways, as just hiring people to ‘diversify’ the team without any cultural and systemic changes ends up only making these professionals frustrated, detached, and burnt out.
Kat
From what I see the industry is still mostly white cis hetero men. Keeping up with changes in tools can be difficult and stressful, so I think this pushes people out. A side effect of this is that mistakes get repeated by a new generation.
Queer OS (Kara Keeling 2014) - a scholarly political project
Queer OS would take historical, sociocultural, conceptual phenomena that currently shape our realities in deep and profound ways, such as race, gender, class, citizenship, and ability, to be mutually constitutive with sexuality and with media and information technologies, thereby making it impossible to think any of them in isolation. It understands queer as naming an orientation toward various and shifting aspects of existing reality and the social norms they govern (p. 153)
It insists upon forging and facilitating uncommon, irrational, imaginative, and/or unpredictable relationships between and among what currently are perceptible as living beings and the environment in the interest of creating value(s) that facilitate just relations. (p. 154)
Queering Code (Winnie Soon, 2022) & Forkonomy (Winnie Soon & Tzu-Tung Lee, 2020-2022)
Fuck censorship by Mark Sta Ana - booyaa
a list of commands (commonly used)
cd, ls .
vim/nano
cat
man -> terminal based manuals
cp / mv / rm / mkdir
curl / wget
tail / less / more -> reading logs
8th Mar - call for a Counter Cloud Action Day | international activities | https://systerserver.net/8m
intro
mkdir queerbash
(make a directory called queerbash)ls
(list: can you see the queerbash directory?)cd queerbash
(so you are now at the bash directory)nano kissing.sh
(editing mode)Y
and then press Enterls
(list the file in the directory)bash kissing.sh
(to run the bash script)queer=love kisses=(dear sweetheart darling baby love monkey) read -p "Enter your lover's name : " dear for kiss in "${kisses[@]}"; do if [ "$kiss" = "$queer" ] ; then echo kiss you $kiss, $dear else echo :* :* $kiss, $dear fi done
Concept | e.g | what |
---|---|---|
Variable | queer=love |
some kind of storage that hold values in a string format |
Array | kisses=(dear sweetheart) |
a list of data that hold various values in a string format |
Read input | read -p "Enter your lover' name : " dear |
allow users to input and extract the input data for usage |
for loop | for kiss in "${kisses[@]}"; done |
iteration to run through a list of data - array |
conditional statement | if [ "$kiss" == "$queer" ] ; then else fi |
set condition to go for different path |
syntax: echo | echo ":* :* $kiss, $dear"; |
display msg/text on screen |
Try to follow previous steps, copy the code below, save the file and run the bash script:
nano missing.sh
(editing mode)Y
and then press Enterls
(list the file in the directory)bash missing.sh
(to run the bash script)while $love how="so" do so+="${how} " # so = so + ${how} echo I miss you $so much sleep 0.2 done
Operator, Purpose, For DataType =, Equal to operation, string ==, Equal to operation, string !=, is not equal to, string <, is less than in ASCII alphabetical order, string >, is greater than in ASCII alphabetical order, string -z, if a string is empty (or null), string -n, if a string is not empty (or not null), string -eq, is equal to, number -ne, is not equal to, number -lt, is less than, number -le, is less than or equal to, number -gt, is greater than, number -ge, is greater than or equal to, number
awk for creating visual poetry
Run the code:
bash kissing.sh | awk '$1 ~ /kiss/ { print $3 "\t" $2 "\t" $4 }' | sed 's/,/ /g'
bash kissing.sh lover
$0 = kissing.sh
$1 = lover
Love Letter Generator (1952), original by Christopher Strachey, and remade by Nick Montfort
ref: A Queer History of Computing by Jacob Gaboury (2013); Wardrip-Fruin, N. (2011). 14. Digital Media Archaeology: Interpreting Computational Processes. In Media Archaeology (pp. 302-322). University of California Press.
queer=love kisses=(dear sweetheart darling baby love monkey) read -p "Enter your lover's name : " dear for kiss in "${kisses[@]}"; do if [ "$kiss" = "$queer" ] ; then echo kiss you $kiss, $dear else echo :* :* $kiss, $dear fi done
while $love how="so" do so+="${how} " echo I miss you $so much sleep 0.2 done