Interview mit Sven Efftinge

Eclipse Theia vs. Visual Studio Code: „Theia löst drei Dinge, die VS Code für unseren Zweck unbrauchbar macht“
Keine Kommentare

Eclipse Theia ist ein quelloffener Code-Editor, der sowohl als Desktopanwendung als auch im Browser läuft. Die neu erschienene Version Theia 1.0 wird in der Ankündigung als „Open-Source-Alternative zu VS Code“ bezeichnet. Wir haben uns mit Theia-Erfinder Sven Efftinge über Unterschiede und Gemeinsamkeiten zwischen Theia und VS Code unterhalten.

JAXenter: Eclipse Theia ist gerade in Version 1.0 erschienen. Wir haben Eclipse Theia hier auf JAXenter ja schon des Öfteren thematisiert, deshalb gehen wir die Vorstellung des Projektes mal etwas anders an. In der offiziellen Ankündigung fällt auf, dass Theia explizit als „echte Open-Source-Alternative zu VS Code“ bezeichnet wird. Wenn wir mal bei Funktionsumfang und Funktionsweise bleiben: Wo liegen die Gemeinsamkeiten zwischen Eclipse Theia und VS Code?

Mit Theia haben wir drei Dinge gelöst, die VS Code für unseren Anwendungszweck unbrauchbar macht.

Sven Efftinge: VS Code ist ein extrem gutes Tool. Es bietet meiner Meinung nach genau die richtige Balance zwischen einem Code-Editor und einer IDE. Darüber hinaus erlaubt der starke Fokus auf Command Line Interfaces via Terminal und die Entwicklung des Language Server Protocols endlich, viel Arbeit in die Communities zu verlagern. Das ist eine extrem wichtige Design-Entscheidung, weil so nicht für jedes Framework und jede Programmiersprache IDE-spezifische Plug-ins gebaut werden müssen.

Mit Theia haben wir all das übernommen und drei Dinge gelöst, die VS Code für unseren Anwendungszweck unbrauchbar macht:

1) Eine Architektur, die es erlaubt, die IDE sowohl als Desktop- als auch als Browseranwendung laufen zu lassen. Viele wissen wahrscheinlich, dass Microsoft mittlerweile mit Visual Studio Online selbst auch eine Version entwickelt hat, die im Browser läuft. Als wir damals mit dem Theia-Projekt begonnen haben, war das aber für das VS-Code-Team kein Thema, so dass es da nicht zu einer Zusammenarbeit kam. Leider ist VSO auch nicht Open Source, das heißt zum Beispiel, dass es nicht für uns in Gitpod verwendbar ist.

2) Eine Architektur, die es erlaubt, die IDE bis ins Detail zu verändern, ohne das Projekt forken oder patchen zu müssen. VS Code ist als Produkt für Entwickler entworfen. Eine Nutzung als Basis für andere Organisationen bzw. Produkte ist nicht Teil der Idee. Deshalb stellt das VS-Code-Team auch keine Erweiterungs- und Brandingmöglichkeiten außerhalb des Extension-Mechanismus bereit. Wir wollten aber eine Basis schaffen, die es vielen Unternehmen ermöglicht, im echten Sinne von Open Source auf die gemeinsam entwickelte Plattform aufzubauen. Wir wollten eine Plattform entwickeln, die – ähnlich wie die alte Eclipse-Plattform – für viele verschiedene Anwendungsfälle nutzbar ist.

3) Ein Projekt, das unter einer Vendor-neutralen Open-Source-Organisation entwickelt wird. Wenn du ein Produkt entwickelst, welches stark auf Open-Source-Code aufbaut, möchtest du so wenig wie möglich vom guten Willen einzelner Unternehmen, in diesem Fall Microsoft, abhängig sein. Deshalb entwickeln wir Theia unter dem Dach der Eclipse Foundation.

Diese drei Punkte sind der elementare Unterschied zu VS Code und insofern steht Theia gar nicht im Wettbewerb zu VS Code, weil Microsoft kein Interesse daran hat, als Basis für Produkte anderer Hersteller zu dienen. Zumindest war das so, als wir mit dem damaligen Produktmanager über eine mögliche Kooperation gesprochen hatten. Das ist natürlich auch absolut in Ordnung so.

JAXenter: Und wo liegen die Unterschiede zwischen Theia und VS Code bzgl. Funktionsumfang und Funktionsweise?

