Fußball als Webdienst

Jeden Sonntag versammle ich ein paar Leute, um Fußball zu schauen. Ich stützte mich auf meine ausgeprägten technischen Fähigkeiten, um diese Zusammenkünfte einzurichten, und verfolgte einen serviceorientierten Ansatz.

Zum Beispiel lasse ich all diese Leute mein Badezimmer benutzen, so dass ich eine universelle Vertrauensbeziehung für selbstverständlich halte. Jeder Mann stellt seine Snackschale und trinkt Tassen auf einen gemeinsamen Couchtisch aus Glas. Anforderungen werden auf konsistente, vorhersehbare Weise behandelt, wie dies bei Webdienstschnittstellen der Fall sein muss.

Nehmen Sie Platz. Früher hatte ich ein Sofa, eine Liege und ein Kissen in meiner Höhle, aber das bot zu viele mögliche Sitzkategorien - Datentypen, wenn Sie so wollen -, um sie zu verwalten. Also habe ich die weichen Sitze ins Wohnzimmer verlegt, und jetzt ist ein Sitz ein Sitz. Eine Anfrage für einen Sitzplatz wird mit einem Stahlklappstuhl erfüllt.

Meine Snack-Oberfläche ist ebenso einfach - je eine Schüssel nach Ermessen des Antragstellers -, obwohl ich sie überarbeitet habe, damit Anrufer Atkins-konforme oder Atkins-go-to-Hell-Snacks angeben können, wobei die Standardeinstellung die letztere ist.

Dieses Arrangement hat in jeder Saison reibungslos funktioniert. Aber letzten Sonntag war ein Audio- / Video-Auftragnehmer in der Höhle beschäftigt und installierte einen neuen Projektionsfernseher, Theaterbestuhlung und Surround-Sound ('s neueste Anerkennung meiner herausragenden Arbeit). Also habe ich die Party ins Wohnzimmer gebracht.

Es war ein neues Bereitstellungsszenario, aber meine einfachen, standardisierten Protokolle und Datentypen würden die erneute Bereitstellung zum Kinderspiel machen - dachte ich zumindest. Was für eine Katastrophe. Ich erfuhr, dass ich meine Fußballparty-Dienste so konzipiert hatte, dass sie so isoliert von ihrer Einsatzumgebung waren, dass sie sich nur auf dem Papier anpassten.

Dwayne sieht nicht sehr gut, also mussten wir das Sofa näher heranrutschen und ihm den besten Platz geben. Dann konnten zwei Männer auf den Außensitzen nicht sehen, also zog ich sie auf einen Liebessitz hinter dem Sofa. Ein Mann ging zu Boden. Earl zog das TV-Tablett an sich und nahm sich die Zeit, Schüsseln und Getränke zu und von „seinem Tisch“ zu bringen. Und alle stritten sich darüber, wer einen weichen Sitz und wer einen Klappstuhl bekam.

Offensichtlich stand ich vor einer Neugestaltung. Aber welche Lösung ich auch geschaffen habe, würde wahrscheinlich wieder brechen (nicht funktional, aber praktisch), wenn wir in die Auditorium.

Es stellte sich heraus, dass das Richtige darin bestand, meine Frau zu fragen. Sie ist von Beruf Veranstaltungsplanerin. Sie zuckte zusammen, als ich Earl neben das TV-Tablett stellte, weil sie wusste, dass er da war, um zu essen, nicht um zuzusehen. Sie wusste, dass Dwaynes Eigenschaften die Mitte des Sofas zu einem guten Ort für ihn machten, aber zu einem schlechten für alle anderen.

Während ich meine Hände über die Übel von Ausnahmefällen rang, erklärte sie, dass jede Veranstaltungsplanung den Veranstaltungsort berücksichtigt, aber flexibel genug ist, um sozusagen eine Stunde vor dem Anpfiff einen Ortswechsel zu bewältigen. Es ist unpraktisch, ein Ereignis zu ändern, während es läuft, aber sie schreibt auf, was bei jedem Ereignis funktioniert und was nicht, und verwendet dieses Wissen, um Masterpläne zu erstellen, die zunehmend anpassungsfähiger werden.

Webdienstarchitekturen unterscheiden sich nicht. Die Einhaltung von Standardprotokollen und Datentypen ist in Ordnung, aber das bedeutet nicht, dass es sinnvoll ist, einen quadratischen Stift in ein rundes Loch zu zwingen.

Daran habe ich in meinem Game-Party-Design nicht einmal gedacht. Jeden Sonntag musste ich zum ersten Mal die Sitz-, Snack- und Getränkeschnittstellen anrufen. Aus meiner Sicht war mein Design jede Woche perfekt.