Niezwykła maszyna XIX wieku

Na początku XIX wieku we Francji pojawiła się maszyna, która potrafiła wykonywać coś, co wcześniej wymagało ogromnej wiedzy, doświadczenia i pracy wielu osób. Krosno żakardowe mogło tkać skomplikowane wzory na podstawie instrukcji zapisanych na… kartach z dziurkami.

Brzmi zaskakująco współcześnie. I nie bez powodu.

System opracowany przez Josepha Marie Jacquarda na początku XIX wieku jest często przedstawiany jako jeden z przodków programowalnych maszyn. Zasada była niezwykle prosta: dziurka albo jej brak decydowały o tym, które nici zostaną podniesione podczas tkania. W praktyce oznaczało to możliwość zapisania wzoru w formie, którą maszyna mogła automatycznie odczytywać.

Nie był to komputer w dzisiejszym znaczeniu. Był to jednak bardzo wczesny przykład maszyny sterowanej za pomocą zewnętrznego zestawu instrukcji.

Problem, który przez wieki rozwiązywał człowiek

Tkanie prostych materiałów nie jest szczególnie skomplikowane. Problem zaczynał się wtedy, gdy ktoś chciał stworzyć bardzo złożony wzór.

W przypadku jedwabnych tkanin dekoracyjnych należało w odpowiednich momentach podnosić określone nici osnowy, aby nić wątku mogła przejść przez nie w odpowiednim miejscu.

Przy prostym wzorze można było wykonywać te czynności ręcznie.

Przy niezwykle skomplikowanych wzorach potrzebny był jednak dodatkowy pracownik zwany draw boy, którego zadaniem było podnoszenie odpowiednich grup nici. Oznaczało to, że zaawansowane tkanie wymagało nie tylko samego tkacza, ale również osoby, która przez długi czas wykonywała bardzo powtarzalne czynności.

Jacquard znalazł sposób, aby znaczną część tej pracy zmechanizować.

Instrukcja zapisana w kawałku kartonu

Najbardziej niezwykłym elementem całego systemu były perforowane karty.

Każda karta zawierała określony układ otworów. Mechanizm krosna odczytywał ten układ za pomocą igieł i mechanicznych elementów sterujących. W zależności od tego, gdzie znajdowały się otwory, jedne nici osnowy były podnoszone, a inne pozostawały na dole.

Potem pojawiała się kolejna karta.

I kolejna.

I kolejna.

W ten sposób cały wzór mógł zostać zapisany jako ciąg instrukcji. Każdy kolejny rząd tkaniny odpowiadał odpowiedniej konfiguracji karty.

To właśnie ten element sprawia, że krosno żakardowe tak mocno kojarzy się z programowaniem.

Zamiast mówić człowiekowi: „teraz podnieś te nici, potem tamte, a za chwilę wróć do poprzedniego układu”, można było przygotować fizyczny zapis całej sekwencji i pozwolić maszynie wykonywać ją automatycznie.

Jeden wzór, tysiące instrukcji

Skomplikowane wzory mogły wymagać ogromnej liczby kart połączonych ze sobą w długi łańcuch.

To oznaczało coś bardzo ważnego: instrukcja była oddzielona od samej maszyny.

Krosno pozostawało zasadniczo tym samym urządzeniem. Chciano jednak uzyskać inny wzór? Wystarczyło zmienić zestaw kart.

Ta cecha była niezwykle istotna.

Wcześniej wykonanie szczególnie skomplikowanego wzoru było mocno związane z umiejętnościami konkretnych ludzi i konfiguracją warsztatu. System żakardowy pozwalał natomiast przechowywać wzór w postaci fizycznego zestawu kart i ponownie go wykorzystać.

W pewnym sensie powstał więc program, choć nie używano jeszcze tego słowa w dzisiejszym znaczeniu.

Jacquard nie wynalazł wszystkiego od zera

Historia jest jednak trochę bardziej skomplikowana niż opowieść o jednym genialnym wynalazcy.

Jacquard wykorzystał wcześniejsze rozwiązania dotyczące mechanizacji tkania. W jego konstrukcji znalazły się idee rozwijane przez wcześniejszych francuskich konstruktorów, między innymi Jeana Falcona i Jacques'a Vaucansona. Jacquard połączył je i dopracował w praktyczny system, który można było zastosować w przemyśle tekstylnym.

Pierwsze publiczne demonstracje jego mechanizmu miały miejsce na początku XIX wieku. Smithsonian wskazuje na początek tego stulecia jako moment wprowadzenia sterowania krosna za pomocą perforowanych kart, a National Museums Scotland podaje rok 1801 jako datę pierwszej demonstracji mechanizmu Jacquarda.

Później rozwiązanie zaczęło być szeroko stosowane w różnych gałęziach produkcji tekstylnej.

Maszyna, która potrafiła „czytać”

Właśnie tutaj pojawia się najbardziej niezwykła cecha krosna.

Otwory w karcie nie były ozdobą.

Były informacją.

Maszyna nie musiała „rozumieć” wzoru tak jak człowiek. Nie wiedziała, że tworzy kwiat, ornament czy portret. Odczytywała jedynie fizyczny układ otworów i na jego podstawie wykonywała odpowiednią operację.

To przypomina podstawową ideę cyfrowego zapisu informacji.

Współczesny komputer również operuje na stanach, które można przedstawić jako dwa podstawowe warianty — na przykład 0 i 1. W karcie żakardowej analogiczną rolę pełniła obecność albo brak otworu.

