Now Reading:

How Computer Programming Is Similar to Textile Design

How Computer Programming Is Similar to Textile Design

By DevkiPande,

“Why do you like textiles so much?” I asked Manjusha. She was captivated by a black sari with pink, diamond shaped embroidery, running her fingers up and down the pattern. Sashiko is a form of decorative reinforcing stitching from Japan.

“It’s visual logic.” She said. “And so tactile at the same time.” This pattern was a geometric variant of sashiko, with the cross section of a warp and weft thread forming an individual squared point. Like a pixel, I thought. I had studied the basics of computer programming in high school; iterative structures and lines of code outputting similar patterns.

In coding, if there is an error in logic, you have to scan each line, scrutinize each semi colon, and print out every step to see where you went wrong. But weaving is material; what you do is what you see and what you see is what you do.

“I suppose you can say it’s easier to debug,” she said, pulling out a photograph on her phone, a picture of half finished embroidery on British tweed.

“Look. a b a a b.” She pointed out the rhythm between the stitches and the blank spaces. “I go in vertical lines, and then I stitch it again horizontally.”

Sashiko Stitching on Denim by Manjusha

Sashiko Stitching on Denim by Manjusha [1]

What Manjusha was describing is a simple explanation of the way a loom works. There are two parts to a loom; the weft and the warp. The weft is the horizontal thread and the warp is the vertical thread, and it is the weft which is woven into the warp. The rhythm of the warp subsumes the rhythm of the weft; it is within the pattern of the vertical threads that the horizontal threads work. Like a nested for loop, I began to think. I had been introduced to the for loop in school, and one of our first assignments was to use it to create triangles and pyramids through an arrangement of stars. There also, there were two main variables, with the loop controlling the horizontal pattern working within the confines of the vertical pattern. I began to wonder if a for loop was a mathematical representation of a weave.  Whether the beginning of coding had its threads (excuse the pun) entangled within ancient looms.

“This is made on a pit loom,” explained the lady at the Gujarati textile stall. “The pedals are in a pit dug into the earth, and it leaves the hands free to work on the weft.” The kurtas and stoles are created in the tangalia style, where geometrics – mostly variations of diamonds and triangles – are created through dots. Each dot is a white thread wound around an individual strand and then cut off, so that it becomes embedded in the weave. She brought out a photo album with glossy, film encased pages describing how the textiles are created. We asked her what would happen if a mistake was made, because this didn’t look like a weave or a knit that could be unpicked; it didn’t even look like a weave because each dot extended only over a single pixel.

She flipped it over and pointed out the underside of the cloth, confirming that it truly was a weave. “Well, we try not to make mistakes. “ She said. “It’s really difficult to fix. “

This is the debug quality of textile; a system.out.print()function after every step, ensuring that you have to mend your error if you want to proceed.

This is the debug quality of textile; a system.out.print()function after every step, ensuring that you have to mend your error if you want to proceed.Phulkari, the embroidery style from Punjab, is known for its precision because each thread is counted, and the strands are fine, as fine as a spider’s web. The cloth formed is known as malka; a combination of cotton and muslin, and it keeps its tension because it is taken directly from refining to spinning – it is not wound into bales.

“You can take my card.” She told us. “We’re really trying very hard to revive the art, and if you’re interested then we can even come to your college and hold a workshop or something.”

 When students go to villages to learn textile craft, it is the mathematics of it that they are learning; a different perspective on logic.



The kullu shawls of Himachal Pradesh also operate within diamonds and sashiko patterns, but pixelated, with step-like edges that appear on borders. Iterations are counted, making it labour intensive, and the money that the artisans receive is not enough to cover the physical and emotional toll. This is a reason why such crafts are dying and the weavers are moving on – either to contemporary motifs, or to urban cities. In phulkari, the peacock has emerged as a favourite because it is easy to make. But traditional tribal motifs are symmetric, geometric and repetitive in nature, which means that there is a formula that generates them. Coding and weaving interact because the property of cloth is that it is comprised of continuous small elements. Looms and computers, therefore, are similar in the sense that both are algorithmic environments for creative work with patterns.

In ancient times, looms were worked by hand and therefore, there was a limit to the complexity of the structure. Joseph Marie Jacquard recognized that weaving, although intricate, was also reiteration and a mechanism could be developed around this idea. He introduced the eponymous Jacquard loom with the punched card system to control a series of operations, making it an ancestor of data entry and programming. When I studied agro fibers, I combined jute and cotton threads on a hand operated loom with levers. Each lever acted like a Boolean variable; either it raised the warp thread, or it didn’t. Like binary code, there are only two types of information that it works with. It means that when you are weaving something, all that you have to decide is whether the concerned warp thread is to be lifted or not. According to Dr. Ellen Harlizius-Klück, this makes the loom the oldest digital machine and that is why this information can be stored as a hole in a card.

Looms and computers, therefore, are similar in the sense that both are algorithmic environments for creative work with patterns.

Puran Chandra is from the Mandi district in Himachal Pradesh. He uses sheep and yak wool as raw material and the colours grey, ochre, brown, puce can be seen in the shawls he has woven.

“Hamare hi hain, hum hi paltehain.” He said. They are all his sheep, and he undertakes the rearing, the shearing, the combing, the spinning himself. And the promotion of his craft also; he comes to Bangalore for ten days during the monsoon for dastakar purposes.

If one looks carefully, the patterns formed by main weaves are similar to the patterns on the borders, similar to the pattern formed by the tangalia.

Geometric Variant of Sashiko on The Border - Yak Wool[3]

Geometric Variant of Sashiko on The Border – Yak Wool[3]

The stylistic elements are the same, but have been permutated and combined and then permutated again to yield something that is distinctive and ethnic. Like the Pochampallyikat-a material known for their intricate geometry. The technique began as threads were knotted (ikat) and dyed before being woven together. It often requires multiple rounds of tying and dyeing. They too are expensive; priced so high that the makers of the fabric are unable to afford them.

“Hamarakharchachaljatahai.”Puran Chandra said. “Thodakhetibhikartehain.” They manage their expenses, but they farm also, to earn extra. In a world where everything is a click of a button away, time becomes currency. But the digital is not an invention of technological modernity; instead, a very ancient concept with roots in history and culture.

DevkiPande is a student at Srishti Institute of Art, Design and Technology. She has interned with Contract Advertising Ltd, worked for Essel Vision Productions Ltd, developed education oriented content for Laugh Out Loud Ventures, conducted workshops for underprivileged children in rural Uttarakhand and is an avid marathon runner.


[1][2][3]-Photo credits: Manjusha Muthiah

Leave a Reply

Your email address will not be published. Required fields are marked *

Input your search keywords and press Enter.