Joel on Software

Joel on Software   Joel über Software

 

Andere auf Deutsch verfügbare "Joel on Software"-Artikel

Andere auf Englisch verfügbare "Joel on Software"-Artikel

Email an den Verfasser (nur auf Englisch)

 

Lasst Euch nicht von Architektur-Astronauten einschüchtern


Von Joel Spolsky
Aus dem Englischen von Hartmut Ludwig
Redigiert von Freitag Ewald
21. April 2001

Wenn große Denker über Probleme nachdenken, erkennen sie schnell Muster. Sie betrachten das Problem, wie sich Leute gegenseitig Textverarbeitungsdokumente schicken können und sie betrachten das Problem, wie sich Leute gegenseitig Tabellenkalkulationsdokumente schicken können, und sie erkennen, dass es da ein allgemeines Muster gibt: Versenden von Dateien. Das ist bereits eine Abstraktionsebene. Dann gehen sie eine Ebene höher: Leute versenden Dateien, aber Webbrowser "senden" ebenfalls Anfragen nach Webseiten. Und wenn man weiter darüber nachdenkt, dann ist der Aufruf der Methode eines Objektes nichts anderes, als das senden einer Nachricht an das Objekt! Also wieder das gleiche! Immer geht es darum, dass etwas versandt wird. Also wird unser schlauer Denker eine noch höhere Ebene der Abstraktion erfinden, die er Messaging nennt. Aber damit wird die Sache schon ziemlich unbestimmt und niemand weiß mehr so genau, worüber dort eigentlich gerade gesprochen wird. Blah.

Wenn man im Bezug auf die Abstraktion zu weit nach oben geht, wird schnell mal die Luft dünn. Manchmal wissen kluge Denker einfach nicht, wo aufhören, und sie erschaffen diese absurden alles erklärenden Darstellungen des Universums auf allerhöchster Ebene, die ja schön und gut sind, aber letztlich für niemanden mehr irgendeine konkrete Bedeutung haben. 

Das sind die Leute, die ich "Architektur-Astronauten" nenne. Es ist verdammt schwer, sie dazu zu bringen, Code zu schreiben, oder ein Programm zu entwerfen, weil sie einfach nicht aufhören können, über die Architektur nachzudenken. Sie sind schon weit über der Sauerstoffgrenze, ich habe keine Ahnung, wie sie überhaupt atmen können. Sie neigen dazu, in richtig großen Firmen zu arbeiten, die es sich leisten können eine Menge unproduktiver Leute mit sehr hohen Abschlüssen zu haben, die aber unterm Strich überhaupt nichts beitragen.

Ein Beispiel aus der jüngsten Vergangenheit belegt dies. Ein typischer Architektur-Astronaut wird eine Tatsache wie "Napster ist ein peer-to-peer-Service, um Musik herunterzuladen" nehmen und dabei alles ignorieren, was nicht mit Architektur zu tun hat. Er glaubt, dass es interessant sei, weil es auf peer-to-peer-Technologie aufbaut, wobei er den entscheidenden Aspekt vollkommen vernachlässigt, nämlich dass es deswegen interessant ist, weil man den Namen eines Songs eintippt und sofort anfangen kann, ihn anzuhören.

Alles worüber geredet wird ist peer-to-peer in dieser, jener und der anderen Hinsicht. Plötzlich gibt es peer-to-peer Konferenzen, peer-to-peer Risikokapitalfonds und sogar die peer-to-peer Gegenbewegung mit debilen Wirtschafsjournalisten, die sich einen Ast freuen, während sie voneinander ihre Storys abschreiben "Peer-to-Peer: Tot!"

Der Architektur-Astronaut wird solche Sachen sagen wie "Kannst Du Dir ein Programm vorstellen, wie Napster, bei dem man nicht nur Songs, sondern alles herunterladen kann?". Dann bauen sie Anwendungen wie Groove, von denen sie glauben, dass sie viel allgemeiner als Napster einzusetzen sind, die aber dieses klitzekleine Feature vermissen lassen, dass man den Namen eines Songs eintippen kann und gleich darauf den Song anhören kann -- genau die Funktion, die wir eigentlich hauptsächlich erwarten. Das nennt man wohl "Thema verfehlt". Wenn Napster nicht peer-to-peer wäre, aber dennoch ermöglichen würde, den Namen eines Songs einzugeben und diesen dann sofort hören zu können, dann wäre es sicherlich trotzdem genauso populär.

Eine weitere Eigenschaft, die wir bei Architektur- Astronauten häufig antreffen ist, dass sie eine neue Architektur erfinden und behaupten, dass sie irgendein Problem lösen würde. Java, XML, Soap, XmlRpc, Hailstorm, .NET, Jini, oh Gott - ich kann nicht mithalten. Und das sind nur die Sachen aus den letzten 12 Monaten!

