Eclipse Oxygen Webinars: 6 talks with a total of almost 5 hours

Like last year, also this year the Eclipse simultaneous release was accompanied by a series of talks in which developers present their new developments (thanks Kat Hirsch for hosting it). Here is my summary of these six so-called webinars about Eclipse Oxygen; the first three are for IDE users, the other three about Eclipse frameworks:

Lakshmi P Shanmugam:
What’s New in the Eclipse Platform? (57:07)

If you have already seen my 10-minute Oxygen video, you can skip the first half on Eclipse Platform and Java development tools (JDT) improvements. If you watch the talk from the beginning, you can skip the part from 23:11 and 33:18, where the screen sharing is interrupted and afterwards some improvements are shown again. In the second half, Trace Points, which are missing in my video, are explained. Also Plug-in Development Environment (PDE) and the API Tooling improvements are demonstrated. I recommend Java developers to watch at least this and the following video. In addition, you might also watch the three-month old video of the Devoxx talk Eclipse 4.7 Platform News by Lars Vogel (23:38), which gives a deeper insight into some of the Platform, JDT and PDE improvements.

Marc R. Hoffmann:
EclEmma – Code Coverage in Practice (48:57)

AsEclEmma became an Eclipse project, the Java IDE packages are shipped with built-in Java code coverage analysis now. This webinar gives a general introduction to EclEmma, but also shows how to use the Java Code Coverage feature to find unused code or JAR dependencies.
A nice trick is to find the code of a particular function of an application by differential code coverage: launch the application in coverage mode, reset already collected coverage data, execute the function and dump the coverage data. The code executed by the function is shown as covered. At the end of the webinar, some tips are given how common pitfalls can be avoided.

Kaloyan Raev:
PHP Development Tools (PDT) 5.0 (46:26)

This webinar is much more detailed and comprehensive than the Eclipse Newsletter article What’s new in Eclipse PHP Development Tools (PDT) 5.0. In contrast to the previous videos, the improvements are not shown in action, but inmany screenshots. PDT 5.0 supports PHP 7.1 and integrates the Composer (a PHP dependency manager: similar what npm is for node.js or Maven is for Java) as well as PHPUnit. New in PDT are also functions to organize use statements (similar to Organize Imports in JDT). It is nice to know that the activity and diversity with regard to the involved developers and companies is growing. Maybe in a future version code completion proposals will come from a PHP language server instead of as before from PDT. An experimental integration of a PHP language server implemented in PHP already exists. If you want to know more about general Eclipse integration of language servers, see the next webinar.

Sopot Cela and Mickael Istria:
Generic Editor and Language Server Protocol (LSP) (53:55)

At the beginning the new Generic Editor is shown. The Generic Editor is extended by the new LSP4E Eclipse project to support the Language Server Protocol (LSP). The term server is somewhat misleading as the most likely use case will be that the server will be installed and run locally or where the files are (see Mickael’s comment below). The explanation of LSP is followed by the demonstration of two experimental language server integrations, aCute for C# and BlueSky for HTML, CSS, JavaScript and TypeScript files. Although LSP is only about a year old, LSP support has already been announced for 27 languages. Up to now LSP is limited to editing files: no debugging support, no refactorings apart from renaming and no possibility to show a type hierarchy and syntax highlighting is done via TextMate grammars. Like EGit and JGit for Git, the LSP support is realized via the two new Eclipse projects LSP4E and LSP4J, so that not-Eclipse-based applications can use the LSP4J framework. In the next webinar one of such applications is shown.

Sven Efftinge and Miro Spönemann:
New in Xtext: Core Framework, LSP, Tracing Code Generators (51:00)

The webinar starts with the history of Xtext, a framework and tools to build and support domain-specific languages. Since Eclipse IDE lost market share, Xtext support has been extended to IntelliJ IDEA and will be extended to code editors and other IDEs via LSP. The Xtext language server is shown in action in the Eclipse IDE as well in Theia, a cloud and desktop IDE framework implemented in TypeScript. After the demos the new Xtext feature to generate trace code is explained.

Mélanie Bats and Stéphane Bégaudeau:
Eclipse Sirius 5.0, All about UX (32:40)

The last webinar is about Sirius. Sirius is for graphical editors what Xtext is for text editors. The new features are especially – as the title suggests – user experience improvements. They are explained by slides and shown in action. For instance, the decorator mechanism has been improved, e. g. the decorator icons on boxes and on images are placed in such a way that they do not accidentally overlap anymore. There is also an Eclipse Newsletter article about these Sirius user experience improvements, but it is certainly more interesting to see Sirius in action in the webinar.

These were the six Eclipse Oxygen webinars with a total duration of almost five hours, presented by ten people from all over the world. In case this is not enough, check out my Recommended Eclipse Videos playlist. If you have any recommendation for an Eclipse video, please drop a comment.


2 Responses to “Eclipse Oxygen Webinars: 6 talks with a total of almost 5 hours”

  1. Mickael Istria Says:

    > The term server is somewhat misleading as the protocol submits file locations and not the content of files and therefore the server must be run where the files are.

    It does actually send the content of the files, on the `didOpen` and `didChange` notifications. Although, there is no built-in way to send a snapshot of the whole project at once, the specification doesn’t prevent a server from being remote (IIRC I did repeat it a couple of times during the presentation), and some language servers such as the one created by SourceGraph are already implemented as remote servers, that feed the project model and code thanks to the content of `didOpen` and `didChange`.
    Reading files locally is by far easier, but a remote server is doable.

    • howlger Says:

      Thanks for the clarification. I have rewritten the sentence:

      The term server is somewhat misleading as the most likely use case will be that the server will be installed and run locally or where the files are (see Mickael’s comment below).

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: