Eclipse Che 7, an open source in-the-browser development environment, allows you to define custom workspaces for your software development. Think of a workspace as you would think of a development PC: You have an operating system, programming language support, and all the tools necessary to write code. In this article, I'll introduce the .NET developer to this new world and highlight ways you can use Eclipse Che to your advantage.
A brief history
When Microsoft made .NET available as open source in 2014, it opened the door to untold possibilities for .NET developers. The old model of waiting for the next "thing" was replaced by the agile, fast-moving and unbounded world of open source. Being able to use tools that seemed to be directed toward other development languages and environments now became possible. Where a tool wouldn't work with .NET, many times a .NET version was developed; see The Polly Project as an example.
Years ago, when the Eclipse IDE was created, .NET was never in the mind of the creators. Likewise, .NET developers paid no mind to Eclipse; they had Visual Studio. Take a look at the Eclipse web site even now, and you won't find .NET mentioned. But when the open source lightning struck the .NET tree, the world changed.
New world order
The announcement of Visual Studio Code (VS Code) took the development community by surprise, and it quickly became the editor of choice. Free, extensible, with a large support community, VS Code is now the go-to IDE for many developers, regardless of programming language. Times have changed.
Eclipse Che is an editor that runs in a browser. Fair enough. But here's where it gets really interesting and valuable to .NET developers: Eclipse Che can host VS Code plugins. Put another way, you can have a virtual development environment that feels just like VS Code, yet runs in a browser. That opens the door to a world of experimentation that should excite any C# developer.
For example...
With Che 7, you can create multiple workspaces, each unique. You might have one using .NET Core 2.2, while another runs .NET Core 3.0. You may have a command to build and run your application in the IDE, while another command in another workspace will deploy your application to a Kubernetes cluster. It's like having multiple notebook PCs for development, with each configured for a very specific development scenario.
All in the cloud. All usable simply by opening a page in a browser. From anywhere. Instead of carrying four PCs around, you can use one simple device. Use a PC, use a Chromebook, use a tablet ... any place you can use a browser. The code never leaves the host, so it's secure.
Now, onboarding a new developer is as simple as "Here's the URL." Updating a development machine becomes "altering a text file." Che 7 is here. And, it supports .NET Core. Coming up, I'll detail how I took the existing .NET Core 2.2 example and created a custom workspace that uses .NET Core 3.0.
My, how the times have changed.
Last updated: November 8, 2023