Ich will nicht behaupten, dass da irgendwas falsch ist mit diesen Architekturen... keinesfalls. Es sind alles ziemlich gute Architekturen. Was mich ärgert ist die gewaltige Menge an Hype, die diese Dinge umgibt. Erinnern Sie sich an das Microsoft Dot Net white paper? 

Die nächste Generation der Windows Desktop Plattform , Windows.NET unterstützt Produktivität, Kreativität, Management, Unterhaltung und vieles mehr und ist so entworfen, dass sie es den Anwendern ermöglicht, ihre digitales Leben zu kontrollieren.

Das war vor etwa 9 Monaten. Letzten Monat haben wir Microsoft Hailstorm bkommen. Das white paper sagt:

Menschen kontrollieren nicht die Technologie, die sie umgibt... HailStorm sorgt dafür, dass die Technologien in ihrem Leben zusammenarbeiten - in ihrem Sinne und unter ihrer Kontrolle.

Oh, prima, das heißt ja wohl, dass die Hightech- Halogenlampe in meiner Wohnung jetzt endlich aufhört in unregelmäßigen Abständen zu blinken.

Microsoft ist nicht alleine. Hier ein Zitat aus dem Sun Jini white paper:

Diese drei Fakten (Du bist der neue Systemadministrator, Computer sind nirgendwo, der eine Computer ist überall) sollten zusammengefasst werden, um die Welt von Computern, die als Computer benutzt werden zu verbessern - indem man die Grenzen zwischen den Computern aufhebt -- indem man Computer allgegenwärtig sein lässt und den Umgang mit Computern so einfach gestaltet wie das Einlegen einer DVD in das Heimkinosystem.

Und erinnern Sie mich bitte nicht an den Dünger, den George Gilder über Java verbreitete:

Ein fundamentaler Durchbruch in der Geschichte der Technologie...

Das ist eines der untrüglichsten Inidizien dafür, dass man gerade von einem Architektur-Astronauten ins Visier genommen wurde: Die unglaubliche Menge an Bombast; die heroischen, utopischen, gigantomanischen Formulierungen, die Prahlerei; der unglaubliche Realitätsverlust. Und die Leute schlucken es! Die Wirtschaftspresse rastet aus vor Begeisterung!

Warum in alles in der Welt sind die Leute immer so beeindruckt von diesen langweiligen Architekturen, die sich oft am Ende als nichts anderes entpuppen, als ein weiteres neues Format für RPCs oder eine neue Virtuelle Maschine? Diese Dinger mögen gute Architekturen sein, von denen die Entwickler, die sie anwenden, auch sicherlich profitieren, aber sie sind nicht, ich wiederhole, nicht, ein angemessener Ersatz für den Einzug des Messias in Jerusalem oder den Weltfrieden. Nein, Microsoft - Computer werden nicht plötzlich anfangen unsere Gedanken zu lesen und automatisch das zu tun, was wir wollen, nur weil jeder in der Welt einen Passport-Account hat. Nein, Sun - wir werden nicht in der Lage sein, die Bilanzanalyse unseres Unternehmens so einfach zu gestalten "wie das Einlegen einer DVD in das Heimkinosystem".

Vergessen Sie nie, dass Architektur-Designer immer versuchen, die Probleme zu lösen, von denen sie glauben, dass sie sie lösen können und nicht die, die zu lösen sinnvoll wäre. Soap und WSDL mögen eine neue heiße Sache sein, aber sie ermöglichen mit Sicherheit nichts, was man nicht vorher mit dem Einsatz anderer Technologien bereits hätte tun können -- wenn man einen Grund gehabt hätte, es zu tun. Das Nirvana der verteilten Anwendungen, von denen die Architektur-Astronauten faseln, wurde uns bereits in der Vergangenheit versprochen, wenn wir DCOM einsetzten, oder JavaBeans, oder OSF DCE, oder CORBA.

Es ist nett, dass wir XML nun als neues Austauschformat einsetzen können. Whoopee. Aber das ist ungefähr so interessant für mich, wie zu erfahren, dass mein Supermarkt Lastwagen verwendet, um Waren in das Lager zu transportieren. Gähn! Mangos, das ist es, was mich interessiert. Erzählt mir irgendetwas neues, was ich jetzt tun kann und was ich vorher nicht tun konnte, ihr Astronauten, oder bleibt da oben im Weltraum und verschwendet nicht noch mehr meiner Zeit.



Titel der Originalausgabe: Don't Let Architecture Astronauts Scare You  

Joel Spolsky ist der Gründer von Fog Creek Software, einer kleinen Software Firma in New York City. Nachdem er auf der Yale University graduierte arbeitete er als Programmierer und Manager bei Microsoft, Viacom und Juno.


Der Inhalt dieser Seiten stellt die persönliche Ansicht des Autors dar.
Copyright ©1999-2005  Joel Spolsky. Die Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten.

FogBUGZ | CityDesk | Fog Creek Software | Joel Spolsky