Drei Phasen von Computeranwendung
Hamming's Kapitel 5 beginnt mit einer Rückblick: Seine 30-jährige Reihe von Vorträgen bei IBM-Kundentrainingsveranstaltungen zwang ihn, Trends anstelle von Fakten zu verstehen. Das Vorbereiten derselben Vorlesung mehrmals erforderte es, dass er vorausging, anstatt sich mit dem Feld zu messen.
Er identifizierte drei aufeinanderfolgende Phasen, in denen Computer eingesetzt wurden:
Phase 1: Hardwaregrenzen (Kapitel 3). Frühe Berechnung wurde durch die Maschinenbeschränkungen eingeschränkt - Speicher war knapp, Zyklen teuer, Zuverlässigkeit ungewiss. Anwendungen wurden ausgewählt, um dem Hardware zu passen.
Phase 2: Softwaregrenzen (Kapitel 4). Mit verbessertem Hardware wurde das Programmieren zum Engpass. Anwendungen wurden durch die Effizienz der Kodierung eingeschränkt.
Phase 3: Ökonomie und Anwendungen (Kapitel 5). Bis Ende der 1980er Jahre war die Hardware so günstig und das Software so mächtig, dass die Frage wurde: was sollten Computer tun? Ökonomie und organisatorische Kapazität bestimmten, welche Anwendungen entwickelt wurden.
Diese Phasenübergänge sind wichtig: Jede Phase erforderte völlig verschiedene Fähigkeiten von Praktikern. Ein brillanter Hardware-Ingenieur aus Phase 1, der nie seinen mentalen Rahmen aktualisiert, wurde in Phase 3 nutzlos.
Früheste Anwendungen
Die Berechnung begann mit astronomischen Berechnungen, dann 'Zahlensalat' in Physik und Ingenieurwesen. Raymond Lull (1235-1315), ein spanischer Theologe, baute ein Logikgerät - die erste Anwendung von Computern für nicht-numerische Vernunft. Jonathan Swift parodierte dies in Gullivers Reisen (die Insel Laputa). Hamming verfolgte diese Linie von Lull über symbolische Manipulation bis zu dem, was werden würde: maschinelles Lernen.
Die S-Kurve der Technologienakzeptanz
Jede bedeutende Technologie folgt einer charakteristischen Trajektorie: langsames Anfangsnachlassen, rasche Beschleunigung, Sättigung. Hamming nannte dieses Muster die S-Kurve.
Phase 1 einer Technologie: heroische Demonstration. Ein kleiner Kreis von Enthusiasten zeigt, dass die Technologie funktioniert. Fortschritte hängen von individueller Brillanz und Toleranz für Unzuverlässigkeit ab.
Phase 2: schnelle Akzeptanz. Die Technologie wird genug verlässlich, um allgemein genutzt zu werden. Infrastruktur entsteht um sie herum. Standards entstehen. Das Limitverschiebt sich von technisch zu organisatorisch.
Phase 3: Sättigung. Die Technologie erreicht die volle Durchdringung ihres adressierbaren Marktes. Weitere Verbesserungen erzielen abnehmende Renditen. Neue S-Kurven beginnen für Nachfolgtechnologien.
Für Rechnen: Phase 1 = ENIAC-Zeit (1940er-1950er), Phase 2 = Mainframe-Kommerzialisierung (1960er-1970er), Phase 3 = Personal Computing, der sich der Sättigung nähert (1980er-1990er). Hamming schrieb während des Übergangs von Phase 2 zu Phase 3 für Mainframes, während das Personal Computing noch in Phase 2 war.
Die entsprechende Produktinsight (erstmals in Kapitel 2 formuliert) ist direkt anwendbar: In Phase 2 führt eine erfolgreiche Computerisierung zu einer äquivalenten Stelle, nicht demselben Job. Organisationen, die versucht haben, bestehende Workflows ohne Neugestaltung zu computerisieren, sind oft gescheitert oder haben unterdurchschnittliche Leistungen erzielt.
Ort der Positionierung auf der S-Kurve
Hamming's S-Kurve-Insight hat eine praktische Implikation: Die Fähigkeiten und Strategien, die in Phase 1 (heldenhaft, experimentell, hohe Fehleranfälligkeit) erfolgreich sind, unterscheiden sich von denen, die in Phase 2 (zuverlässige Lieferung, Standardskonformität, Organisationseinbindung) und Phase 3 (Optimierung, Kostensenkung, Plattformkonsolidierung) erforderlich sind.
Wenn geteiltes Daten nicht funktioniert
Hamming erzählte eine Geschichte von seiner Zeit, in der er eine hochrangige Prüfung des Computerzentrums von Boeing durchführte. Die Geschäftsleitung von Boeing glaubte, dass sie die kooperative Gestaltung gelöst hatten: Alle Ingenieure würden ihr aktuelles Designzustand an einen geteilten Band speichern. Jeder würde von diesem einzigen Quell der Wahrheit lesen. Koordinationsprobleme würden verschwinden.
Es funktionierte nicht.
Der Grund: Wenn ein Team eine Optimierungsstudie durchführt (z. B. durch Variation der Flügelfläche und -profil, um den Luftwiderstand zu minimieren), benötigen sie eine fixe Basis zum Messen von Änderungen ab. Wenn der geteilte Band kontinuierlich mit Änderungen von anderen Teams aktualisiert wird, könnte eine Verbesserung, die ein Team misst, tatsächlich die Änderung eines anderen spiegeln - und nicht ihre eigene Designentscheidung.
Die Lösung, die die Teams in der Praxis adaptierten: Jedes Team machte, wenn sie mit einer Optimierungsstudie begann, eine Schnappschusskopie des aktuellen Band. Sie verwendeten diese gefrorene Kopie für ihre Studie und ignorierten Updates. Erst wenn sie zufrieden mit ihrem neuen Design waren, schrieben sie es zurück - und dann vereinigten sie es mit den Änderungen von allen anderen.
Hamming's Fazit: Sie können einen kontinuierlich ändernden Datenbank nicht für eine Optimierungsstudie verwenden. Die Optimierung erfordert einen stabilen Zustandsspace; ein veränderlicher geteilter Zustand führt zu phantomspezifischen Korrelationen.
Datenbanken
Computer wurden als Lösung für organisatorische Datenprobleme angepriesen. Hamming war skeptisch. Er zitierte Flugplanreservierungssysteme als wirklich erfolgreich (das Koordinationsproblem ist real, die Datenerfassung ist einfach und Konsistenz ist strikt erforderlich). Aber Managementinformationssysteme, die versprachen, den Managern 'den aktuellen Zustand des Unternehmens in Echtzeit' zu sagen, erzielten in der Regel unterdurchschnittliche Ergebnisse: Die Datenmodelle waren zu komplex, die Datenqualität war zu schlecht und die Interpretation zu unbestimmt.
Stabile Basis gegenüber Live-Daten
Die Boeing-Fehlleistung veranschaulicht einen allgemeinen Grundsatz, den Hamming implizierte: Optimierung erfordert eine stabile Kostenfunktion, die in einem festen Zustandsraum bewertet wird. Eine gemeinsam veränderbare Zustandsvariable verletzt das Anforderungsprofil eines festen Zustandsraums.
Dieser Grundsatz erstreckt sich über das Software-Bereich hinaus. Bei jedem Optimierungsprozess - Geschäftsstrategie, experimentelle Design, Modelltraining - erfordert die Isolierung der untersuchten Variablen die Kontrolle über alle anderen.
Mustererkennung als der nächste Frontier
Bis 1993 hatte Hamming Mustererkennung als den nächsten großen Herausforderung für das Rechnen identifiziert. Er unterschied zwei Typen:
Klassische Mustererkennung: Vergleich eines Eingangs mit einem gespeicherten Vorlage. Gesichtserkennung, OCR (optische Zeichenerkennung), Unterschriftsverifikation. Diese erlauben algorithmische Lösungen, sobald das Vorlagensatz definiert ist.
Echte Anerkennung: Ein Kind erkennt 'Stuhl' über Tausende verschiedener Formen, Materialien, Größen und Orientierungen, obwohl er die meisten von ihnen noch nie gesehen hat. Es gibt keine explizite Vorlage, die die Generalisierung abdeckt. Hamming betrachtete dies als offenes Problem - der Abstand zwischen klassischer Mustererkennung und echter Anerkennung war keine Frage von mehr Daten oder schnellerer Hardware. Es benötigte andere Grundlagen.
Er formulierte dies in Bezug auf das Scheitern der Expertensysteme: Forscher dachten, sie könnten Entscheidungsregeln von Experten extrahieren und sie in Programme kodieren. Expertensysteme funktionierten in engen Domänen, aber sie scheiterten in komplexen Fällen, teilweise because human experts use patterns they cannot articulate. The unconscious pattern library built over years of practice cannot be extracted through interviews.
Hamming's prediction (1993): genuine pattern recognition would require fundamentally different computational approaches. He gestured toward neural networks but was cautious — not convinced the then-current neural networks would close the gap.
Das Selbe Vortrag für 30 Jahre halten
Hamming beschrieb eine Praxis, die ihm mehr Rückkehr brachte als fast alles andere in seinem beruflichen Leben: das Selbe Vortrag immer wieder zu halten.
Er wurde eingeladen, an IBM-Kunden-Trainingsevents in etwa 1960 zu sprechen. Er wählte einen Vortrag über Die Geschichte des Rechnens bis zum Jahr 2000 - ein Thema, über das er sich tatsächlich unsicher war, was ihn dazu zwang, eigene Ansichten zu entwickeln. Er gab Varianten dieses Vortrags zweimal oder dreimal pro Jahr über 30 Jahre.
Die Vorteile, die er identifizierte:
Aktualität: das Halten desselben Vortrags zwang ihn, ihn regelmäßig zu aktualisieren. Er konnte einen veralteten Vortrag ohne sich in der Front von Zuhörern, die das Feld verfolgten, zu blamieren, nicht halten.
Trenderkennung: Das Aktualisierungsverfahren zwang ihn, sich nach Trends umzusehen, nicht nur nach Ereignissen. Was hat sich in den letzten Jahren verändert, und in welche Richtung? Wiederholte Aktualisierung erforderte ein Modell des Fachgebiets, nicht nur ein Katalog von Fakten.
Rednerfähigkeit: Übung reduzierte Angst und verbesserte die Ausführung. Er wurde nicht mehr von der Angst, Vorträge zu halten, geplagt; durch Wiederholung anstatt Talent wurde er zu einem geschliffenen Redner.
Netzwerk: Ein konstanter Themenbereich baute einen Ruf auf. Leute assoziierten ihn mit Trends im Rechnen. Die Einladungen multiplizierten sich.
Seine Beobachtung: Er hätte diese Praxis auch durch Glück erwerben können - aber er hatte das Glück durch die aktive Suche nach Gelegenheiten zum Sprechen geschaffen und dann die Disziplin, diese Gelegenheiten systematisch zu nutzen.
Bewusste Übung und Karrierekapital
Hamming's 30-jähriger Vortrag war ein Beispiel für bewusste Praxis im intellektuellen Bereich: eine systematische, wiederholte Übung mit Rückkopfungszyklen, die sich über die Zeit kumulierendes Können aufbaut.
Die Struktur: (1) verpflichtet sich zu einem Thema am Rande deines Wissens; (2) hält einen Vortrag, was dazu zwingt, es zu kennen; (3) erhält Rückmeldung (Zuschauerreaktionen, Fragen, auf die man keine Antwort wusste); (4) aktualisiert den Vortrag; (5) wiederhole.
Jeder Zyklus trägt zu einem Modell bei. Jede Aktualisierung zwingt zum Kontakt mit neuen Daten. Jemand fragt im Publikum und zeigt einen Riss auf. Innerhalb von 30 Jahren wird das Modell tief.
Verbindungen zwischen Hardware, Software & Anwendungen
Kapitel 3, 4 & 5 bilden eine Fortschreibung. Hamming baute den Argument über drei Vorlesungen:
Kapitel 3 (Hardware): Physikalische Grenzen begrenzen, was Maschinen können. Drei Gesetze - Molekülgröße, Lichtgeschwindigkeit, Hitze - setzen Deckel, die kein Engineering entfernen kann.
Kapitel 4 (Software): Menschliche Grenzen begrenzen, was Programme können. Sprachen, die für logische Eleganz entworfen wurden, scheitern; Sprachen, die für die menschliche Psychologie überleben. Abstraktionsschichten sammeln sich, jede löst den Schmerz der vorherigen Ebene.
Kapitel 5 (Anwendungen): Wirtschaftliche & organisatorische Grenzen begrenzen, was gebaut wird. Technologie folgt S-Kurven. Geteilter, änderbarer Zustand untergräbt die Optimierung. Die Erkennung von Mustern bleibt eine offene Herausforderung.
Das verbindende Thema: Grenzen verschieben sich. Der Praktiker, der sein Modell über den aktuellen bindenden Einschränkungen aktualisiert - und seine Fähigkeiten entsprechend positioniert - übertrifft konsequent einen, der sich auf die Einschränkungen von gestern optimiert.
Hamming's Karriere-Lektion aus dem 30-jährigen Gespräch: das Wiederholen des gleichen Vortrags zwang ihn, Trends zu verstehen. Das Mechanismus war nicht der Vortrag selbst, sondern das Vorbereitungssystem: Was änderte sich, in welche Richtung und warum? Wiederholte Vorbereitung baute ein Modell, das einfaches Lesen nicht konnte.
Was ist der aktuelle bindende Einschränkung?
In Hamming's Rahmenwerk hat jede Ära einen bindenden Einschränkung: die Begrenzung, die, wenn sie entfernt würde, den Fortschritt am schnellsten beschleunigen würde. In den 1940ern: Reihengeschwindigkeit. In den 1970ern: Softwarefähigkeit. In den 1990ern: Wirtschaftliche und organisatorische Kapazität.