1 Punkte von GN⁺ 2024-07-05 | 1 Kommentare | Auf WhatsApp teilen

Die Entstehung von PowerShell mit Jeffrey Snover

  • Navigation in einem riesigen Konzern

    • Jeffrey Snover ist der Architekt hinter Microsofts PowerShell.
    • PowerShell ist ein Werkzeug, das die Verwaltung von Windows-Systemen grundlegend verändert hat.
    • Anfangs stieß es auf Skepsis, erreichte aber durch Snovers beharrliche Arbeit schließlich Erfolg.
  • Das Problem

    • Microsoft verstand den Servermarkt nicht.
    • Das an PCs gewöhnte Management hatte zu wenig Erfahrung mit Unternehmensumgebungen.
    • Snover wurde eingestellt, um dieses Problem zu lösen.
  • Jeffreys Überzeugungsarbeit

    • Snover trat Microsofts Server-Team bei und arbeitete daran, Windows konkurrenzfähig zu UNIX zu machen.
    • Das Ziel war, dieselben Funktionen zu geringeren Kosten bereitzustellen.
  • UNIX schlagen

    • UNIX war ein dateizentriertes Betriebssystem, Windows dagegen ein API-zentriertes Betriebssystem.
    • UNIX-Werkzeuge funktionierten unter Windows nicht richtig.
    • Snover entschied sich, Verwaltungsbefehle mit WMI (Windows Management Instrumentation) zu entwickeln.
  • Kulturelle Herausforderungen

    • Die Teams bei Microsoft bevorzugten GUIs und standen Snovers Idee einer Kommandozeilenoberfläche skeptisch gegenüber.
    • Snover argumentierte, dass in Enterprise-Umgebungen eine Kommandozeilenoberfläche statt einer GUI nötig sei.
  • Unternehmensszenarien

    • Die Microsoft-Teams bevorzugten einen modernen Ansatz, für jedes Problem eine Benutzeroberfläche bereitzustellen.
    • Snover plädierte für einen Werkzeugkasten-Ansatz.
  • Windows ist nicht UNIX

    • Windows war kein dateizentriertes, sondern ein API-zentriertes Betriebssystem.
    • Es wurde entschieden, Verwaltungsbefehle mit WMI zu entwickeln.
  • Das Coding-Fenster

    • Snover erfuhr, dass er 10 Wochen Zeit zum Coden hatte.
    • Das Modell bestand darin, 10 Wochen lang Code zu schreiben und ihn dann über Jahre hinweg lauffähig zu machen.
  • Der Hebel von .NET

    • Bill Gates trieb .NET mit Nachdruck voran.
    • Snover kam zu dem Schluss, dass sich mit .NET eine größere Abdeckung erreichen ließe.
  • Reorganisation

    • Snovers Organisation geriet durch eine Reorganisation ins Chaos.
    • Snover entschied, seinen Plan trotzdem weiterzuverfolgen.
  • Das Shell-Team

    • Eine andere Gruppe entwickelte bereits eine Shell.
    • Snover schlug ihnen einen besseren Ansatz vor, aber sie verstanden ihn nicht.
    • Schließlich entwickelte Snover seinen eigenen Prototyp.

Meinung von GN⁺

  • Die Bedeutung von PowerShell

    • PowerShell veränderte das Paradigma der Windows-Systemverwaltung.
    • Über eine Kommandozeilenoberfläche ermöglicht es die Verwaltung großer Serverumgebungen.
  • Technische Führung

    • Snovers Beharrlichkeit und klare Vision waren der Schlüssel zum Erfolg.
    • Technische Führung bedeutet, trotz starken Widerstands wichtige Ergebnisse zu erzielen.
  • Produkte mit ähnlichen Funktionen

    • Es bietet ähnliche Funktionen wie Bash unter Linux.
    • PowerShell übernimmt in der Windows-Welt eine Rolle ähnlich der von Bash.
  • Worauf man bei der Einführung neuer Technologien achten sollte

    • Bei der Einführung neuer Technologien sollte die Kompatibilität mit bestehenden Systemen berücksichtigt werden.
    • PowerShell bot neue Funktionen und blieb dabei mit bestehenden Windows-APIs kompatibel.
  • Vor- und Nachteile

    • Vorteile: höhere Effizienz bei der Verwaltung großer Serverumgebungen, Automatisierungsmöglichkeiten
    • Nachteile: steile anfängliche Lernkurve, Widerstand von bestehenden GUI-Nutzern

