Programming Patterns: The Story of the Jacquard Loom (2019)(scienceandindustrymuseum.org.uk)
73 points byandsoitis4 days ago |9 comments
mmmlinux6 hours ago
For Opensauce '24 I modified a Leclerc Dorothy Table Loom to be a Jaquard. With exception of some bearings and rods it was entirely 3D printed. It could run real punch cards (that I cheated and used a laser cutter to make, I wasn't building a second machine to punch the cards. Although that machine is super cool on it's own.) I had found a book that detailed extremely well the mechanisms used in the machine. It surprisingly worked very well with not terribly much trial and error. Even surviving being in my luggage from Maryland to SF. A surprising number of people were super excited to get to see one up close and really see how they had operated. So many people came up to tell me they had been to so and so museum where they had one, but it was a giant machine you couldn't really look at up close.

Currently I'm down the rabbit hole of leavers lace machines, they make Jaquard looms look like child's toys. But they were much less common, and I don't think any exist in the united states. If anyone has any leads or information on someone that works on or with or near or has heard of one of these machines please let me know.

flint7 hours ago
I worked on an early spreadsheet and word-processing system at Lehman Brothers back in about 1984. The system was called Jacquard. The investment bankers built comparative financials in this system and printed them out on 14x11 folded paper. The deal was that you could enter formulas into a bar, with a formula for each column, and drag the bar down to apply the formula to the cells.
WillAdams7 hours ago
Sounds a bit like Lotus Improv or the older Javelin --- any articles on it?
flint3 hours ago
I chatted with Gemini about it seems close: """It sounds like you were using the Jacquard J100 or J500 specifically as a "shared-logic" workstation. ... The Software: AM Jacquard "Data-Rite" While Jacquard was famous for its Type-Rite word processor, the spreadsheet-like functionality for bankers was likely a component of Data-Rite. Here is why your description fits so perfectly: Row-Column Text Format: Unlike modern spreadsheets that are "cell-centric," these early systems were often "record-centric." They functioned more like a flat-file database, with each row a record and each column a field. The "Formula Bar": In Jacquard’s system, you didn't usually put a formula into an individual cell. You entered a "Procedure" or a "Calculation Rule" at the top of a column. "Drawing Down": When you "drew the bar down," you were essentially telling the mini-computer to execute a Batch Process on the text file. It would sweep through the records, applying your math (e.g., Col C = Col A * Col B) to every row in the file.""" It was old when I got there. I never saw any manual; they barely let me touch it.
atulatul7 hours ago
This related BBC QI video is quite interesting: Which Software Drove People To Violence?

https://www.youtube.com/watch?v=F7r1GnG9cQ8

qingcharles3 hours ago
Great segment, thank you!
kjellsbells3 hours ago
James Burke's series Connections has a great episode on computation that covers the loom.

https://youtu.be/z6yL0_sDnX0?si=-xdIgEj_kk9QIDPq

alexandrehtrb7 hours ago
Here is a video that explains better how it works:

https://www.youtube.com/watch?v=K6NgMNvK52A

thangalin6 hours ago
The history of how we go from a loom ca. 1725 to 80x25 terminals ca. 2026 is fascinating. It's been written up many times, here's my take:

https://dave.autonoma.ca/blog/2019/06/06/web-of-knowledge/

davisdude5 hours ago
It's been a while since I read it, but I enjoyed _Jacquard's Web_ by James Essinger, which covers this in some more depth
1122338 hours ago
I'm baffled by the persistent notion that Jacquard's loom is somehow related to computing. There is no computation. It is not remotely the first punchcard-driven loom. Extremely complex musical and animated automata existed long prior. E.g. the Banu Musa automatic flute player.

The article quotes the reason being "inspired by" that loom. uh...

andsoitis7 hours ago
The core requirement for “programmability” is a machine whose behavior can be changed by altering symbolic instructions without rebuilding the machine.

The Banu Musa automatic flute player doesn’t meet this bar. The flute player was mechanically configured, not symbolically programmed. It had no conditional logic or flow control. No stored symbolic instructions.

To contrast, the Jacquard Loom used an externally stored instructions (punch cards). It allowed arbitrary-length instruction sequences, which is a primitive form of control flow.

1122337 hours ago
Punchcards are also mechanically configured, not symbolically programmed. If you see huge semantical difference between a card with holes and a cylinder with pins or a cam with groves, please explain that difference. Or is the "arbitrary length" the main difference?

I'd imagine something that changes operation based purely on state (position of a dial, presence of a peg in a slot etc) conceptually being "symbolic". Punchcards are not it.

ajb6 hours ago
I used to have colleagues who literally learned to program on punched card machines. As in they wrote a program on paper in symbolic assembler, manually converted it to machine code, punched the machine code onto a card,and then carried the cards to the nearby university so that they could run their school homework program.

They would be amused by the idea that this wasn't computing.

Punched cards store bits. Bits can store symbols.

noefingway4 hours ago
As a teen I first learned to program on a pdp-8 with a teletype terminal. Then moved on to mainframes - we wrote out the code on paper (lined in 80 columns), then punched the cards out and submitted the deck to be run. punch card machines were available all over the university campus. BTW, I had a colleague programmed by plugging wires in a plug board. So, yeah, punch cards are definitely computing.
andsoitis6 hours ago
> Punchcards are also mechanically configured, not symbolically programmed.

