Proposed Sessions

Please let the program committee know what you think!

Click in the "Your Vote" field for each submission. (You must be logged in to vote.)


Keyword sentence with spaces needs to be in quotes. For example: "keyword 1","keyword 2"

Easy container oriented development with Docker and OpenShift tooling

Container oriented developement is a new way to adopt for today's developers. Although base tooling allow easy and simple deployment to be adopted, developers needs more accurate tools to deal with their day to day operations.

Based on the Eclipse Docker and OpenShift tooling, we will discover how developer tasks can be easily managed from the Eclipse IDE:

Experience level: 
Intermediate

EcoreTools-Next: Executable DSL made (more) accessible

Various Eclipse Modeling technologies are trying to empower domain experts in the creation of specific tools.  Using EcoreTools and Sirius a domain expert can define languages, graphical modelers and editors without writing a single line of Java code or launching a new Eclipse runtime. However, when come the time to add behaviors to the language structure (e.g., to implement interpreters, compilers, static analysis, refactoring, or generators), the domain expert has to face all the complexity of Eclipse Plugin development, OSGi, Java and much more.

Experience level: 
Intermediate

EASE-ily tune your Eclipse!

Have you ever dreamt of customizing your Eclipse workbench using your favorite scripting language? Do you want to add new functions to your favorite IDE without having to learn how to develop an Eclipse plugin? Do you want to provide the ultimate flexibility to your users to let them prototype their own Eclipse plugins?

Experience level: 
Beginner

Data Formats in science

The scientific community of neutrons and synchrotron facilities is looking for more than 20 years for
a common data format to be able to exchange experimental results and applications to analyse them.
The HDF5 physical container quickly raised a large consensus but the big issue remains on how to
standardize the organisation of data within the container. The CommonDataModelAccess (CDMA)
framework introduces a new level of indirection for data access which offers a solution allowing

Experience level: 
Beginner

EMF Ecore for the web - JSON Schema

EMF Ecore is THE declarative data definition standard on the Eclipse technology stack. Based on Ecore a rich ecosystem of EMF components was able to grow including components for comparing, versioning, visualizing, storing data.
This is all great, but what to do when building native web applications based on HTML5, CSS and JavaScript? JSON Schema is a web standard to declaratively describe JSON data in JavaScript and therefore a natural replacement for Ecore on a native web stack.

Experience level: 
Beginner

It looks like Java, it tastes likes Java... but it is C++ and it is damn fast!

What if I tell you that you can write Java code (or take existing Java code), quickly make it compile with any C++ compiler and produce a native executable with no run-time license and running significantly faster than what you would get let's say with a JVM or even a Java compiler?

You will say I am crazy (and you are probably right)! But this is the promise of the Javolution C++ Open-Source library.

Experience level: 
Intermediate

CSS is Awesome !

No, the CSS is not just coloring!

The power of CSS is often underestimated, this session of Live-Coding will be an opportunity to show a lot of useful tricks usefull for daily web developers.

Today we enter the post-IE era and we can use much more serenely the power that the CSS offers us; Why skip it!

In 'no-javascript' mode we going to discover solutions to make: custom checkbox, collapsible panels, popovers, modals, tabs, ...

Experience level: 
Beginner

Let's Treat the Eclipse IDE More Like a Product

Every year, the Eclipse Simultaneous Release brings together the hard work of dozens of open source projects into a single coordinated release. But you probably already know that. You probably already live that. While most Eclipse committers don't tend to think of the simultaneous release as a product, most of our users do. For millions of software developers, the the installer and many flavours of Eclipse IDE are products. While it's important that we carefully manage expectations, it's also important that we understand and respect the expectations of our massive user community.

Experience level: 
Intermediate

Eclipse Committer Orientation

Are you a new committer or project lead for an Eclipse, LocationTech, or PolarSys project? Are you thinking about proposing a new open source project? In this tutorial, Eclipse Foundation staff members will walk you through the information that you need to know to be an effective open source project committer. The discussion includes an overview of the Eclipse Development Process, the Intellectual Property Due Diligence Process, and the Tools and IT Infrastructure made available to open projects by the Eclipse Foundation.