1 Kommentare

 
GN⁺ 2024-07-05
Hacker-News-Kommentare
  • Der PowerShell-Erfinder Jeffrey Snover stieß innerhalb von Microsoft auf starken Widerstand und wurde schließlich degradiert

    • Jeffrey wurde ursprünglich eingestellt, um Microsoft dabei zu helfen, im Rechenzentrumsgeschäft konkurrenzfähig zu sein
    • PowerShell existiert, weil Windows nicht dateibasiert ist
    • Für die Serververwaltung waren verschiedene API-Aufrufe und strukturierte Daten nötig
  • Beim Schreiben von PowerShell verstand man nicht, warum bei Arrays der Länge 1 das Array entfernt wird und nur der enthaltene Typ übrig bleibt

    • Das führte zu vielen Bugs
  • Als Bash-Entwickler war man bei der Veröffentlichung von PowerShell sehr gespannt, nutzt aber immer noch Bash

    • Man würde gern die Erfahrungen anderer Entwickler kennen
    • Man fragt sich, ob PowerShell wirklich die effizientere und modernere Shell geworden ist
  • Man ist damit betraut, eine 20 Jahre alte Codebasis aus SQL-Server-Stored-Procedures zu verwalten

    • Es gab keine Versionsverwaltung, und auch Performance-Tuning wurde nicht richtig gemacht
    • PowerShell Core bot die beste Interoperabilität mit Windows
    • Das Schreiben von Code war unbequem, aber es lief schnell, und die Tools für die Interaktion mit Benutzern waren gut
    • Wenn man gründlich sucht, kann man erreichen, was man will
  • Abgesehen von der Interaktion mit Windows-Subsystemen ist unklar, warum man nicht einfach Python verwenden sollte

    • PowerShell ist zu wortreich und langsam
    • Man fragt sich, warum Microsoft nicht auf Python oder Node gesetzt hat
  • Es ist seltsam, dass Microsoft den Wert programmatischer Methoden zur Konfiguration von Windows und wichtigen Enterprise-Anwendungen nicht erkannt hat

    • Als Alternative Remote Desktop vorzuschlagen und alles per Mausklick zu erledigen, ist absurd
  • PowerShell ist ein Produkt von Microsofts proprietärem Selbstbewusstsein

    • Es gab keinerlei syntaktische Anschlussfähigkeit zu anderen Sprachen
    • Die extrem wortreiche Syntax mag für Präsentationen gut sein, war in der Praxis aber unhandlich
    • Es gab Probleme, wenn Dateinamen eckige Klammern enthielten
  • Für die Windows-Verwaltung war PowerShell angenehm zu benutzen

    • Linux ist großartig, aber die Nutzung von Bash war schrecklich
    • Bash-Skripte werden wohl trotzdem noch lange weit verbreitet bleiben
  • Auch als jemand, der kein Windows-Nutzer war, fand man PowerShell gut

  • PowerShell war in vielerlei Hinsicht großartig, konnte aber kein breiteres Publikum anziehen

    • Die PowerShell-Cmdlets waren selbsterklärend und lieferten viele Informationen
    • Es gab nützliche Funktionen wie einen Simulationsmodus
    • Außerhalb von Windows wurde es jedoch nicht populär, und Microsoft vernachlässigt PowerShell offenbar, um Linux-Entwickler anzuziehen