Die intensive Politik hinter Node.js entwirren

Die Nachricht, die letzte Woche auf dem Node Summit veröffentlicht wurde - dass Joyent und andere die Gründung einer Node.js Foundation vorschlagen -, überraschte niemanden, der die Kontroverse um die beliebteste serverseitige JavaScript-Plattform aller beobachtet hat. Es ist schon seit einiger Zeit klar, dass Node.js seinen Wurzeln entwachsen ist und zu einem wichtigen strukturellen Werkzeug für die Softwareindustrie geworden ist.

Die Hosts von Node.js bei Joyent hatten dies nicht geplant - der Code war eher ein Mitarbeiterprojekt als eine strategische Investition. Während Node.js ein wichtiger Bestandteil der Geschäftstätigkeit von Joyent ist, ist es kein Schlüsselprodukt für das Unternehmen, das sicherlich viel mehr für das Hosting ausgegeben hat, als es als Pionier der containergestützten Cloud-Bereitstellung an geschäftlichem Wert erhalten hat. Joyent verdient Anerkennung dafür, verantwortungsbewusst zu handeln und sein Engagement als Steward aufrechtzuerhalten, trotz des intensiven Interesses - und der heftigen politischen Intrigen -, an dem es sich befand.

Node hat eine Basisakzeptanz erlebt, die zu Unternehmensbereitstellungen geführt hat, wie sie viele in Open Source kennen, wo CIOs sicher sind, dass die Technologie in ihrem Unternehmen nicht verwendet wird, bis sie das Betriebspersonal tatsächlich fragen. Dies hat wiederum zu der üblichen Dichotomie zwischen den Stabilitätsbedürfnissen der Betriebsteams (nur dort ändern, wo dies erforderlich ist, vorzugsweise selten nach strengen Tests) und den Ansichten der Entwickler (die jede neue Idee jetzt oder früher ausprobieren möchten).

Wie von einem Unternehmen mit einem tiefen Engagement für einen stabilen Betrieb zu erwarten, fällt Joyent fest in das erste Lager. Der operative Fokus wird von großen Bereitstellern von Node-Anwendungen weltweit unterstützt, von denen einige die neue Node Foundation leiten.

Die weit verbreitete Akzeptanz bringt aber auch Startups hervor, die neue Bedürfnisse nutzen und ihre Lösung monetarisieren möchten. Viele dieser Startups sind an der io.js-Verzweigung von Node.js beteiligt und fordern häufige Veröffentlichungen, um ihre Innovationen und Geschäftspläne zu unterstützen. Entwickler und Unternehmer in diesem Camp haben sich darüber geärgert, dass Joyent nicht mehrere Releases veröffentlicht hat.

Ihre Kritik an Joyent war häufig und beredt, aber letztendlich hat keine Seite ein Monopol auf die Wahrheit. Joyent fühlt sich in seiner Vorsicht durch die „Abfolge unglücklicher Ereignisse“ im Zusammenhang mit den mehrfachen fehlerhaften Bemühungen, eine Veröffentlichung im letzten Jahr herauszubringen, gerechtfertigt, die zu Chaos geführt hätte, wenn sie die Benutzerbasis erreicht hätte. Schließlich ist Node.js eine Plattform, keine Bibliothek, und sie muss konservativ verwaltet werden.

All dies - die Unternehmenspolitik, die Ausbrüche von Brandmarkenentwicklern und der Rest - überzeugt mich davon, dass Node.js eine unabhängige Grundlage benötigt. Nicht, dass ich ein Fan von Open Source-Grundlagen für jedes Projekt bin - wenn Sie Ihr Projekt in eine gemeinnützige Organisation einbinden, werden Probleme selten gelöst, und die meisten Projekte sind besser dran, sich einer bestehenden Organisation anzuschließen.

Die Schaffung einer von der Regierung anerkannten gemeinnützigen Organisation war in Open Source aus zwei Gründen historisch wichtig:

  1. Als Imprimatur der „Offenheit“ durch eine ansonsten proprietäre Aktivität eines einzelnen Unternehmens, die zufällig Open-Source-Code beinhaltet
  2. Um die Geschäftspolitik von den praktischen Aspekten der Entwicklung zu trennen und einen neutralen Ort für eine echte Zusammenarbeit zwischen Kollegen zu schaffen

In dieser ersten Rolle bleiben die Probleme bestehen, auch wenn sie durch das Furnier einer gemeinnützigen Organisation maskiert werden. Die zweite Rolle erfordert eine solide Basis der Zusammenarbeit, bevor sie eingerichtet wird. Stiftungen lösen keine Probleme, aber sie machen Lösungen dauerhaft, sobald sie eingerichtet sind. Lösen Sie zuerst Probleme und machen Sie danach eine Grundlage.

Node.js benötigt eine Grundlage, um dies zu überwachen. Die Community ist wahrscheinlich bereits groß genug, um die Idee, einer bestehenden Community wie Eclipse oder Apache beizutreten, unangemessen zu machen. Aber ist die vorgeschlagene Stiftung die richtige Antwort? Bill Scott von PayPal sagte auf dem Node Summit, dass PayPal die Stiftung unterstützt, aber die Community beobachtet. Das scheint mir die richtige Balance zu sein.

Was bisher vorgeschlagen wird, ist ein Pay-to-Play-Unternehmensverband nach dem Vorbild der Linux Foundation mit hohen, nicht umsatzgebundenen Gebühren, um die von großen Unternehmensteilnehmern wie Microsoft und IBM erstellten Startups und Regeln abzuschrecken. Dies ist sicherlich nicht die richtige Antwort, um die Partisanen von io.j wieder in die Knie zu zwingen. Die erbitterte Politik rund um Node.js braucht sicherlich Sandboxing, aber auch der Wunsch der Entwickler, die Agenda voranzutreiben. Eine funktionierende Node Foundation benötigt sowohl die betriebsrelevante Release-Trittfrequenz, die Joyent anstrebt, als auch den dynamischen F & E-Raum, den die Unternehmer von io.j wünschen.

Ein Modell wie das von Eclipse könnte hier besser funktionieren. Nach Jahren der Entwicklung verfügt Eclipse nun über eine Reihe ansprechender Governance-Funktionen für diese Situation, insbesondere Pay-for-Play-Gebühren, die auch das Engagement der Entwickler für das Projekt und strenge Grenzen zwischen treuhänderischer und technischer Governance erfordern. Eclipse erfordert auch die Spende der Marke an die Stiftung, ein Schritt, der von Projekten auf eigene Gefahr vernachlässigt wird, um eine zukünftige Verwertung durch den Markeninhaber zu vermeiden.

Natürlich kann dies alles umsonst sein; Ein entscheidender Kontrollpunkt für Node.js, dessen Paketmanager NPM, wird von einem gleichnamigen Startup-Unternehmen kontrolliert. Spaltungspolitik könnte sich wiederholen, wenn dies nicht ebenfalls behandelt wird. Es scheint, dass die Node.js-Community, nicht nur Joyent, ihre Arbeit dafür ausgeschnitten hat.