I don’t know that I said the punchcards are programmable.

It is the machine that is programmable via the punchcards.

1122336 hours ago
By these criteria printing press was much more programmable than the loom. The Babbage's machine was not notable for being "symbolically programmable", it was a machine capable of universal computation. That is huge step beyond any complex programmable automata such as were made for clocks and music boxes.

The "It had no conditional logic or flow control. No stored symbolic instructions." you mention applies to the loom too. It copied what was poked into cards to different medium, not unlike Gutenberg's press did.

I'm obviously missing the big differentiator of Jacquard's loom, but so far I have not seen it clearly explained in the articles I've read.

kevin_thibedeau5 hours ago
The loom allowed for interchangeable weaving sequences to be saved on a cheap medium for later reuse. Movable type presses didn't make that practical with the cost of fonts.
1122333 hours ago
Here is a 1746 machine loom that used perforated tape, half a century before Jacquard:

https://www.arts-et-metiers.net/musee/metier-tisser-les-etof...

Nor is it first such device. Here is the nice image of barrel with pins that controls the 14th century machine organ:

https://www.pianola.org/history/history_mechanical.cfm

Again, while impact of Jacquard's loom was indisputably huge, ascribing origin of computers to it seems like calling Ford model T the origin of personal transportation.

ajb3 hours ago
Wikipedia suggests that the Jacquard loom introduced Babbage to punched cards, which would be why it, rather than the others, is associated with the origin of computers.
juancn7 hours ago
The usual argument is that the Jacquard's loom inspired Herman Hollerith’s tabulating machine, used to tally the 1890 census, and became the basis of IBM.

Essentially, the speedups in textiles, inspired a speedup in computing (tabulating initially), which kicked-off the modern information technology industry.

And even if there wasn't any computation, it still is automated data processing (albeit simple).

empath755 hours ago
> To those who are acquainted with the principles of the Jacquard loom, and who are also familiar with analytical formulæ, a general idea of the means by which the Engine executes its operations may be obtained without much difficulty. In the Exhibition of 1862 there were many splendid examples of such looms. It is known as a fact that the Jacquard loom is capable of {117} weaving any design which the imagination of man may conceive. It is also the constant practice for skilled artists to be employed by man­u­fac­turers in designing patterns. These patterns are then sent to a peculiar artist, who, by means of a certain machine, punches holes in a set of pasteboard cards in such a manner that when those cards are placed in a Jacquard loom, it will then weave upon its produce the exact pattern designed by the artist. 〈WEAVING FORMULÆ.〉 Now the man­u­fac­turer may use, for the warp and weft of his work, threads which are all of the same colour; let us suppose them to be unbleached or white threads. In this case the cloth will be woven all of one colour; but there will be a damask pattern upon it such as the artist designed. But the man­u­fac­turer might use the same cards, and put into the warp threads of any other colour. Every thread might even be of a different colour, or of a different shade of colour; but in all these cases the form of the pattern will be precisely the same—the colours only will differ. The analogy of the Analytical Engine with this well-known process is nearly perfect. The Analytical Engine consists of two parts:— 1st. The store in which all the variables to be operated upon, as well as all those quantities which have arisen from the result of other operations, are placed. 2nd. The mill into which the quantities about to be operated upon are always brought.

- Charles Babbage, Passages from the life of a philosopher.

1122333 hours ago
Thank you for this relevant quote!
b33j0r5 hours ago
I think you are implicitly invoking Turing completeness as opposed to “fixed-step recipes on a punchcard” as your requirement for something to be considered computing.

If a loom had a jump instruction, would you change your mind? (They did not.)

And yet we still have IDE defaults of 80 characters because of FORTRAN punchcards. That’s the heritage being invoked.

EDIT: I think all of these early devices also helped us to understand how to build multiplexers, which are the basic building block of any CPU. Given this instruction, I do a different thing.

1122333 hours ago
Yes, my main confusion is — what did the Jacquard loom do that all the prior art did not. I'm looking at it, at many much older devices, and am led to conclude it is only because of popularity.
Atlas6677 hours ago
By chance I was reading about this yesterday, only in the context of unemployment.

In Das Kapital, Section 5: The Strife Between Workman and Machine, Marx talks about how the automatic looms caused some of the very first waves of mass unemployment under nascent capitalism.

He tells how in some German states they banned the use of looms, burned them, some say even drowned or strangled their creators. Both the state and the textile workers did this in order to preserve order.

Later, states allowed them but the textile workers formed sabotage units in order to destroy machines and keep their jobs.

At the end it ends with this: "It took both time and experience before the workpeople learnt to distinguish between machinery and its employment by capital, and to direct their attacks, not against the material instruments of production (the machine), but against the mode in which they are used."

Very relevant in the face of progress, especially of AI.

Ps: and a quick reminder that communism is about developing production for human needs not profits. The ills of unemployment would be unnecessary with added efficiency.

Source: https://www.marxists.org/archive/marx/works/1867-c1/ch15.htm...