Theia vs Che vs VS Code

Jonas Helming EclipseSource

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | vs Che vs VS Code 1

Agenda

● VS Code vs. Eclipse Theia

● VS Codespaces vs. Eclipse Che

● Conclusion

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 2

Eclipse Theia vs. VS Code (online, project)

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 3

What is VS Code?

● An extensible Code Editor / IDE

○ Free of charge / built on open source

○ Thousands of extensions available

○ Downloadable desktop tool

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 4

What is the VS Code project?

● The open source project, which is the base of VS Code

○ Very active development and innovation

○ Driven by + contributors

○ Use by other tools such as: ■ VS Codium ■ Eclipse Theia

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 5

What is “VS Code Online”?

● Online version of VS Code hosted in VS Codespaces

○ Runs in the browser

○ Bound to Azure

○ Currently not open source

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 6

What is Eclipse Theia?

● An open source platform for building web-based tools and IDEs

○ Supports local and cloud/online deployment

○ A modular and flexible architecture

○ Project fully open source and hosted at the

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 7

Product vs. platform

● VS Code is a downloadable product ● VS Code online is a product embedded in Azure ● Eclipse Theia is a platform to build tools, examples: ○ Che Theia (the IDE of Che) ○ Gitpod (an online IDE service) ○ Yangster (tool for the Yang language) ○ etc. ● Eclipse Theia does not provide a vanilla download (yet)

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 8

Reusage

Che-Theia GitPod Yangster

VS Code VS Code Online Eclipse Theia

VS Code Project

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 9

Extensibility / Adaptability

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 10

VS Code extensions vs. Theia extensions

VS Code Eclipse Theia

VS Code plugin

API API Theia Theia Theia extension extension extension VS Code plugin

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 11

Available Extensions

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 12

VS Code marketplace vs. openVSX registry

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 13

Open Source - Ecosystem - Vendor-Neutrality

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 14

VS Code Project vs. Eclipse Theia Project

● VS Code Project: ○ MIT license, governed by Microsoft ○ Top 20 contributors => seem all to be affiliated with Microsoft ○ 1.434k LOC, 419 active contributors ● Eclipse Theia: ○ EPL license, governed by the Eclipse Foundation, supported by a working group ○ Top 20 contributors => 6 different companies ○ 160k LOC, 110 active contributors

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 15

VS Codespaces vs. Eclipse Che

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 16

Architecture of modern IDEs / tools - workspace server

Dashboard Browser-IDE Browser-IDE App

Workspace Workspace Workspace Container Management Container

Workspace Server

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 17

What is the VS Code Codespaces / Github Codespaces

● A workspace server integrating VS Code and VS Code online

○ Hosting ■ Azure ■ Github Codespaces (beta)

○ Available IDEs: ■ VS Code Online ■ VS Code ■

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 18

What is Eclipse Che?

● A workspace server integrating Theia as a default

○ Hosting: Any Kubernetes cluster (e.g. AWS, OpenShift, GCE or Azure)

○ Available IDEs: ■ Default: Che Theia ■ VS Codium, Jupyter, “classic Eclipse”, etc. ■ Your custom IDE!

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 19

Eclipse Che vs. VS Codespaces

● Configure VMs and workspaces ○ Basic options and install.sh in VS Codespaces ○ Stack management in Che ○ Available IDEs ■ VS Code Online or Desktop for Codespaces ■ Che-Theia, VS Codium, Jupyter or custom IDE in Che ● Sharing workspaces ○ One-Click URL in Eclipse Che ○ Live sharing supported by VS Codespaces ● Eclipse Che supports white-labeling and a headless API! ● Eclipse Che is open source!

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 20

Companies contributing to Eclipse Che

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 21

Honorable Mentions (Commercial)

● CodeReady Workspaces ○ Professionally supported version of Eclipse Che (by RedHat) ○ Identical to Eclipse Che ○ Integrated in openShift ● GitPod: ○ Workspace hosting integrated with GitHub, GitLab and Bitbucket ○ Provides a Theia-based IDE ○ Slim and fast ○ Recently open sourced ○ Currently the easiest way to try Eclipse Theia! ● VSCodium: Open build for VS Code ● Github Codespaces: ?

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 22

Quick conclusion - as a user

● VS Code ○ If you want a downloadable application ● VS Code Online: ○ If you are using Azure ● Eclipse Theia ○ If you prefer open tools ○ If you use Che or GitPod or any Theia-based tool ● VS Codespaces ○ If you want VS Code Online ○ If you use Azure and are fine with the feature set and lock-in ● Eclipse Che ○ If you want to self-host your workspace hosting with flexibility

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 23

Quick conclusion - as an adopter

● VS Code ○ If you want VS Code plus a little extension ● Eclipse Theia ○ If you want to build a custom, white labeled product ○ If you want to build something not fully code centric ○ If you care about vendor-neutrality and lock-in ● VS Codespaces and VS Code Online ○ If you run Azure ● Eclipse Che ○ If you want to extend, adapt, integrate or even white label your workspace hosting ○ If you care about vendor-neutrality and lock-in

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 24

Quick conclusion - as an extension developer

● Benefit from using VS Code plugin model! ○ Can be used in VS Code and Eclipse Theia-based tools ○ Can be published to: ■ VS Code marketplace ■ openVSX registry

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 25

this Evaluate the Sessions

SignWITH in and vote at Eclipsecon.org: -1 0 +1

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 26

Questions?

Get in contact with us for support around Eclipse Theia and Che! Here at our booth or [email protected] Join our DIY session tomorrow 7pm (CET) https://www.eclipsecon.org/2020/bofs/building-web-based-tool s-eclipse

© 2020 EclipseSource | https://eclipsesource.com | Dr. Jonas Helming | Eclipse Theia vs Che vs VS Code 27