Construction Information - apps4work/co.a4w GitHub Wiki

Making Clothes for Programmers[^Shortening]

sidebar[^Shortening]:(Shortening sentences - like tweeting - is dangerous: I mean "Here is information for programmers about making clothes". Making clothes for programmers is much the same as making clothes for normal people).

Making clothes is the process of chopping up a sheet of cloth and then sewing the pieces get back together again. I once led a team of people who involved in making nuclear submarines. It's basically the same process: you cut up steel into pieces and then you weld them back together again.

If you are a programmer reading this then you are asking the most obvious question "Why would we do that?"

And if you are a mathematician you would be happy with the statement "imagine that a woman was a sphere". So let's imagine that a woman is a naked sphere and our job, Mister programmer, is to put clothes on her.

If you are a programmer reading this then you are asking the most obvious question "Why would we do that?"

The problem is that the only material we have to make clothes out of is two dimensional and she isn't. We can cut a flat circle but the circle doesn't fit the woman, not even a spherical woman. On the other hand if you cut out a segment of the circle. That's like cutting a slice of pizza out of a pizza for you technical people and then join the pizza together along the cut lines, you have to bend the pizza into a cone - a 3D shape - in order to get the join to work.

Your pizza, made into a cone, will fit the woman who is a sphere the better than your flat cloth. Not much better; it would fit better if she were cone shaped.

If you cut your pizza with a wavy line and join the wavy lines together you can change how the pizza fits the woman.

For example if you make the cuts so that they are convex to the piece of pizza that you are removing, then the join the cut edges you make a cone that is more rounded. This is particularly useful if you happen to be fitting to something that is a rounded cone shape.

tl;dr; we we cut pieces of cloth and join them back together again because we can turn to the 2D cloth into 3D shapes that fit the target 3D shape.

So the skill of a technical dress designer is to figure out what 2D shapes will make the right 3D shape that the creative dress designer wants.

An obvious question that a programmer would ask was how does the person who actually assembles the pieces know which pieces put yourself together.

The obvious answer is that the technical pattern designer tells her. Obvious yes. True no.

In typical garment making someone that further down the line is going to have to figure out how the pieces go together, and mostly they figure it out because they "just know".

"That's a sleeve. It gets sewn into the armhole. And that's the two pieces that when sewn together will make an armhole, that the sleeve is sewn into."

This is all very well for people to do, but it's a bit hard for robots to do. It's also a bit hard for people to do if they are given patterns that aren't normal patterns.

Being a programmer I typically pick an example that illustrates the extreme of a problem. So I ask what if the garment is a jacket for a dog. Apparently this offends people but I don't know why, as there is quite a healthy industry in making jackets for dogs. The problem with the jacket for dogs is how do you know which is the arm hole and which is the leg hole?

An example that offends people less is the project that we did for the Boston Symphony Orchestra. This was a set of fine-looking evening wear - long dresses and Tails. That's dresses for the women and Tails for the men, mostly.

Except that the patterns designed by gaBi Asfour (a man who would appeal to programmers because his first name is camel cased) took into account the practical issues of sitting in an orchestra under bright lights for hours on end engaged in a relatively strenuous activity.

The patterns called for high performance mesh material to be used anywhere that looking smart was less important than venting sweat.

No seamstress was capable of picking out the pieces of the BSO uniform using "I just know".

The same happened with a Lab Coat. (A coat for wearing in a laboratory; I'm not back on coats for Labrador dogs). A design based on a conventional full length coat was enhanced by the designer to create a more elegant look, which involve replacing a single easily recognized "front" with a set of strips. Conceptually she cut the front into strips in order to create a more 3D shape. It would be a tough job for a sewer to figure how which pieces were to be sewn back together.

The goal of the On Demand business to widen, not narrow, the opportunity for designers to design new clothes[^2], and to do it in a way that is economic for the purchaser, even for quantity-of-one. That's what we did for gaBi and the BSO.

sidebar[^2]: There is a pragmatic trick we call "20x20" to narrow the scope of a grand vision to be something that is practical.

The goal of the OnPointManufacturing factory is to be able to make "anything" given the Digital Product Specification. That's fine for a goal but we need to get started; to narrow "anything" down to something practical, without losing the essence of what we are doing.

The first "20" refers to the number of "operations". The second "20" referred to material - fabric and other parts.

So instead of seeking to make "anything" we define a set of 20 operations, that can be composed into the process for making a garment, out of a stock of 20 fabrics and parts. Of course the key is select fabrics, parts, and especially operations that are useful for composing a large number of garments. Not infinity, not just 400 (that's not how operations get combined), but some very large number.

But there is no way that it be economic for a unit of one, to train a seamstress in the particular pattern of which she will only ever make one.

Instead the On Demand Manufactory (did I just make a new word?) makes clothes by composing operations that seamstresses know how to do, have been trained how to do, and do remarkable well, into the construction of a garment that the seamstresses have never seen before, and likely will never see again.

She won't even make one, she will make some part of a pattern along with other sewers in the factory making other parts of the pattern until the sum of the parts is the Garment.

Programmers will recognize this as "compiling". Programmers write programs in "High Level Languages" which express the intent of the programmer. A compiler is software that translates the intent of the programmer in to the specific "primitive" instructions that the computer hardware knows how to execute.

Therefore it is essential to digitize the instructions for constructing the Garment out of the pieces. For decades we've had the Colossus of the numerically controlled cutter and it has been fed with 2D patterns but the process beyond cutting is just something done with cheap labor.

No matter whether the labor is cheap, and it has no need to be, the process of manufacturing On Demand products has to be as automatically as the process of cutting them.

Even if human hands are deemed to be better than robot hands at the construction of an individual seam those human hands need to be able to do it in order to sew together pieces for a garment on which that seamstress has never being a trained.

So our fundamental vision of the automated Factory is not the science fiction black box into which you put a pattern and out of which comes a ready-to-wear garment (although those such black boxes do exist for very specialized knitted tube sweater), it is manufactory (!): a set of distinct machines optimized to perform specific operations, and a compiler to compose a garment out of those operations, and a Server that controls the work-in-progress flow through those operations.