Programming as a Form of Empowerment

Miriam Pierce
Communication & New Media
4 min readFeb 18, 2017

I have never considered myself a “tech person,” and it wasn’t until taking this class that I realized how much of a limitation that self-assigned label is. In this day and age, we are constantly using media. According to Manovich, software has become a layer that “permeates all areas of contemporary societies” (15). He refers to software an engine of culture. It enables us to do practically anything and everything we can think of. For many people, the majority of their interactions with the world are done through a screen. And yet, as Manovich points out, so many of us are utterly unaware of the complexities behind our nicely formatted and easily accessible folders and icons. There is a rising gap between people who can program, and people like me, who simply know close to nothing about this field (17). If software truly is the new engine of culture, that those who cannot program are at a clear disadvantage. Understanding how to code and program enables people to move away from a limited conceptualization of technology and toward self-empowerment.

Image source: https://picjumbo.com/testdrive/?i=HNCK2360.jpg&l=https://picjumbo.com/error-in-php-wordpress-code/

Douglas Rushkoff expresses this sentiment in the title of his book which is three chilling words: Program or be Programmed. The latter is what most people consciously or unconsciously choose. Though few know how to program, these few have great power. Rushkoff writes that the status quo is “revised and rewritten by those who have gained new access to the tools of [the new medium’s] creation” (12). He goes on to assert that this access is almost always limited to a small elite. This elite has the capacity to monopolize access to power and information, and we have already seen this play out (14). The interesting thing is that though most of us are “being programmed,” hardly any of us are aware of this. Hardly any of us understand the power certain individuals and corporations hold over information.

The Command Line Interface is a perfect example of this concept. I posit that the majority of technology users are like me, and had no idea what the CLI and GUI even were before being told. Because of this lack of knowledge, we are at a loss. We have no control over the inner workings of our devices. I remember when I was younger, our old and junky home computer would constantly need fixing. One of our family friends who was a programmer would come to fix it, and it always seemed so easy for him. What could’ve easily cost us hundreds was done in a matter of minutes. It must feel so empowering for programmers like him to have that kind of knowledge.

Photo source: https://unsplash.com/photos/xekxE_VR0Ec

While it might be easy for me to interact with my laptop in the way I do, I lose so much of the complexity and meaningfulness by not having that understanding. When I search for something, I do not take even a second to consider the behind-the-scenes work that goes on in the CLI. Just learning how to code basic HTML and CSS has been an eye-opening experience for me. This leads me to conclude that software literacy is of the utmost importance. In schools, we teach children a variety of subjects and topics that we think will be useful in helping them navigate life. As software has come to dominant the culture and communication of the twenty-first century, I believe that teaching children to navigate software can be a vital tool of empowerment and development.

_________________

Command Line Interface Cheat Sheet

pwd — return working directory name, writes the absolute pathname of the current working directory to the standard output

ls — displays the name of a file as well as any requested associate information

-s — Sort files by size

man ls — shows all the commands

q — leave the manual page

* — wildcard, stands for “anything”

cd desktop — “change directory command”; takes you on your desktop

cd .. — moves us up one directory

cd — — — brings us back to the home directory

open — open followed by a file opens that file

cat * — will read a file to you if you substitute a file for *

mv — moves a file

cp — copies a file

rm — deletes a file

vim — opens up the vim document editor

mkdir ProgHist-Text — creates a directory named ProgHist-Text

--

--