Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

2024 Participants: Hannah Ackermans * Sara Alsherif * Leonardo Aranda * Brian Arechiga * Jonathan Armoza * Stephanie E. August * Martin Bartelmus * Patsy Baudoin * Liat Berdugo * David Berry * Jason Boyd * Kevin Brock * Evan Buswell * Claire Carroll * John Cayley * Slavica Ceperkovic * Edmond Chang * Sarah Ciston * Lyr Colin * Daniel Cox * Christina Cuneo * Orla Delaney * Pierre Depaz * Ranjodh Singh Dhaliwal * Koundinya Dhulipalla * Samuel DiBella * Craig Dietrich * Quinn Dombrowski * Kevin Driscoll * Lai-Tze Fan * Max Feinstein * Meredith Finkelstein * Leonardo Flores * Cyril Focht * Gwen Foo * Federica Frabetti * Jordan Freitas * Erika FülöP * Sam Goree * Gulsen Guler * Anthony Hay * SHAWNÉ MICHAELAIN HOLLOWAY * Brendan Howell * Minh Hua * Amira Jarmakani * Dennis Jerz * Joey Jones * Ted Kafala * Titaÿna Kauffmann-Will * Darius Kazemi * andrea kim * Joey King * Ryan Leach * cynthia li * Judy Malloy * Zachary Mann * Marian Mazzone * Chris McGuinness * Yasemin Melek * Pablo Miranda Carranza * Jarah Moesch * Matt Nish-Lapidus * Yoehan Oh * Steven Oscherwitz * Stefano Penge * Marta Pérez-Campos * Jan-Christian Petersen * gripp prime * Rita Raley * Nicholas Raphael * Arpita Rathod * Amit Ray * Thorsten Ries * Abby Rinaldi * Mark Sample * Valérie Schafer * Carly Schnitzler * Arthur Schwarz * Lyle Skains * Rory Solomon * Winnie Soon * Harlin/Hayley Steele * Marylyn Tan * Daniel Temkin * Murielle Sandra Tiako Djomatchoua * Anna Tito * Introna Tommie * Fereshteh Toosi * Paige Treebridge * Lee Tusman * Joris J.van Zundert * Annette Vee * Dan Verständig * Yohanna Waliya * Shu Wan * Peggy WEIL * Jacque Wernimont * Katherine Yang * Zach Whalen * Elea Zhong * TengChao Zhou
CCSWG 2024 is coordinated by Lyr Colin (USC), Andrea Kim (USC), Elea Zhong (USC), Zachary Mann (USC), Jeremy Douglass (UCSB), and Mark C. Marino (USC) . Sponsored by the Humanities and Critical Code Studies Lab (USC), and the Digital Arts and Humanities Commons (UCSB).

Week 2: Of Textiles and Technology - Discussion Starter

Discussion leaders: Anastasia Salter and Anne Sullivan
Introduction: Of Textiles and Technology

Our lives are surrounded by textiles–from the clothes we wear, to the sheets and blankets on our beds, to the covers on our furniture in our homes, offices, and cars–however, they are rarely noticed or appreciated. Historically shunted to the sidelines as a “craft” or “women’s work,” the myriad of textile traditions - from sewing and quilting, to knitting, weaving, and crochet, to embroidery and lace making, and beyond - are only rarely welcome in galleries both present and past. Instead, these traditions are often associated with the domestic sphere and consequently devalued.

Despite this (and in some ways because of this), there is a powerful history in the computational potential of textiles that provides an interesting perspective to our code critique exercise. Throughout history, textiles have been used to give a voice to those who society silenced, and coded messages are a part of this history. While the myth of the Underground Railroad quilts is likely not true, there are plenty of other examples of coded messaging in textiles. For instance, in World War II, women knitters were not noticed, which provided them ample opportunities to encode messages in their knitting by representing Morse Code (you can read a brief synopsis of WWII usage of knitting here.) Textiles continue to be powerful tools for information communication and visualization, particularly in feminist frameworks (here’s a brief discussion of this is the context of pandemic data visualization, for instance.)

