CYPHERED THREADS
CHARITE CARBALLO SCI ARC
THESIS 2023
ADVISOR: MATTHEW AU
Cyphered Threads: On Weaving and Computation
Edited by Charite Carballo
This book results from the Cyphered Threads thesis project carried out between January 2023 and September 2023 at the Southern California Institute of Architecture and is published in conjunction with the exhibition titled Cyphered Threads, on view at the Southern California Institute of Architecture from September 8 through Septmeber 13, 2023.
This publication was kindly supported by Xiomara Delgado and Juan Carballo
2023 Charite Carballo and contributers
Published by Publishing under an exclusive license to publish. Some rights reserved. No part of this publication may be reproduced, stored in a retrival system, or transmitted.
2
2
table_of_contents = {
“words”: [“pg. 4”, “pg. 5”],
“fundamental language”: [“pg. 6”, “pg. 7”]
“declarations”: [“pg. 8”, “pg. 9”, “pg. 10”, “pg. 11”, “pg. 12”, “pg. 13”, “pg. 14”, “pg. 15”, “pg. 16”, “pg. 17”, “pg. 18”, “pg. 19”],
“statements”: [“pg. 20”, “pg. 21”, “pg. 22”, “pg. 23”, “pg. 24”, “pg. 25”, “pg. 26”, “pg. 27”],
“expressions”: [“pg. 28”, “pg. 29”, “pg. 30”, “pg. 31”, “pg. 32”, “pg. 33”],
“composites”: [“pg. 34”, “pg. 35”, “pg. 36”, “pg. 37”, “pg. 38”, “pg. 39, “pg. 40”, “pg. 41”]
“programming language”: [“pg. 42”, “pg. 43”, “pg. 44”, “pg. 45”, “pg. 46”, “pg. 47”]
“programming language”: [“pg. 42”, “pg. 43”, “pg. 44”, “pg. 45”, “pg. 46”, “pg. 47”] }
# Print table of contents print(“Table of Contents:\n”) for category, items in table_of_contents.items(): print(category.capitalize() + “:”) for item in items: print(“- “ + item) print()
3
Thesis Statement
A cipher is a system of encrypting and decrypting data. It is also an act of gathering and practicing craft.
Cyphered threads aims to relink craft and computation as a means to store the unreported data of invisible labor in technology. It seeks to distribute these accounts through the use of woven patterns and community ritual. The project intends to address the role of craft as an elevated art, architecture, and technology, while speaking to the notion of the unseen in regards to information and labor. Through the collection of inconspicuous cyphered surfaces and the creation of encoded environments, narratives will be encrypted to serve as a living record for a weaving collective.
Our transition from weaving to coding signifies that a pattern acts as a means to store information. Through this tracking of warp and weft patterns were translated to punch cards that gave way to the modern computer. History omits the mention of Ada Lovelace, a woman, who largely participated in the creation of this machine. Textile technology is often referred to as “women’s work”, specifically in the case of the Bauhaus. In truth it is the fundamental blueprint for today’s technology. This thesis intends to disrupt the bias of textiles as decoration and to instead understand it as a tool to code, remember, and communicate.
The project will adopt the methods of codification from subverted textile tech-
nologies, specifically their ability to keep records for the community and store narratives. Patterns inherently hold associations through their attributed symbolism, and intonation. We can consider the basket weave to mean balance and duality or the Quipu knots to represent a certain numerical digit. To the untrained eye the textile is perceived as an inconspicuous object. Those in the know are able to decipher the code hiding in plain sight. Thread and colors conceal and filter these ciphers to create a smart textile.
The syntax is integral towards the dissemination of the visual language along with a series of grasshopper scripts that are used to create the pattern, loom, and instruction. This new material system intends to cultivate the need to congregate through the use of a new loom that receives and deploys the data. The gesture of the hand as a weaver and encrypter further informs the textiles meaning. This slow take of encryption and production is more valuable because it is sustainable, confidential, and identifiable. Material is understood as information and accounts for its labor, time, and meaning.
5
syntax = [ “Abundance”, “above”, “across”, “adeptness”, “addition”, “ahead”, “aiding”, “all over”, “along”, “announce“, “ascension”, “assisting”, “authority”, “Beyond”, “black and white”, “bloom”, “beside”, “black-and-white”, “buoyancy”, “Cadence”, “clumsy”, “company”, “conquest“, “containing”, “control”, “covering”, “crossways”, “cultivate” ,“Dance”, “delicate”, “detecting”, “detection”, “detect”, “descension”, “directing”, “direct”, “discover”, “disperse“, “division“, “drifting”, “drift”, “during”, “Elegance”, “elevating”, “entanglement“, “exceeding”, “expand”, “expansion”, “Float”, “four”, “Glide”, “good and evil”, “greater than”, “growing”, “Heighten”, “here and there”, “hop”, “Influencing”, “influence”, “interval”, “Lustrous”, “luxurious”, “location”, “leap”, “lev-
6
el”, “locality”, “Meander”, “money“, “movement”, “Navigate”, “nine“, “nuanced”, “One”, “optimization”, “opulence”, “Performance”, “pending”, “promoting”, “progression”, “Ranking”, “receiving”, “regarding”, “refinement”, “reproduce”, “reputation”, “resourceful”, “rest”, “radiant”, “remote”, “Seven”, “six”, “site”, “stability”, “starting”, “station”, “stretching”, “subtlety”, “scared and profane”, “search”, “spanning”, “sporadic“, “status”, “streak“, “stream”, “stop”, “storing”, “structural”, “sophistication”, “swim”, “superior”, “Three”, “to break”, “to find”, “to search”, “to store”, “two”, “Under”, “unstable”, “Vault”, “Wealth”, “white”, “Ying-yang”, “Zero”
] print(words)
7
FUNDAMENTAL LANGUAGE
Our Transition from weaving to coding signifies that a pattern acts as a means to store data. Through this tracking of warp and weft rectilinear figures are produced. This
8
binary system is rich in significance and intonation. The syntax intends to collect these base patterns and define their qualities.
9
# Weaving pattern declaration pattern = [ [1, 0, 1, 0], [0, 1, 0, 1], [1, 0, 1, 0], [0, 1, 0, 1]
DECLARATIONS
In coding, a declaration refers to the act of introducing a variable, constant, function, or other programming entity with a specified name and data type. Weaving patterns have the ability to contain established data and associations. Throughout history these attributed signifier can denote the status, culture, and wealth of an individual. The weaving pattern provides the structure and characteristics of the design to create a textile based off of defined data.
10
]
001
THE PLAIN WEAVE
002 DRAFT NOTATION DRAFT NOTATION
balance, duality, good and evil
[1, 0],
[0, 1],
contain, seat, control, to store
[1, 1, 0, 0],
[1, 1, 0, 0],
[0, 0, 1, 1],
[0, 0, 1, 1],
THE BASKET WEAVE 11 DIAGRAM DIAGRAM
003
004
THE RIB WEAVE (warp)
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
swim, float, glide, drift
[1, 1, 0, 0], [0, 0, 1, 1],
grow, heighten, stretch
THE RIB WEAVE (weft) 12
[1, 0], [0, 1], [0, 1],
005
006
THE RIB WEAVE (warp irregular)
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
to break, interval, gap, rest, stop
[1, 1, 1, 0],
[0, 0, 0, 1],
hop, skip, vault, start, dance
THE RIB WEAVE (weft irregular) 13
[1, 0], [0, 1], [0, 1], [0, 1], [0, 1], [1, 0],
007
THE MATT WEAVE (regular)
stability, structural, expand
[1, 1, 1, 0, 0, 0],
[1, 1, 1, 0, 0, 0],
[1, 1, 1, 0, 0, 0],
[0, 0, 0, 1, 1, 1],
[0, 0, 0, 1, 1, 1],
[0, 0, 0, 1, 1, 1],
008
DRAFT NOTATION
subtlety
[1, 1, 1, 1, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0],
[1, 1, 1, 1, 0, 0, 0],
[0, 0, 0, 0, 1, 1, 1],
[0, 0, 0, 0, 1, 1, 1],
[0, 0, 0, 0, 1, 1, 1],
[0, 0, 0, 0, 1, 1, 1],
THE MATT RIB WEAVE (irregular) 14
DIAGRAM DIAGRAM DRAFT NOTATION
009
010
THE SATIN WEAVE (warp)
flexibility, to search
[0, 1, 1, 1, 1],
[1, 1, 1, 0, 1],
[1, 0, 1, 1, 1],
[1, 1, 1, 1, 0],
[1, 1, 0, 1, 1],
to find, discover, detect
[1, 0, 0, 0, 0],
[0, 0, 0, 1, 0],
[0, 1, 0, 0, 0],
[0, 0, 0, 0, 1],
[0, 0, 1, 0, 0],
DIAGRAM
DIAGRAM
DRAFT NOTATION DRAFT NOTATION
THE SATIN WEAVE (weft) 15
011
012
THE LEFT HAND TWILL WEAVE
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
ascension, movement, unstable
[0, 1, 1],
[1, 1, 0], [1, 0, 1],
descension, movement
[0, 1, 1],
THE RIGHT HAND TWILL WEAVE 16
[1, 0, 1], [1, 1, 0],
013
THE RIGHT HAND TWILL WEAVE (warp)
014
THE LEFT HAND TWILL WEAVE (warp)
superiority, dominance,
[1, 0, 0],
[0, 0, 1],
[0, 1, 0],
delicate, nuanced, understated
[1, 0, 0],
[0, 1, 0],
[0, 0, 1],
17
DRAFT NOTATION DRAFT NOTATION
DIAGRAM DIAGRAM
015
THE RIGHT HAND SATEEN WEAVE
THE LEFT HAND SATEEN WEAVE
opulence, luxury, abundance
[0, 1, 1, 1],
[1, 1, 1, 0],
[1, 1, 0, 1],
[1, 0, 1, 1],
lustrous, radiant
[1, 0, 1, 1],
[1, 1, 0, 1],
[1, 1, 1, 0],
[0, 1, 1, 1],
016
DRAFT NOTATION DRAFT NOTATION 18 DIAGRAM DIAGRAM
THE RIGHT HAND SATEEN WEAVE (warp)
THE LEFT HAND SATEEN WEAVE (warp)
dexterity, adeptness, agility
[1, 0, 0, 0],
[0, 0, 0, 1],
[0, 0, 1, 0],
[0, 1, 0, 0],
clumsy [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1], [1, 0, 0, 0],
19
017
018
DIAGRAM
NOTATION
NOTATION
DIAGRAM
DRAFT
DRAFT
019
020
ROYAL OXFORD WEAVE
DRAFT NOTATION DRAFT NOTATION
money, wealth, status
[1, 1, 1, 1, 1, 0, 0, 1],
[1, 1, 1, 0, 1, 1, 0, 1],
[1, 0, 0, 0, 0, 0, 0, 1],
[1, 1, 0, 0, 0, 0, 0, 0],
[0, 1, 1, 0, 0, 0, 0, 0],
[0, 0, 1, 0, 0, 0, 0, 1],
[0, 0, 0, 1, 1, 0, 0, 0],
[0, 0, 0, 0, 0, 1, 1, 0],
refinement, elegance
[1, 0, 0, 1, 1, 0],
[0, 0, 0, 1, 1, 1],
[0, 0, 1, 0, 1, 1],
[1, 1, 0, 1, 0, 0],
[1, 1, 1, 0, 0, 0],
[0, 1, 1, 0, 0, 1],
THE HOUNDSTOOTH WEAVE 20
DIAGRAM DIAGRAM
021
022
THE HERRINGBONE WEAVE
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
direct , location, site, locality
[0, 1, 1, 0, 1, 1],
[0, 0, 1, 1, 1, 0],
[1, 0, 0, 1, 0, 0],
[1, 1, 0, 0, 0, 1],
status, elegance, ranking, level
[0, 0, 1, 1],
[1, 0, 0, 1],
[1, 1, 0, 0],
THE POINT TWILL WEAVE 21
[0, 1, 1, 0],
# Statement weaving pattern representation pattern = [ “print(‘Hello, world!’)”, “x = 5”, “result = a + b”, “if condition:”, “ do_something()”
STATEMENTS
In coding, a statement typically refers to a line of code that performs a specific action or operation. In weaving interlacing is used to manipulate the rhythm of the thread. This can cause a separation of the pattern or material.
22
]
along, ahead, beside, in company
002
TWISTED LOOPING
during, pending, spanning
23
LOOPING KNOTLESS NET 001
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
above, greater than, exceeding, beyond under, receiving, in the process of
SOUMAK 003 TURKISH RUG KNOT 004
DRAFT NOTATION DRAFT NOTATION DIAGRAM DIAGRAM 24
toward, regarding, about, promoting, assisting
25
PERSIAN RUG KNOT 005
DRAFT NOTATION DIAGRAM
WEAVE 006 ascend DIAGRAM DRAFT NOTATION
GUAZE OR LENO
across, covering, crossway
beyond, past
1 007 26
TWINNING
TWINNING 2 008
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
27 beside
INLAID
between DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
BRICK INTERLOCKING 009
TECHNIQUE 010
INTERLOCKING WEFTS CONNECTING TWO THREADS 011 28 through INTERLOCKING WEFTS 012 opposite DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
SECTIONAL WEFTS TURNED AROUND THE SAME WARP THREADS
around, everywhere, throughout, all over, here and there
EDIT 29
DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
WIP 013 013
# Quipu-inspired expression
red = 3
blue = 7
green = 5
total = red + blue - green
EXPRESSIONS
In coding, an expression is a combination of variables, values, operators, and/or function calls that can be evaluated to produce a result. Quipu’s is an early South American accounting device. They are a knot based numeric system that holds data/records regarding taxes, census, calendar and military info.
30
QUIPU 0 001 QUIPU 1 002 31 zero one DRAFT NOTATION DRAFT NOTATION DIAGRAM DIAGRAM
two QUIPU 2 003 32 QUIPU 3 004 three DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
33 QUIPU 4 005 four QUIPU 5 006 five DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
six QUIPU 6 007 34 QUIPU 7 008 seven DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
35 QUIPU 8 009 eight QUIPU 9 010 nine DIAGRAM DIAGRAM DRAFT NOTATION DRAFT NOTATION
COMPOSITES
Compositing base weaving structures is a way to build articulation. Layering these markings begins to broaden their visual output and significance. An encrypted lan-
36
guage is formed as a sequence of patterns, interlacing, and knots are stringed together to store information.
37
001 003 002 004 GEOLOGY PERFORMANCE CADENCE RESOURCEFUL 38
005 007 006 008 REMOTE BOUYANCY LEAP PROGRESSION 39
009 011 010 012 BLOOM SPORADIC DIVISION REPRODUCE 40
013 015 014 016
OPTIMIZATION
41
STREAK
NAVIGATE DISPERSE
017 019 018 020 ADDITION CULTIVATE ENTANGLEMENT REPRODUCE 42
021 023 022 024 CONQUEST ANNOUNCE STREAM MEANDER 43
017 019 018 020 ADDITION CULTIVATE ENTANGLEMENT REPRODUCE 44
021 023 022 024 CONQUEST ANNOUNCE STREAM MEANDER 45
PROGRAMING LANGUAGE
46
47
48
[0, 0, 1, 1], [1, 0, 0, 1], [1, 1, 0, 0], [0, 1, 1, 0] 001
[0, 1, 1, 1], [1, 1, 1, 0], [1, 1, 0, 1], [1, 0, 1, 1]
pattern = [ ] target_words = [“reproduce”, “ascension”, “movement”, “unstable”, “descension”]
found_words = [] for word in words: if word in target_words:
found_words.append(word) print(“Found words:”) for word in found_words: print(word)
49
50 [0, 1, 1, 0, 1, 1], [0, 0, 1, 1, 1, 0], [1, 0, 0, 1, 0, 0], [1, 1, 0, 0, 0, 1] [1, 1, 1, 0, 0, 0], [1, 1, 1, 0, 0, 0], [1, 1, 1, 0, 0, 0], [0, 0, 0, 1, 1, 1], [0, 0, 0, 1, 1, 1], [0, 0, 0, 1, 1, 1], 002
pattern = [ ] target_words = [“direct”, “location”, “site”, “locality”, “stability, “structural”, “expand”, “cadence”]
found_words = [] for word in words:
if word in target_words: found_words.append(word)
print(“Found words:”) for word in found_words:
51
52
53
54
55
THE CONTENTS IN THIS ISSUE ARE STILL IN DEVELOPMENT.