Nie oznacza to jednak, że Jacquard stworzył system binarny w takim znaczeniu, w jakim rozumiemy go dzisiaj. Trafniejsze jest stwierdzenie, że jego maszyna wykorzystywała dyskretny, mechaniczny zapis instrukcji, który wykazywał ważne podobieństwo do późniejszych sposobów programowania.

Czy krosno żakardowe było pierwszym komputerem?

Tutaj warto uważać.

Czasami można spotkać stwierdzenie, że krosno Jacquarda było „pierwszym komputerem”. To efektowne określenie, ale historycznie jest zbyt dużym uproszczeniem.

Krosno nie wykonywało dowolnych obliczeń. Nie było maszyną ogólnego przeznaczenia. Nie miało pamięci i procesora w rozumieniu współczesnej informatyki.

Było wyspecjalizowaną maszyną automatycznego sterowania.

I właśnie dlatego jest tak interesujące.

Nie musimy nazywać go komputerem, aby docenić znaczenie jego konstrukcji.

Wystarczy zauważyć, że ponad sto lat przed pojawieniem się elektronicznych komputerów istniała maszyna, w której zmiana zestawu instrukcji pozwalała zmienić wykonywany przez nią wzór.

To już brzmi bardzo znajomo.

Charles Babbage zauważył coś niezwykle ważnego

Kilka dekad później pomysł kart perforowanych zainteresował człowieka, którego nazwisko na stałe zapisało się w historii informatyki — Charlesa Babbage'a.

Babbage projektował swoją słynną maszynę analityczną jako urządzenie ogólnego przeznaczenia. Chciał, aby można było przekazywać jej instrukcje i dane za pomocą kart perforowanych.

Inspiracja krosnem żakardowym była dla niego istotna. Smithsonian wprost wskazuje, że Babbage podziwiał wynalazek Jacquarda i rozważał wykorzystanie kart perforowanych do sterowania maszyną obliczeniową.

W projekcie maszyny analitycznej karty miały służyć już nie do sterowania nićmi, lecz do przekazywania informacji związanych z obliczeniami.

To był ogromny krok koncepcyjny.

Karta przestała być tylko instrukcją dla krosna. Stała się nośnikiem informacji dla maszyny.

„Maszyna analityczna tka wzory algebraiczne”

Związek między tkactwem a obliczeniami zauważyła również Ada Lovelace.

W swoich słynnych uwagach dotyczących maszyny analitycznej Babbage'a porównała ją do krosna żakardowego. Jej słowa stały się jednym z najbardziej znanych opisów tego związku: maszyna analityczna miała „tkać wzory algebraiczne”, podobnie jak krosno tkało kwiaty i liście.

To nie była tylko efektowna metafora.

Lovelace dostrzegła fundamentalną rzecz: maszyna może wykonywać instrukcje zapisane w formie niezależnej od samego mechanizmu.

Krosno miało swoją mechaniczną konstrukcję.

Wzór znajdował się na kartach.

Zmieniając karty, można było zmienić rezultat bez budowania całej maszyny od nowa.

W przypadku maszyny analitycznej idea ta miała zostać rozwinięta znacznie dalej.

Od tkanin do spisu ludności

Historia perforowanych kart nie skończyła się na krosnach i projektach Babbage'a.

W XIX i XX wieku podobne rozwiązania zaczęto wykorzystywać między innymi do przetwarzania informacji i automatyzacji obliczeń.

Jednym z najbardziej znanych przykładów była maszyna Hermana Holleritha, która wykorzystywała karty perforowane do opracowywania danych ze spisu ludności w Stanach Zjednoczonych w 1890 roku.

Później karty perforowane stały się ważnym elementem świata przetwarzania danych i komputerów. Ich historia sięgała więc od mechanicznego sterowania nićmi aż do maszyn liczących i komputerów używanych w XX wieku.

Technologia wyprzedzająca epokę?

Czy można więc powiedzieć, że krosno żakardowe było urządzeniem „zbyt zaawansowanym na swoje czasy”?

W pewnym sensie — tak.

Nie dlatego, że jego konstruktor stworzył komputer dwa stulecia za wcześnie.

Jego niezwykłość polegała na czymś bardziej konkretnym: wprowadził do zwykłego procesu produkcyjnego ideę automatycznego wykonywania zapisanego wcześniej zestawu instrukcji.

Była to technologia mechaniczna, ale sposób myślenia stojący za nią okazał się niezwykle trwały.

Instrukcje można było zapisać.

Można było je przechowywać.

Można było je zmieniać.

Można było je kopiować.

A następnie można było przekazać je maszynie, która wykonywała je bez konieczności podejmowania przez człowieka każdej decyzji osobno.

To właśnie ta idea przetrwała znacznie dłużej niż same krosna.

Komputer narodził się nie tylko z matematyki

Historia informatyki często zaczyna się od matematyków, logiki i pierwszych maszyn liczących.

Krosno żakardowe pokazuje jednak inną drogę.

Jednym z przodków programowania nie była wyłącznie matematyka.

Była nim również potrzeba stworzenia skomplikowanego wzoru na kawałku materiału.

Kwiaty, ornamenty i postacie utkane z jedwabnych nici doprowadziły do rozwiązania, w którym informację można było fizycznie zapisać i przekazać maszynie.

Dziś program mieści się w pamięci komputera, na dysku albo w chmurze. W czasach Jacquarda program mógł być długim szeregiem kart zawieszonych na drewnianym mechanizmie.

Zasada była jednak zaskakująco podobna:

człowiek przygotowuje instrukcje, maszyna je odczytuje i wykonuje.

I właśnie dlatego niepozorne karty z dziurkami należą do najbardziej fascynujących rozdziałów historii technologii.