Beyond encoded messages, textile instructional patterns that are followed to create a crafted object are quite similar to programmatic code. Patterns are sequential instructions that have specialized syntax which also include variables, loops, conditionals, algorithms, etc. While the vocabulary may be different between textile crafters and programmers, the concepts are the same. There’s also some important fundamental similarities between how code and patterns are distributed, remixed, and reimagined, which we hope will particularly come through in the sample “code” we’ve chosen for this discussion thread.

Our thread this week offers the provocation of patterns as code: indeed, the code offered for critique is a pattern generated through code. We’re focusing particularly on the relationship of textile work to generative projects, as the underlying structures of both code and pattern are made more visible through this juxtaposition.

Generating Context: Our Work

For context, both of us work frequently with different types of “generative” textile projects that are not quite like the one we’ve selected for code critique, but do have some common threads :) Here’s some links to information on some of our work for context:

To foster discussion in these intersections, this past year, we launched Knit&Perl, a community at the intersection of technology and text/iles. In addition to discussing here, come join us as we develop lines of inquiry, creativity, and reflection. The community is on Discord, ping us for an invite (and, if you happen to be a Discord researcher, ask Anastasia about their graduate student’s awesome new Discord research group D/ARC!)

Along with this contextual post launching Week 2, we have a code critique thread launching on SkyKnit, and watch for a generative thread from Nick Montfort on exploratory programming in the humanities!