Sven Efftinge: Wir haben viel von den UX VS Codes übernommen und machen Dinge nur anders, wenn wir gute Gründe dafür haben. Beispielsweise ist die Workbench Shell wesentlich flexibler und generischer als in VS Code.

International JavaScript Conference

Effective Microservices Architecture In Node.js

by Tamar Stern (Palto Alto Networks)

React Components And How To Style Them

by Jemima Abu (Telesoftas)

Angular Camp 2020

Als Online- oder Präsenztraining!

Das 360°-Intensivtraining mit Angular-Koryphäe Manfred Steyer
Präsentiert von Entwickler Akademie

Theia – die Open-Source-Alternative

JAXenter: Nun deutet die Wortwahl „Echte Open-Source-Alternative“ darauf hin, dass VS Code kein „echtes“ Open-Source-Projekt sei. Woran machst du das fest?

Sven Efftinge: Damit ist die fehlende Vendor-Neutralität gemeint. VS Code ist primär ein Produkt von Microsoft, welches zwar zum Großteil als Open Source entwickelt wird, aber zu 100% von Microsoft kontrolliert und weiterentwickelt wird. Neben der fehlenden Erweiterbarkeit (s.o.) bedeutet das eben, dass ich als Unternehmen darauf schlecht neue Innovationen aufbauen kann, weil ich dann auf den guten Willen von Microsoft angewiesen bin.

Kubernetes, zum Beispiel, wurde von Google in einer Open Source Foundation (CNCF) gegründet, damit die ganze Welt daran zusammen arbeiten kann und die Technologie wirklich „der Allgemeinheit“ gehört. Kubernetes wäre sicher nicht wo es heute ist, wenn es weiterhin zu 100% von Google gesteuert worden wäre.

JAXenter: Wer arbeitet denn momentan am Theia-Projekt? Wer unterstützt es?

Sven Efftinge: Neben TypeFox arbeiten auch Ericsson und Red Hat mit jeweils mehreren Vollzeitentwicklern daran. Darüber hinaus bekommen wir laufend qualitativ hochwertige Pull Requests von vielen verschiedenen Organisationen und Einzelpersonen. Das Theia-Projekt gehört zu den vielfältigsten und aktivsten Projekten unter dem Dach der Eclipse Foundation.

JAXenter: Und wie lauten die Pläne? Welche neuen Features sollen kommen? Wie wird die Governance des Projektes organisiert?

Sven Efftinge: Wir konzentrieren uns weiter darauf, eine gute Qualität als Plattform zu bieten, um Firmen zu erlauben. ihre eigenen Tools basierend auf Theia zu entwickeln. Hier ist vor allem Stabilität und Performance wichtig. Weiterhin werden wir natürlich regelmäßig die neuen Features im Extension-Protokolle von VS Code, welches Theia nativ unterstützt, implementieren. Theia unterstützt zwar schon heute auch die Arbeit mit Tablets (vor allem iPads), aber wir wollen das noch wesentlich verbessern. Andere Themen, die wir gerade in der Community diskutieren, sind u.a. ein Multi-Fenster-Mode, der es mir erlaubt, Theia auf mehrere Bildschirme aufzuteilen.

Der Entscheidungsprozess im Theia-Projekt ist immer demokratisch

Viele haben jetzt zum Theia 1.0 Release nach Downloads für die Desktopversion gefragt. Das haben wir bisher nicht gemacht, werden wir aber in der zweiten Jahreshälfte nachholen.

Das Theia-Projekt wird von Marc Dumais (Ericsson) und mir geleitet. Der Entscheidungsprozess ist aber immer demokratisch. Eine Schlüsselperson im Theia-Projekt ist mein langjähriger Freund und Kollege Anton Kosyakov, der große Teile entwickelt und designt hat, als hilfsbereiter Kernentwickler aktiv ist und täglich viel Zeit damit verbringt, die Community mit Rat, Tat und Codereviews zu unterstützen.

JAXenter: Vielen Dank für dieses Interview!

Sven Efftinge liebt es, sich hübsche Plätze in der Produktentwicklung zu suchen. Im Fokus steht bei seinem Engagement stets der Pragmatismus und der Vorteil des Endnutzers. Er hat schon oft gezeigt, dass er eine kreative Quelle für viele erfolgreiche Technologien ist. Außerdem ist er Mitgründer von TypeFox, Co-Lead von Eclipse Theia und Product Manager von Gitpod. In seiner Freizeit verbringt er gerne viel Zeit mit seinen Kindern oder mit einem Kite auf der Ostsee.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -