Abandoning code, abandoning creativity, and remembering

Lauren Liss
4 min readMay 19, 2022

--

Have you ever done some version of this? You have an idea, probably loosely based in some other idea, and then you try to make something new. That is how we make, usually… some combination of that, at least if it is intrinsically motivated.

I have a bad (?) habit of starting programming dalliances, getting pretty far in making them real, and then walking away from them. If I had to build a physical space to hold all of my abandoned projects, it would be cavernous, stacked, overflowing, messy: Marie Kondo’s absolute nightmare. They all sparked joy at some point, and maybe they still do spark joy. I hoard my abandoned ideas, like an orphanage. Concepts just waiting to someday provide service, or meaning, or insight.

Marie Kondo “this one does not spark joy”
Thx Twitter! Marie Kondo, discussing joy.

In 2017, I was dealing with a lot so I was also making a lot. Making is how I cope with stress response: it gives me a sense of control when I feel unmoored from a genuine lack of control in my real life (see also: March 2020 - right now). Making manifests in a lot of ways for me: programming, cooking, writing, sewing, preserving food, crafting, tinkering, gardening… I have even made two human beings!

RNNs were really cool then. In my class, we had discussed https://this-person-does-not-exist.com/ and a student asked if the “faces” of “people” generated by the code can be used for Personas, and also who owns the copyright to the photo? GREAT QUESTION. If you have an answer to this question, let’s talk about THAT.

So I played around with setting up some sort of machine learning something that might make some “faces” of “people” for me to manipulate — because I am an academic at an art school, but I also mess with code because I am a nerd. Whenever I play in a code sandbox for no one but myself, I start with some quick notes to frame the exploration. This helps me source related code in a modular format, and then I play.

  1. Set up a machine learning environment (thx to a friend that loaned me a Mac mini so I could just run it for days at a time)
  2. Learn Python (I had never used this language, though I use many others)
  3. Find a huge data set of human face photos (there are a lot of these, thankfully!)
  4. Normalize the dataset photos to be black and white, and the same orientation/scale.
  5. Feed the photos into a modified GAN (I don’t remember how I did this? I think it was similar to this one: https://www.tensorflow.org/tutorials/generative/dcgan)
  6. After getting a GAN to “create a face,” I used another modified codebase to run the “photo” through a Python script that converted it into a line drawing (to prep it for a plotter printer).
  7. Print the line drawn face the computer made me on a piece of linen that I taped to paper and put in my regular, not-a-plotter printer.
  8. Embroider the lines by hand, myself.
A face drawn by a computer, embroidered by hand on linen
The single output artifact: A GAN made this face, I made this embroidery. I find this funny, because humans usually make “the meaning” and then use machines to “make the product.” This is the inverse?

Pretty cool, right?

Here is the thing. Working in code is not an easy place to explore, even if you have existing knowledge about programming. It is hard! There is a reason that it is hard to thrive as an engineer, or a programmer, or a dev — it is mentally taxing work. It can be very rewarding, too!

Programming is one of the most modular hills to push a boulder up: it is a landscape of constant inclines and plateaus, at least for me. Each struggle, I get behind my boulder and push in the hopes that my neuroplasticity might (this time) help me get to the next plateau of knowledge and ability. Anyone else feel this way when programming?

I do this because I studied programming as an undergrad, and I studied human cognition and development (relative to how technology informs that) in grad school. I know this struggle is meaningful, because it is how I modify my existing mental models. Assimilation and accommodation, according to Piaget. This is how we learn. We grow when we learn. It is not always easy. So I get behind my boulder and push, usually for my own pursuit of knowledge.

I am also a woman who has been programming in some form since 1999. I will not entertain a fight about this topic on this article, but it is objectively difficult to be a woman in this industry.

So I work pushing my boulder, and then I leave it. Sometimes it is partially up the hill, sometimes it is languishing on a plateau. There are so many programming languages and so there are so many hills and plateaus. It is a landscape that is rugged and varied and tall and broad, and it is littered with ideas I couldn’t finish myself, but tried.

The Prompt

Do you have a project you started but never finished? Why? What was it? How could you make it real if you started today, or soon?

--

--

Lauren Liss

Teacher “Web Developer” Maker of Things and People. Just a limber girl 🎵 heyhilauren.com