Experience level: 
Beginner

Jenkins @ Scale

If you have a Jenkins master with a handful of agents, or no agents at all, and you would like to go to the next level, read more.

In this session, we will present you the new User Experience of Jenkins: Blue Ocean, and will show how to easily create your Declarative Pipeline using the new Visual Editor. From there, we will then demonstrate how to set up a Job in a few seconds to automatically builds all your branches, your Pull-Requests and post back build status.

Experience level: 
Intermediate

SW360 - The Component Management Hub

SW360 lets organizations manage third-party and own software components throughout the entire life cycle. Using SW360 as a one-stop shop for component information, organizations can track the components used in a project or product to:

•assess security vulnerabilities;
•reliably maintain license information;
•enforce software-related policies; generate customized reports;
•manage BOMs of products/solutions/projects;
•are able to automatically generate project or product required license compliance artifacts (e.g. Readme file / disclosure documents).

Experience level: 
Beginner

How to develop a Jenkins Plugin

I will start presenting the basics of Jenkins core architecture, its extension model, and how plugins interact with it.

Then we will create a new plugin, and I will walk you through how to add simple features to it: get callbacks on different events: completed build, register a Pipeline DSL custom step, run tasks in background...

We will see the specific tooling that has been developed for Jenkins development itself, how to write tests, how to easily start a Jenkins instance with your plugin in it, how to to debug it.

Experience level: 
Intermediate

Doc2M Update your model from your document in a breeze !

The Model-Driven Design approach is centered on the use of a model repository and a modelling tool. A drawback of the approach is that the evolution of derived artefacts (such as documents, code tests) requires to go back to the model. This process involves tracing the source element back in the model editor before triggering the update of the artefact. This can reveal quite inefficient and even causing user rejection.

Experience level: 
Intermediate

The Jenkins Project

You probably heard about Jenkins. But did you know the Jenkins Project? There's a whole Open Source community behind this. Hundreds of people, hundreds of plugins, hundreds of extension points, sounds similar doesn't it? :-)

In this talk, I will explain how the Jenkins Project operates. How it is governed, how it handles committership, maintenance, infrastructure and many other aspects to keep it running.

Experience level: 
Beginner

Squaring the Capella circle: Open Source, Agile, Traditional

For many good reasons, Thales made the choice in 2013 to Open Source its field-proven, largely deployed, but proprietary modeling workbench Capella -- embarking all its enabling technologies such as Kitalpha, EGF, EMF Diff/Merge and Sirius in the process. The journey since that strategic decision has been a very challenging one, with no less than two tremendous transformations implemented simultaneously.

Experience level: 
Beginner

EMF + Xtend = BOEM - A library to build good-looking compiling EMF models

Working on evolving EMF Metamodels?
Testing your business rules?
You surely need easy-to-evolve instances of your metamodel!

In classic approaches, you either had the choice of creating static model instances, which are difficult to maintain, or to use the EMF API (hopefully with some custom helpers) to create compiling models, which are hardly understandable and a real reference nightmare.

Tons of outdated resources or boilerplate code to fix, on a simple metamodel modification, don’t let your tests bring you down.

BOEM will make your day.

Experience level: 
Beginner

B612 Polarsys font

Different internal studies performed on previous Airbus aircraft concluded that display enhancement could be done in terms of legibility and reading comfort. Also, due to the use of several different fonts on the different interfaces, the cockpit homogeneity could be improved.
In the frame of an R&T program, Airbus Human Factors conducted a study for the development of a font that would meet the two above-mentioned criteria.
Some preliminary studies were performed:

Experience level: 
Beginner

Driving the Eclipse PolarSys Rover with UML-RT and Papyrus-RT

