Standard [35 minutes]
The popularity of the Kubernetes platform is continuously increasing... for good reasons! It's a wonderful modular platform made out of fundamentals orthogonal bricks used to defined even more useful bricks. It enables a DevOps friendly envrionnment where microservices and continously delivery feel at home.
If you have not yet dig into what is usually defined as a Cluster Operating System, it's time to catch-up! This thorough introduction to Kubernetes will cover:
As part of the Eclipse Common Build Infrastructure (CBI) initiative the Eclipse Foundation provides a build environment for projects to build, test, deploy and deliver Eclipse related software. Come and learn how it works and what's cooking!
It started with a single Hudson build server (Shared instance) for multiple projects. In 2013 the “Hudson instance per project” (HIPP) concept was introduced that allowed every Eclipse project to have a dedicated CI server. Since Hudson was not longer maintained, about 200 CI instances were converted to Jenkins in early 2018.
Many business applications are data-driven and require viewing and entering data in forms… countless forms. Unfortunately, writing HTML5-based web forms manually is still error-prone and tedious, even with the help of modern web application frameworks like Angular. A form may seem simple at first, but you usually need to add live validation and error markers, rule-based visibility, input restrictions, and the like. As you can imagine, it quickly gets out of hand. Finally, when you have many of these forms the code becomes unmaintainable.
Slowly but steadily, selected developer tools are being migrated to web technology using emerging technologies such as Atom, Eclipse Che, Monaco, Theia, or LSP. Those technologies are mainly dealing with textual editing (source code, DSLs), but what about non-textual modeling? Many existing tools are essentially modeling tools. They allow you to create models that can be manipulated in tree- and form-based editors as well as in graphical editors.
Eclipse Theia is a modular framework for building cloud and desktop IDEs. It is implemented in TypeScript and leverages state of the art technology as the Monaco editor and the language server protocol (LSP) which also powering VS Code. Theia has been designed in open-source by TypeFox and Ericsson through 2017.
The LSP is a protocol between editors or IDEs and language servers providing language features like diagnostics, auto-completion, find references etc. Over last year it has got wide adoption among different tools and languages including Theia and Xtext.
The Target Communication Framework (TCF) is an already established mechanism for tasks like target interaction, file operations and inferior control. Using this framework, the TCF debugger was built, providing an easy-to-retarget debugger framework powered by a target-agnostic debug engine. The dominant use-case of the upstream debugger agent has been the debugging of software threads with the help of the OS infrastructure (sofware-only debugging).
Eclipse plugin on diet: Road to thin client application
After releasing the first version of our code improvement Eclipse plugin, we got feedback of people wanting to put our product into development pipelines. Multiple prototyping rounds lead us to develop a Maven plugin, which embedded the business logic part of our plugin. This way code improvements could be executed and parametrized the Maven plugin way. Our next step is cloud integration and running our plugin as a microservice.
For the past several years, we have been discussing about the next generation IDE for Eclipse, about how tools we have in Eclipse could be running on both desktop and cloud. We are seing new standards such as "Language Server Protocol" and "Debug Adapter Protocol" and new platforms to build tools for the cloud. During this session, we'll present how Eclipse Che and Theia can be used to move tools to the cloud and leverage the new technology standards.
The journey of building developer tooling has never been as exciting as it is right now. Eclipse Che is getting more and more mature, bringing collaboration and teams capabilities for developer workspaces. Theia, integrated in Eclipse Che, is providing the foundations for a modern and extensible web IDE. With the rise of cloud development platforms, we see the industry defining new server protocols, such as "Language Server Protocol" and "Debug Server Protocol" which allow to bring tooling on a wide range of platforms, such as Eclipse, Eclipse Che and VS Code.