Comments

  • I've always loved Sadie Plant's language when she writes on the relationship between weaving and computers. In "The Future Looms: Weaving Women and Cybernetics" (1995), she writes that “the loom is the vanguard site of software development," and that "the computer was always a simulation of weaving; threads of ones and zeroes riding the carpets and simulating silk screens in the perpetual motions of cyberspace.” In _Zeros + Ones _(1997), she writes: “The yarn is neither metaphorical nor literal, but quite simply material, a gathering of threads which twist and turn through the history of computing, technology, the sciences and arts. In and out of the punched holes of automated looms, up and down through the ages of spinning and weaving, back and forth through the fabrication of fabrics, shuttles and looms, cotton and silk, canvas and paper, brushes and pens, typewriters, carriages, telephone wires, synthetic fibers, electrical filaments, silicon strands, fiber-optic cables, pixeled screens, telecom lines, the World Wide Web, the Net, and matrices to come.”

  • Zach, Sadie Plant's work is of course awesome, nice connection! Weaving is continually the example that comes up when code and textiles are discussed, and I confess I've always thought that's because it's easier for folks to draw the parallels when lots of visible machinery is involved :-D The weaving pattern-based structures do lend themselves to all sorts of cool work in this area, and there's actually a commercial company that will print your generated textiles if you want to try building one in Processing - https://www.wovns.com/tutorials/designing-computational-textiles-with-processing/ - I've always wanted to give it a try :)

  • Something that has always interested me about thinking through the intersections of domestic work and code is returning to points in history where these things have diverged. Scholars such as Jennifer Light have pointed out that programming was once considered 'domestic' work and feminine while scholars such as Mar Hicks have written that "hiring managers consciously redefined clerical work from a male- to a female-coded occupation in order to slot middle-class women in respectable jobs" (Programmed Inequality, 8).

    While we can likely all agree that "patterns are sequential instructions that have specialized syntax which also include variables, loops, conditionals, algorithms, etc. While the vocabulary may be different between textile crafters and programmers, the concepts are the same," I wonder if the stakes of this shared logic and syntax change depending on who is performing the labor. What would it mean to not only consider patterns to be a type of algorithm but to consider algorithms to be a type of pattern? One thing that immediately comes to mind is the sense of community and almost generational knowledge that often comes with textile work--patterns and techniques passed down from generation to generation, knowledge which gains value as it ages rather than in spite of it. Does this generational sense of community also exist in coding communities and if so, what does it look like?

  • "patterns are sequential instructions that have specialized syntax which also include variables, loops, conditionals, algorithms, etc. While the vocabulary may be different between textile crafters and programmers, the concepts are the same,"

    I'd disagree quite strongly with that. Patterns can be cyclic and functional/declarative, rather than sequential. I also think the concepts are very different between different crafts. A tablet weaver and a knitter might not have much to say to each other because they're dealing with very different structures.

    I also think projects using commercial companies to 'print' textiles are not really dealing with weaving at all. That's just a case of treating a weave as a two dimensional visual structure, rather than dealing with the three dimensional structure of the weave itself. It only works by constraining weaving to the point that it isn't interesting as a structure any more. You may as well print on paper.

    I think this problem goes back to the first software engineer, Ada Lovelace. She looked at the automated looms and felt that they could be improved by Babbage's technology, which could go forward as well as backward through cards. If she had instead looked at how handweavers work, she'd have realised that computing could greatly benefit from weaving, rather than vice-versa. Software engineers have been making the same mistake ever since, in thinking they have something new, and not respecting these ancient crafts as the highly developed computational technologies that they are.

  • @yaxu: fair enough, these analogies reduce the original! (So I shouldn't compare to 3D printing, either???) I think there is some use to imagining alternate histories of computing, to deconstruct the also imagined histories of computing we currently take for granted. But I don't want to pave over what makes these histories unique, too.

    @blankenshipa: A pattern might be applied directly, like in 2D printing, but a pattern I think can always be translated into instructions, too, right? ...if turned sequential (draw this line, then that line, etc.; the pattern broken into row 1, row 2, etc.; or like 3D printing,: base layer, layer 1, layer 2, etc.). If only the pattern is passed on, do we lose something in the unique ways people might have broken it into a sequence in the past?

    Would you consider beginner programming exercises, like "Hello World!" or producing the Fibonacci sequence, to be "patterns" handed down by generations of programmers?

  • @anasalter: definitely looking into WOVNS! Thanks!

  • @blankenshipa I have experienced a wonderful generational sense of community in my programming experience... my dad was also a database analyst. :) We talked about SQL regularly and he shared helpful scripts. Plus, I worked with the nicest group of analysts who were all one or two generations older than me and they taught me everything I know!

  • This is a really interesting area for me as someone who is both a programmer and someone who weaves, crochets, sews, embroiders, knits and has probably tried my hand at most textile arts (except traditional lacemaking not sure I have the patience for that :D ). I find the links between textiles and code fascinating. For me the easiest link is often weaving because it is really a binary system, shaft up or shaft down. I work on an eight shaft hand treadling loom (images below), so I will often turn weaving patterns onto something that looks like coding to turn the visual pattern into the binary raised and lowered shafts. I number the shafts and work out the pattern based on which one is down for each row, so my patterns tend to look something like:

    3,7,8
    2,6,7,8
    1,5,6,7
    4,5,6,8
    3,4,5,7,8
    2,3,4,6,7,8
    1,2,3,5,6,7
    1,2,4,5,6
    1,3,4,5
    2,3,4,8
    1,2,3,7
    1,2,6
    1,5
    4,8
    [REPEAT]

    (this is a number transformation of the of this zig zag pattern found on this page of Weaving Space)

    Image of my weaving workplace set up with the 8-shaft loom on a stand with a chair inform of it, next to the loom is a tall chair with a note book on it with my pattern notes and diagrams.

    A close up of a couple of different weaves a vertical zig zag in black, a section of plain weave in off white and a more complex knot pattern in pink.

    You could easily imagine this numbered code converted into code or punch cards for a jacquard loom. A lot of textiles have quite a binary look for example cross stitch is either full stitch (+colour), half stitch (+direction & colour), or no stitch, or in basic knitting is the stitch a knit or purl. However, I personally prefer to do things like free hand embroidery or crochet because in those situations I start with an overall shape or rough design and then I pick the stitch and stitch pattern that will fill in the shape and move me towards the end results. In these cases, I set up the foundational elements like the design or final goal and work within that space with the tools that I have, to create the final work. As someone who is very architecture focused, I feel like that I work the same way when I program. I tend to set up a strong foundational framework, using code generation and data binding, I then use the tools provided in this framework to build to the shape and functionality that I want to create. I find the similarity of these two approaches really interesting if you are creating functional textiles (e.g. to be worn or used) there are specific rules that tend to apply in how the piece goes together these rules and the tools that we have as textile artists (like stitch types, yarn weights, fabric types, notions etc) to create the final shape. For me the process of creating a functional item of textiles is very similar to the approach I take to creating an executable piece of software, it becomes about creating the stable foundation that you can build off using the skills that you have and the tools available to you.

  • I've been thinking about the parallels between coding and textile-craft for a little while, not least through using the Textile Makerspace I run as a "Trojan horse" for getting grad students interested in exploring digital humanities. (There's some pics and a sidebar here in a university news article.) Both sewing and DH involve a lot of trying and failing (and undoing and trying again), and it seems to be less threatening to get your hands dirty with failure in the context of fabric and thread. We also used to hold Danger Noodle Club (basically a Python co-learning/co-working group) right after the Makerspace was open, so it made it easy for people to stay and transition from one activity to the other.

    But the prompt for this week got me thinking about the code/textile intersection in a different way. I'm not much of a knitter/crocheter/weaver, at least not yet; most of what I do is sew clothes for myself and others. (These days, it's mostly knits on a serger + coverstitch.) 10+ years of sewing have taken me from having an utterly abysmal spatial imagination to merely being bad at it. I was the class dunce in a pattern-making class I attempted once; I still can't design a pattern to save my life, and my modding attempts (e.g. SBA) are hackish at best. But thanks to the expansive world of indie patterns, and the (admittedly expensive 😬😳) world of custom fabrics, I still manage to make myself things I love, that are different from anything else on the planet, even though other people combine the same patterns and at least some of same fabrics in different ways. (Check out #DHsewing on Twitter for some of the results.) It's similar with code: I'm a competent intermediate Python user, but I'm definitely not inventing any new algorithms. Still, I manage to combine existing libraries and snippets of working code I dig up on StackOverflow or elsewhere, stitching them together in unique different ways, like looking at self-censorship in multilingual fanfic metadata. Those libraries and snippets are like patterns -- that might need some grading, or some slight tweaking -- and also the fabric -- which I didn't weave, but maybe I had something meaningful printed on it, and altogether it can make something new.

  • @quinnanya to extend the metaphor a bit, I see that the indie pattern scene (I love Patterns for Pirates and Rad Patterns) and custom print fabric (I am a big fan of Twisted Needle Textiles) scenes have expanded the audience for sewing with more inclusive sizing, designs made for ease of use for people with disabilities and more gender inclusive options. I think the expansion of programming languages and communities is also starting to do this, particularly in creative areas, for example in the narrative space tools like Ink, Twine and RenPy. I have found that when people see people like them creating interesting things and talking about code, about the frustrations and challenges, not just the successes, that this opens the space for people to feel more comfortable to try their hands at code.

    I think the missing link sometimes is that we need more diverse people teaching code. There is a hostility in the programming world to learning code (you can see in the hostile and derogatory responses to introductory questions on stack overflow) having someone who went through a different path into programming is really important as they understand these barriers and can help equip people with the skills to face them. To bring it back to the sewing analogy, it is like looking up how to do specific sewing things on YouTube, you will watch some and just get confused and others will explain it and you will get it. Some people will only want to work with the materials to do a specific thing that they want/need and they can because the resources are there to support them to do it, e.g. to knit a sock they don't need to know how to raise the sheep and spin the wool.

  • @yaxu "I'd disagree quite strongly with that. Patterns can be cyclic and functional/declarative, rather than sequential. I also think the concepts are very different between different crafts. A tablet weaver and a knitter might not have much to say to each other because they're dealing with very different structures."

    Admittedly our original comment was reductive, but I see you pointing out yet more similarities between patterns and code, not differences. :) A tablet weaver and a knitter deal with different structures, but so do declarative and imperative programmers. And in my experience, a weaver and knitter have plenty of things to talk about such as materials and design.

  • @quinnanya @annatito I love the metaphors and examples you are bringing up! As a quilter and coder I find myself often sewing patches of fabric/code that someone else made together to make something new.

    I agree 100% regarding making coding more accessible and being taught by a greater number of voices. As part of the Code Crafters project (which I mentioned in the other thread), we interviewed quilters about their experiences with programming, and the toxicity/unwelcoming nature/gatekeeping was brought up as the number one reason that they didn't go back. Growing up as a programmer, the first time I went to a quilt guild was a life changing experience of a welcoming, supportive, and helpful community.

    I think it also points to an issue with the "increasing diversity" in STEM - everyone focuses on the pipeline (how do we get more diversity in people entering STEM majors/fields) with no focus on how to retain them.

  • slightly off topic but relevant comment:

    I am not very familiar with Ada Lovelace's contribution to the analytical engine, but I've been a little bit bothered by Lovelace being represented, or understood as the first female programmer. I don't have specific reference at hand but that's the gist I was getting - that the fact that she being a female mathematician who contributed to the analytical engine is used in narratives formulated today accounting the intersection of gender and the history of computing.

    As I did grant writing and research for a project involving the history of computation, gender and weaving, I've also used the example of Lovelace to illustrate the intersection of the three fields. After finishing up the project, I felt detached from Lovelace as a representing female programmers. There is not much space to queer about when I think of her. I am at no place to assume the privilege that she had, both intellectually and socially.

    Suggestions: I am not saying that Lovelace should be "cancelled" due to her privilege. Suggestions? How can a more diverse profile of female programmers be represented? I felt that the over-use of Lovelace as an icon may "backfire" - neglecting the population that cannot be represented by Lovelace and cause misrepresentation..

  • edited January 2022

    @annetropy Yes on reflection I took that statement out of context and was ranting, sorry.

    @onebigear I wouldn't call Lovelace the first programmer for two reasons - firstly as Maggie Boden says, it's a bit silly to claim that Babbage wasn't also a programmer, and secondly, humans have been calculating around craft for a very long time, including machines, and I think we should call this 'programming' too. However I didn't call her the first programmer, I called her the first software engineer. If you read her notes, clearly she had some startling insights that should be recognised and celebrated. But what interests me is how the problems of software engineering culture are also evident in her writing. That's what really confirms her as the first software engineer I think.

    As I said earlier, she looked at the Jacquard mechanism on machine looms, and said that they could be improved by going backwards as well as forwards. I think if she had experienced handlooms instead, she'd have seen much more going on than switching between backwards and forwards. Perhaps then rather thinking that brand new technology could help the very well-developed ancient technology of weaving, she'd have instead realised that brand new technology has much more to learn from the ancient one. Then computation might have ended up looking very different. Just a thought!

    What's significant is that Babbage's and Jacquard's machines stand for automation, and therefore the break between craft and computation.

    Frustratingly, these machines are treated as the beginning of the link between computation and craft, but they actually stand for the breaking of this link. This break was so successful that people now seem unable to see beyond it. It makes discussion very difficult.

  • @quinnanya I think you are really onto something with the concept of failure. During my first week at my first IT job, my supervisor told me bluntly that I was going to fail and it was going to happen a lot; in fact, he encouraged failure and only expected that I learn from it and keep moving forward. It's very insightful of you to understand that the patrons in your makerspace are not only learning computational thinking via crafts and art, but are learning to fail, which is, in my opinion, the more important lesson. And, like @annetropy mentions regarding the welcoming quilt guild, we need compassionate learning spaces for code, too. In my opinion and because of my personal experience, learning to code has been transformative not because of what I am able to "do" with code, but because of the soft skills I learned, including accepting and overcoming failure and frustration.

  • @annetropy Code Crafters is so fun! I love the community block and quilt galleries. Very nice touch; it reminds me of the "show and tell" portion of most quilt guild meetings! Has your study compared people who practice different styles or techniques of quilting (like traditional, modern, improvisational, etc.) and their experiences (past or present) with coding? In my experience, each quilting style requires a different mindset, spirit, and skills which I imagine would translate to coding in different ways.

  • @quinnanya I really love your way of wording " Still, I manage to combine existing libraries and snippets of working code I dig up on StackOverflow or elsewhere, stitching them together in unique different ways," because I had never really thought of my own practice in Python in that way. What is so strange to me is that as someone who uses Python quite a bit but can't free-write programs very well, I feel this sense of shame almost when I go digging on Stackoverflow for snippets. There is this feeling that I have that I should know how to write that code on my own. Weirdly enough, I don't feel this way with sewing or knitting--I have no problems recycling/upcycling clothes that I thrift and I have no problems using patterns I find on etsy or instagram. I think that your comment that "Those libraries and snippets are like patterns -- that might need some grading, or some slight tweaking -- and also the fabric -- which I didn't weave, but maybe I had something meaningful printed on it, and altogether it can make something new," is a very productive way to view sewing code snippets together that I hadn't considered before.

  • @yaxu You have missed my point there. The problem that I identified was not on the role of Lovelace's contribution either qualified as programming or software engineering (which i knew nothing about), but a matter of representation. I am saying that, the portrayal of Lovelace as an intellectually accomplished female figure to encourage "girls can do science" cast a shadow a wider population of women in science. And personally I find Lovelace as a figure very detached from my experience: I am not white, I had been denied STEM education because I was a girl, whereas Lovelace had good math tutelage in her household.

  • Wow, I am loving the spirit of this conversation, which has a lot of the welcoming, communal ethos of our Knit&Perl group.

    I was also struck by @annatito's quote:

    I think the missing link sometimes is that we need more diverse people teaching code. There is a hostility in the programming world to learning code (you can see in the hostile and derogatory responses to introductory questions on stack overflow) having someone who went through a different path into programming

    About a decade ago, I was on a panel with Kim Knight, who was talking about her textiles and technology class, I believe, another one of the inspirations for Knit&Perl. My talk was an exploration of the website Ravalry and its community of mutual support in contrast to a lot of the other toxicity on the Internet. I don't want to create a false binary or essentialize gender or us a monlithic cartoon of any online community, nor ignore the supportive spaces to learn programming, whether its StackExchange or the p5.js community we'll be discussing next week, but...

    I did find an attitude among those gathered in those forums much more focused on mutual aid, communal support, sharing, and assistance rather than toxicity, shaming, and what I call encoded chauvinism. It's not that I can't imagine nasty knitters or a petty patchwork of quilters, but I do wonder if some of the toxicity does not come out of the way the communities have been framed and either valued or devalued, or the way they emerge in defiance or in the circulation of that devaluation.

    Again, realizing that this is version is a bit reductive, the big gender divide in CS majors and grad students happens in the early 80s when programming becomes profitable and men flood into the field -- all this being decades after the period when women were coding as a clerical-level activity.

    I don't think professions have to become toxic the moment they become profitable or that an incursion of men into a profession will inevitably lead to its toxicity, or that economically devalued domestic enterprises will necessarily be noble, but I do think there is something to the proposition of framing coding as a type of fibre arts (to play on @blankenshipa's provocation) or to ask what programming classes and culture could learn from the culture and practices of the fibre arts and the communities that share and develop and pursue them, that is quite appealing to me.

  • @onebigear Yes I think we're talking past each other a bit (I'd assumed you were responding directly to my point) but can see that Lovelace isn't a good role model. It's maybe interesting that the reason she was steered towards mathematics was to steer her away from the behaviour of her mess of a father.

    But yes maybe it's better to get away from problematic historical 'geniuses' like Lovelace (or Steve Jobs or whoever), and look for role models on the interdisciplinary boundaries which I think are generally less dominated by the pale/male/stale, like the computational craft/e-texiles, but also bioinformatics, live coding, computer music (the early pioneers at least), information studies, critical ai, etc..

  • @onebigear I think a big part of the issue is that we need to raise a much wider range of voices in this space that come from a range of backgrounds and pathways. When I first started programming (20yrs or so ago) there were so few non-masc identifying visible leaders in the field that Lovelace was the only visible role model I had, and even she was dismissed by a lot of people in the area at the time. There was so much social pressure about non-masc identifying people not being able to or welcome in programming that I didn't go back to study code at University until 6 or 7 years later even though I had ranked top in computer science in my final year at highschool.

    It is one of the reasons I try to public speak and mentor when I can. It is so important that people see people of a range of abilities, gender identities, sexualities, cultural backgrounds and privileges talking about code and technology.

    I think for me the thing that I still like about Lovelace was her desire to see more in the analytical engine than mathematical processing.

    “The Analytical Engine might act upon other things besides number… Supposing, for instance, that the fundamental relations of pitched sounds in the science of harmony and of musical composition were susceptible of such expression and adaptations, the engine might compose elaborate and scientific pieces of music of any degree of complexity or extent.”
    ~ Ada Lovelace As quoted by Menabrea, Luigi (1842). Sketch of the Analytical Engine invented by Charles Babbage Esq.. Scientific Memoirs (Richard Taylor): 694.

    This for me touches on the idea that it takes people from different backgrounds with different perspectives to see different possibilities in technology. So when I am sitting in that room where everyone looks the same except me, I use this to remind myself that this field requires people who are different to help push it forward :smile:

  • As far as I know, Lovelace's connection to weaving sort of ends after she recognizes that the Analytical Engine exceeds the jacquard loom's capability in programming. Her craft, aside from poetry and invention, was that she was an accomplished harpist (hence the passage @annatito points to). I would suggest that passage, on music, is probably a better connecting point to textile art than her knowledge of the jacquard loom... and a credit to her fresh perspective.

    I would alternately point to someone like Mary Somerville, the mathematician, as an example of someone who discussed (in written correspondence) her hobbies in textile art (probably needlepoint?) even as she was changing the field of astronomy. But that's a complicated topic, too, because Somerville used the hobby rhetorically as a way to say: see, I'm still a woman, I'm still feminine, even as I outpace the men in my field. This of course says a lot about the specific gendered expectations of her class...

    But some of that persists today... knitting as hobby, as amateurism, as separate from "serious works" (unlike music composition). It's a thing coded feminine and associated with de-stressing, with anti-work. Programming is often thought of as the opposite. As high pressure and high earning (and thus unfortunately coded masculine), because we recognize it culturally as a $-valued practice. But a theme in this thread: it, too, can be just as much as a hobby, practiced by amateurs, even to de-stress, to think creatively or even meditatively. Knitting seems a useful way to detoxify programming in this way.

  • Yes it's a very nice passage @annatito and that a nice point about the musical insights being a stronger connection to textile art @Zach_Mann.

    I think there is a general problem with focussing on 'firsts' which focusses on naming particular authors. Who was the first weaver? Penelope comes to mind but she didn't actually exist and that again focusses on Europe. With crafts, techniques are passed from person to person, changed in the process and there is no talk of particular 'authors'. so there is no 'first' creator to talk about, the techniques are collectively owned. This seems a good thing to me but means that we can't talk about craft in the same way as areas apparently founded by geniuses unless we keep a limited frame e.g. around the Bauhaus.

    That said we do have Al-Jazari's book which demonstrate someone not only making machines that not only played music (translated as "a clamorous sound which is heard from afar"), but also danced and poured drinks for (human) guests. He did this in the 12th century while Europe was deep in the middle ages, I think somewhere around where we now call Syria. I don't know if these machines computed pattern variations like Lovelace described, but it's an example that challenges a Euro-centric view on machine music (and also the journalistic idea of algorave algorithmic dance events being the 'future' of music, rather than the past).

  • Sorry to double post but I just wanted to share Amy Twigger-Holroyd's reknitting project:
    https://reknitrevolution.org/reknit/

    There's something about Amy using mathematics to interface between hand and machine knitting gauges to repurpose and 'hack' factory-made garments that relates to this discussion I think.

  • @yaxu

    But yes maybe it's better to get away from problematic historical 'geniuses' like Lovelace (or Steve Jobs or whoever), and look for role models on the interdisciplinary boundaries which I think are generally less dominated by the pale/male/stale, like the computational craft/e-texiles, but also bioinformatics, live coding, computer music (the early pioneers at least), information studies, critical ai, etc..

    yeah i think that the representation needs to be decentralized! as the thread is ongoing we are already seeing so many good divergences from the m/p/s..

  • @annatito

    There was so much social pressure about non-masc identifying people not being able to or welcome in programming that I didn't go back to study code at University until 6 or 7 years later even though I had ranked top in computer science in my final year at highschool.

    well this sounded all too familiar doesn't it. the use of pronouns as a protocol in classroom is relevant to this problem. the instructor (male) would be responding to a male student's questions by saying, "yes, sir, go ahead and ask". And female students would be kind of a "meh". The extent of gender toxicity in undergrad cs / engineering is thorough and thorough, even in a university known for its engineering and is promoting diverse engineering culture.

    I had great female TAs doing their PhD studies though. I wondered why - they were all so sensitive, knows there stuff well. I don't know if that's just chance. There are a couple of male TAs who also were equally good. The presence of these good TAs just being there made a difference for me to understand the power of representation...

  • @Zach_Mann I feel really compelled by your argument: "knitting as hobby, as amateurism, as separate from "serious works" (unlike music composition). It's a thing coded feminine and associated with de-stressing, with anti-work. Programming is often thought of as the opposite. As high pressure and high earning (and thus unfortunately coded masculine), because we recognize it culturally as a $-valued practice. But a theme in this thread: it, too, can be just as much as a hobby, practiced by amateurs, even to de-stress, to think creatively or even meditatively. Knitting seems a useful way to detoxify programming in this way."

    I would also like to amplify @markcmarino 's point about fibre arts often having a spirit of mutual aid, communal support, and sharing. I wonder if there are analogous anti-work or defiant communities in the coding world? One thing that comes to mind is the FOSS movement, but I often wonder if the distance from individual ownership permitted by FOSS (the way programmers' names/credit can be removed so easily) in some ways mirrors the desire of corporations to distance programmer's from ownership over their work. I think in some ways, the circulation of patterns has similar issues--can that spirit of communal support co-exist with individual ownership as a way of claiming one's work and effort?

  • Something I think that's interesting about thinking about textiles and code is looking at where they diverge. I enjoy coding and dislike sewing (and hardware, too) because in the case of the latter group, mistakes are so expensive! You have to actually undo real things, you can't go back and forth and compare easily, etc. I wonder what sorts of meanings lie the distinctions, as well as in the commonalities.

    I also find the distinction @annatito draws between number, counting, stitch-focused work and more freehand embroidery or crocheting. When we talk about computing, we are usually talking about it as a way to represent something mathematically. And when we bring in weaving, as was mentioned above, it is easy to draw the parallel along the line where both are a way of using binary, both are mathematical. But what is really interesting to me is where we can get computing away from being mathematical and more supportive of the free.

  • edited February 2022

    I wonder what could be said beyond production of software, both textile and code. Beyond histories of traditional textile knowledges, how programming resembles textile practices, Ada Lovelace etc. where the site of making and production is the focus.

    An observation: while I do have a little bit of "artisanal" software – both textiles and code in my life – very little of the textiles or code in my life are of my own production, or of someone I know. I suspect this to be the case for you too. Instead the textiles in our lives come from textile-factories far away, and similarly the code in out lives come from code-factories far away. Beyond production maybe looking at consumption, use, repair, make do and mend, afterlife and discard, commodification, cultural meanings might be interesting... both software layers somehow interface the domain of the subject and the domain of hardware 🤔💭

    It's the end of the week on the topic of textiles and code, but if someone has some inspiring projects, readings, activities etc which make a connection of life alongside, in media res, of textiles as code, I'd be very interested.

  • @blankenshipa, you muse aloud:

    I wonder if there are analogous anti-work or defiant communities in the coding world?

    Our Week 3 discussion may be just the community you are looking for! I get the sense that the Processing communities are similarly built out of mutual aid and support by focusing on access.

    Another community where I've found that is in the Interactive Fiction community. While they can be rather tough judges of new works in competitions (at least mine!), the communities of Inform, Ink, and especially Twine, are built around a sense of mutual aid. I'm not sure what categories as "anti-work," but these communities are making and inventing often in non-commercial or craft settings that are not built on the same stakes and business models as one may (and will) find in say, AAA, which is the harsh, ofen soul-sucking tundra that is the backdrop for their efforts to create (space for) alternative independent games and game making communities.

  • @sarahghp Yes these are really great points! It's too easy to focus on the ways in which coding is like sewing, knitting and weaving, but in a way that's disrespectful to all these practices unless we also explore how they're different.. What their fundamental physical properties are, and what makes them unique. Like you say, once we do that, we can see how coding could be different from the way it is (or at least, the way we see it).

Sign In or Register to comment.