Das Microsoft-Entwickler-Ökosystem ist zu… asynchron geworden

Wenn es in meinem Berufsleben eine Konstante gab (nachdem ich aus der Rundfunkwelt herausgekommen bin), dann war es Microsoft. Nach HTML und CSS und ein wenig Perl wurde ich bei meinem ersten richtigen Webjob mit Active Server Pages bekannt gemacht, und das „Reich des Bösen“ begleitet mich seitdem. Ich habe es so sehr bewundert, dass ich ein paar Jahre dort gearbeitet habe und es manchmal bereue, gegangen zu sein. Die Veränderung im Unternehmen war außergewöhnlich und ich glaube, wir hatten noch nie so viele unterhaltsame Tools zum Spielen wie jetzt. Leider ist es überhaupt nicht konsistent, da der umfangreiche Satz an Tools unter einem Synchronizitätsproblem leidet. Wenn ich kritisch klinge, ja, das bin ich, aber bleiben Sie einen Moment bei mir.

Während meiner zwei Jahre bei Microsoft war ich zufällig bei einer großen, koordinierten Veröffentlichung dabei. Im Jahr 2010 sahen wir die gleichzeitige Veröffentlichung von .NET v4, Visual Studio 2010, MVC 2 und einer Reihe anderer Dinge, an die ich mich nicht erinnere (aber ich bin mir sicher, dass ich das T-Shirt noch irgendwo habe). Außerdem fand im Freien eine riesige Release-Party für das gesamte DevDiv statt, an der damals, da bin ich mir ziemlich sicher, mehr als 10.000 Leute teilnahmen. Nach einer langen Beta-Phase war es eine ziemlich große Sache. Ich habe damals an den MSDN-Foren und -Profilen gearbeitet, und wir haben auch das Reputationssystem (Scoring-Spiel) entwickelt, das über die verschiedenen Eigenschaften hinweg funktionierte und noch heute existiert. Wir waren ziemlich auf dem neuesten Stand und ein früher interner Kunde von Azure.

Dies war in jeder Hinsicht eine klassische „Big Bang“-Veröffentlichung, bei der viele Teile auf einmal ausgeliefert wurden. Bekanntermaßen verteilte das Unternehmen bei Großveranstaltungen wie dieser „Ship it“-Plaketten an Leute, was für uns etwas seltsam war, da wir alle paar Wochen neue Produkte auf den Markt brachten. Ich habe meine immer noch, mit einer einzigen ausgefüllten Kachel für etwas, das mit MSDN zu tun hat, was, ehrlich gesagt, nur ein Teil unseres typischen Zyklus war. Der Urknall war ziemlich normal, wie sich jeder, der von außen nach innen schaut, vorstellen kann. Neue Versionen von Windows, Office und auch Visual Studio waren bestenfalls jährliche Ausgaben, mit langen Beta-Phasen vor der Veröffentlichung. Es war eine Normalität, die sich für jeden, der an einem webbasierten Produkt arbeitete, ein wenig antiquiert anfühlte.

Aber das Schöne daran war, dass all diese neuen, glänzenden Dinge auf einmal eintrafen und wenn man mitspielte Während der Beta-Phase könnten Sie wahrscheinlich alles am ersten Tag nutzen. Nachdem ich schon damals POP-Foren gepflegt hatte, ging ich normalerweise so vor, wobei meine eigenen Veröffentlichungen den großen Produktveröffentlichungen ziemlich nahe kamen (obwohl ich erst Ende 2010 mit dem Hosting auf dem späten CodePlex und später auf Github begann).

Diese Zeiten sind lange vorbei. Das .NET Framework wurde als Core vollständig Open Source neu gestartet. Dieser Neustart dauerte ein paar schmerzhafte Jahre und die zweite Version dauerte mehr als ein Jahr. Visual Studio scheint jetzt modular genug zu sein, sodass die häufigen Updates die Änderungen der Massenversionen weitgehend ersetzen werden. Jetzt haben wir Azure und seine riesige Sammlung an Cloud-Diensten sowie eine Reihe von SDKs, um Dinge zu erstellen und bereitzustellen. ALM lässt sich einfach über Visual Studio Team Services (VSTS) verwalten und erledigt alle Build- und Release-Aufgaben, die Arbeitsverfolgung usw., ohne selbst etwas installieren zu müssen. Es ist eine ganz andere Welt, aber sie hat ihren Preis.

In der neuen Welt bedeutet das Fehlen von Big-Bang-Momenten, dass neue Dinge herauskommen und die verschiedenen Komponenten nicht miteinander funktionieren. Vor ein paar Wochen waren wir beispielsweise bei der Arbeit voller Vorfreude darauf, die .NET Framework-Version auf den neuesten Stand zu bringen, und das nur sechs Wochen nach der Veröffentlichung! Meine Begeisterung wurde zunichte gemacht, als das Projekt nicht in VSTS erstellt werden konnte, weil die Build-Images nicht über das neue Framework verfügten. Ich liebe die Änderungen in ASP.NET Core, aber keine meiner Websites läuft darauf (nach zwei Jahren), weil sie immer noch keine neue Version von SignalR (dem Websockets-Signalisierungsframework) ausgeliefert haben. Das ist für mich eine Schlüsselsache. Dann dachte ich heute Abend, ich würde an meinem Forum-Projekt herumspielen und die Hintergrundverarbeitung (optional) auf Azure Functions verlagern. Aber nein, das SDK funktioniert nicht mit Core, oder vielleicht nicht mit Core 2.0. Ich bin mir noch nicht einmal sicher.

Nichts scheint gleichzeitig zusammenzuarbeiten, und es ist zu einem Hindernis für die Nutzung geworden. In einer Welt, in der wir uns mehr auf verteilte Architektur verlassen (was oft unnötige Komplexität hinzufügt, aber das ist ein anderes Thema), könnte man meinen, dass dies weniger ein Problem darstellt, aber es scheint eher schlimmer als besser zu werden.

Ich gebe zu, dass ich möglicherweise übermäßig kritisch bin. Man könnte argumentieren, dass die neue Welt besser ist, weil sie häufigere Innovationen ermöglicht und bessere Produkte schneller auf den Markt kommen. Das mag im Allgemeinen stimmen, aber wenn es auf den neuesten Framework-Versionen nicht funktioniert, ist das ein großes Problem. Um es klarzustellen: Die Rahmen sind die sich am langsamsten bewegenden Teile, und das zu Recht, denn Ihr Fundament sollte kein bewegliches Ziel sein. Sie haben auch lange Beta-Phasen, sodass es für niemanden wirklich eine Überraschung ist, wenn sie ausgeliefert werden. Wenn also ein SDK nicht mit dem neuesten Framework funktioniert, die Cloud-Tools nicht darauf aufbauen können oder eine Peripheriekomponente nach mehreren Jahren nicht aktualisiert wurde, ist das frustrierend.

Das ist schön Seltsam, dass ich (wenn Sie meinen Blog nicht mitzählen, und das würde ich nicht) nichts für .NET Core in der Produktion geschrieben habe. Ich war damals so ein moderner Typ. Ich denke, das liegt zum Teil nur daran, dass ich meine Prioritäten geändert habe. Bei meiner Arbeit besteht das darin, Dinge zu versenden, die heute funktionieren, und bei meinen Hobbys ist es völlig in Ordnung, mit dem Status Quo umzugehen. Aber ich möchte das Neueste verwenden, ich habe einfach nicht den Willen, das zu überwinden, was nicht aktuell ist.

Ursprünglich veröffentlicht auf jeffputz.com.

replica uhren kaufen