This demo session showcases our use of UML for Real-Time (UML-RT) and Papyrus-RT in order to drive the Eclipse PolarSys Rover. UML-RT is a profile of UML specifically designed for real-time embedded (RTE) systems. It has a long, successful track record of application and tool support via, e.g., IBM Rational RoseRT, IBM RSA-RTE, and now Eclipse Papyrus for RealTime (Papyrus-RT). Papyrus-RT is an Eclipse-based, open-source modelling development environment for UML-RT systems. It allows the generation of complete, executable code from models.

Experience level: 
Intermediate

EMF Models getting XXL? An overview of available solutions.

True story…

From the very beginning, we had to deal with models. No problem, EMF was there for us, providing rich and smart solutions: Sirius for diagrams, OCL for checking, edapt for migration, Acceleo for text generation and so many more. There was a time when everything was for the best in the best of all possible worlds'.

Experience level: 
Intermediate

Eclipse Intellectual Property - A New Era of Shiny Things...

The Eclipse Foundation and Board of Directors have been busy making changes to the Eclipse IP Policy in order to better serve the needs of our community!

We take extreme pride in our IP best practices and invite you to come and learn about our recent IP changes and those that we will be rolling out in the next few months!

We are extremely excited to offer Dual IP Streams now (What's your Type), ensure Eclipse Projects understand the faster approach for Minor and Service Releases of Third Party Prerequisites and our plans to modernize the Eclipse Legal Documentation.

Experience level: 
Beginner

Lean and Easy IoT Applications with OSGi and Eclipse Concierge

Modularization of software is key to handling the inherent complexity of distributed applications like for the Internet of Things (IoT) and provide a flexible environment to evolve applications and manage their deployment effectively. OSGi is a popular framework for dynamic modules for the Java language. Eclipse Concierge provides a clean, small and lightweight implementation of the OSGi core framework specification, specifically tailored to embedded systems and IoT.

Experience level: 
Intermediate
Track: 

Managing software development assets with Alambic

Alambic is an open-source framework and service for the management of software development data. It retrieves information from the various repositories used across the development process (git metadata, issues, continuous integration systems, PMD reports) and provides a unified access to data and metrics. A quality model enables users to assess and visualise the project regarding customisable criteria.

Experience level: 
Intermediate

Ethics in Software

Software is impacting every area of our lives, and will be even more omnipresent in the future. We have seen during the last few years on many occasions how a small glitch can have unprecendented consequences, from data leaks to people being harmed. As software developers and members of a community, we have responsibilities towards our users, our fellow developers, and the world. In this talk we will consider the ethical implications of software development and production, why it is important, and how we can do it better for the world and for ourselves while still being pragmatic.

Experience level: 
Beginner

News from CBI land

CBI can mean different things. Not only "Common Build Infrastructure", but also "Continuous Build Improvement". So whether you just joined the Eclipse community or have been around for a long time, this talk will give you an update what's new with CBI and how you can make use of it for your own project.

Experience level: 
Beginner

Modelling and Code Generation for Real-Time Embedded Systems with UML-RT and Papyrus-RT

This talk proposal discusses the Model-Driven Engineering (MDE) of Real-Time embedded (RTE) systems with soft real-time constraints using UML for Real-Time (UML-RT) and Papyrus-RT. UML-RT is a profile of UML specifically designed for RTE systems. It has a long, successful track record of application and tool support via, e.g., IBM Rational RoseRT, IBM RSA-RTE, and now Eclipse Papyrus for Real-Time (Papyrus-RT). Papyrus-RT is an Eclipse-based, open-source modelling development environment for UML-RT systems.

Experience level: 
Intermediate

IT geek in IT services company: Survival Guide

An IT enthusiast discovers the joys of a Services Company. Faced with all the frustrations, she has three solutions:

- Abandon ship

- Grin and bear it

- Make a difference

You guessed it, I'm here to talk about the third solution. If the environment is unfriendly, change it. 
I will try to answer the question "Can I transform a big company into a more geek-friendly environment?" and revealing to you my recipe to make this happen.

Experience level: 
Beginner

Why and how to leverage Apache Camel Integration Framework in your IoT architecture

Apache Camel framework is one of the most used Integration framework in middleware field. What about reusing it in your IoT infrastructure?

During the talk, I will explain the benefits of Apache Camel and how to leverage them in your IoT infrastructure, from gateways in Eclipse Kura to cloud in Eclipse Kapua.

A demo will show how to use existing Eclipse tooling (mainly Docker, Java debugger and Fuse Tooling) to develop your own Camel integration project and deploy/test them on Eclipse Kura.

 

Experience level: 
Intermediate
Track: 

Why is Capella different from UML/SysML tools?

Much more than just yet another modelling tool, Capella is a model-based engineering solution that has been successfully deployed in a wide variety of industrial contexts. Based on a graphical modelling workbench, it provides architects with rich methodological guidance relying on Arcadia, a comprehensive model-based engineering method.

This presentation will focus on this methodological guidance, showing main features with slides and demos on a case study:

Experience level: 
Beginner

Language Server Protocol in action: C# in Eclipse IDE, Java in VSCode, your language everywhere

The Language Server Protocol in a popular IDE-independent and Language-independent interface to provide and consume language edition services - such as code analysis, completion, hyperlinking... It basically lets the language providers implement the protocol as a server, and the IDEs consume the protocol as a client to have the IDEs presenting the language-specific data without having to know about the language.
This protocol already has multiple successful stories. In this talk we’ll demonstrate:

Experience level: 
Intermediate

How to get people to pay money for the software you love to write

If you love to write code, employers will queue up to employ you. Okay, some social skills are usually required, and I just assume that you are a talented coder – otherwise you would not love it.

But is employment by a French coproation right for you? Maybe you should look elsewhere in Europe, or head to Silicon Valey (in spite of Trump)? On the other hand, maybe that is to constraining: Maybe a research position would give you more fredom? Or maybe you should try to launch your own business to sell your kick-ass software?

Experience level: 
Intermediate

Simulating Future Mobility

SUMO (Simulation of Urban Mobility) is a microscopic traffic simulator. It has been developed by the German Aerospace Center since 2003 and published as Open Source (see http://sumo.dlr.de). In this talk, SUMO and its capabilities for the realistic simulation of cars, busses, bikes, pedestrians, trains and even ships in cities, such as Berlin, are presented in an overview. A short and hands-on tutorial for the live creation of a simulation scenario is provided.

Experience level: 
Beginner

Gamification: Play for learn

The benefits from children's games is undeniable: developing the imagination and allowing confrontation with the real world, it encourages their development. Often in adulthood, games are badly perceived, seen as a waste of time. What if the benefits of games could help us at any age as a tool of learning?

I will try to explain, based on our experience at codingame, how as a teacher we can use games as a tool.

Even there is no direct link to an Eclipse project, we use vert. x and eclipse on our platform!

Experience level: 
Beginner

Eclipse and Java™ 9

Java™ 9 is slated to be released in July 2017. This session will present the most important new stuff in Java™ 9, especially project Jigsaw, which introduces modules into Java™. I will show how to get started developing Java™ 9 code with Eclipse and then demo the new features that are already available in Eclipse for the upcoming Java™ release. We will also look at the new Java™ 9 runtime images.

Experience level: 
Beginner

Dealing with lexical macros in Xtext compilers

Lexical preprocessors, like the C preprocessor, are a nightmare. Unfortunately, quite a few legacy languages have preprocessing, such as C, C++ and Verilog. For the programmer, these lexical macros can make the code hard to understand and they can create all sorts of surprising side effects.

Experience level: 
Advanced
Track: 

Continuous Delivery in the Cloud with Jenkins and Azure

Continuous Delivery is not something specific to GAFA's. You can do it yourself and use Cloud platforms to optimize your build workload.

Discover how to setup a Continuous Delivery pipeline by using Jenkins as a CD engine and Azure as a Cloud platform : a new commit to the source code repository will automatically trigger a Jenkins pipeline to deploy to multiple environments on Azure.

You will discover the new 'shiny' Jenkins UI during this presentation, how to use dynamic Jenkins agents in the Azure Cloud and how to automate a whole Continuous Delivery pipeline.

Experience level: 
Beginner

RCP 4.x migration - Highlights and Pitfalls (Lessons Learned)

It was at the EclipseCon NA 2011 when I first considered a migration of the open source project OpenChrom (https://www.openchrom.net) to the new e4 platform. The new feature set looked really promising and I thought better switching to e4 earlier than later. I asked several people about the new features at the EclipseCon Europe 2011 again. Then I made the decision to start the migration in December 2011 based on Eclipse 4.1.1.

Experience level: 
Intermediate

What about your Eclipse 4 development strategy ?

Eclipse 4 is used since more over 4 years as a powerful runtime that uses dependency injection, application model, spies, and some other powerful features. And ...  it can run the Eclipse 3 code thanks to the compatibility layer.

Nevertheless, a lot of companies  still develop using the Eclipse 3 mechanisms instead of coding directly with Eclipse 4 artefacts. This can only be a short term strategy that will have a cost later.

Experience level: 
Intermediate

How can you contribute to Eclipse ?

Eclipse open source projects reflects the work of its community. At their respective level, anyone can contribute without necessarily having to be an advanced developer.

As a committer I will explain how anyone can contribute with different ways, and the benefits you can get for your professional profile. 

Following an introduction of the different types of contributions, this talk will focus more specifically on the code contribution process from both the perspective of the contributor and the committer who accepts the contribution.

Experience level: 
Beginner

My Minecraft-Smart-Home: Prototyping the Internet of Uncanny Things

Software solutions and everyday objects are becoming increasingly "smarter", take over more "responsibility" and know more and more about us and our intentions. But what does that mean for developers, and what impact does this have on the user? How do we convey the understanding and competence for this Internet of Things? Sascha Wolter covers typical IoT challenges and inspires with crazy and sometimes creepy examples. He also introduces a prototypic approach for hardware and software ideation based on visual programming languages, games like Minecraft, and the Eclipse IDE.

Experience level: 
Beginner
Track: 

Creating reproducible dev environments for Arduino

Most developers are failing when studying and creating hardware. We will present best practices for creating comprehensive environment for firmware development eliminating setup, configuration, and debugging problems. This presentation will use Openenergymonitor hardware and Eclipse Che workspace server to create a reproducible and consistent workflow for development for both novice and expert developers. We will present an approach that removes dozens of issues
which may be caused by combinations of operating systems, installed libraries and configurations.

Experience level: 
Beginner
Track: 

Mockups and end users

Working with developers for years, I saw so many of them doing their mockups directly with code, loosing a lot of time on it, and sometime be disapointed by the result. However, most of the time, you can achieve a great result with a sheet of paper and a pen.

Starting with a mockup helps to focus on content, usability and features, instead of design. When your mockup is tested with future end users and documented for developers, it’s time to think about design.

In this presentation, we will see

Experience level: 
Intermediate

Java Code Coverage Mechanics

Internals of Java Virtual Machine based on challenges and experience in implementation of one of the most popular code coverage tools for Java - JaCoCo ( http://www.jacoco.org/jacoco/index.html ) that is backbone of award-winning Eclipse EclEmma Plugin ( https://www.eclipse.org/eclemma ).

In this presentation we will dive into bosom of JVM (bytecode, restrictions, classloaders) answering on following questions:

Experience level: 
Advanced

Code Coverage in Practice

Finally the award-winning EclEmma code coverage plug-in for Eclipse became an Eclipse.org project! This is a good opportunity to summarize experiences and best practices, such as continuous inspection, for efficient usage of one of the most popular open-source tool to measure Java code coverage that EclEmma integrates into Eclipse - JaCoCo ( http://www.jacoco.org/jacoco/index.html ).

Experience level: 
Intermediate

Our Sponsors

For information about becoming a sponsor, please visit the Eclipsecon France2017 sponsor prospectus page.

Premium

Basic

Media

EclipseCon Support Other Events

Our Other Events

Eclipse events are hosted all over the world!

  • Devoxx US 2017
  • Eclipsecon NA 2017
  • EclipseCon France 2017