JetBrains MPS Community Meetup 2019

COVID-19: many events have been canceled or postponed, please check with the organizer the event status.
JetBrains MPS Community Meetup 2019
Image from
From Thu 10 October 2019 to Fri 11 October 2019
From Thursday 10 October 2019 to Friday 11 October 2019
9:00 AM - 5:00 PM

Last year we had our first JetBrains MPS Community Meetup which was a great success. Watch the recording of the previous event here .  We have decided to repeat it again this year, but in a different city. The event will be made up of presentations from MPS users, keynotes from the MPS team and itemis,  plus, open-floor discussions on how MPS and associated technologies are expected to evolve.

This will be a great opportunity to share your feedback with the MPS team.

At the end of the first day, we want to launch our Everything you need to know about JetBrains MPS  event. This is a beginner's event, where we will show what you can do with MPS. It is completely your choice whether you want to decide to stay or continue on the discussion with other members of the community at a restaurant or bar.

JetBrains MPS community Meetup is an event organized by JetBrains and itemis.

Please note that the talks will be given in English.

Call for speakers here

MPS Keynote

by the MPS Team

There are a lot of things happening around MPS that we are eager to share with the community.

Since the last community meetup, we’ve rolled out 4 major releases and we want to tell you all about the recently added features. Our community has grown a lot too, and there are insights we want to share about that. We will also talk about the services we offer to help and support our customers in their MPS projects.

It’s not a secret that we have been working on Web MPS, and now we are ready to demo this technology and explore its future with you. Finally, we will outline the roadmap for MPS going forward.

Tackling Security and Safety with MPS

by Klaus Birken from itemis

As the complexity of technical systems is rising, security and functional safety are two cross-topics which are crucial for the success of a product. Appropriate tools are needed to cope with the challenges resulting from those topics, applying mechanisms like abstraction and automation. MPS is a proper platform for building such tools. In the talk, we will demonstrate two solutions itemis has built in order to help customers tackling security and functional safety problems, and how the capabilities and flexibility of MPS support this. These two solutions cover the range from modeling and analyzing distributed systems to weaving patterns into C-code, from end-user RCP product to research prototype, from graphical editors to shadow model transformations.

DSLs with MPS: Big design upfront?

by Kolja Dummann from itemis

As the whole software industry has moved to agile processes we also develop languages in such environments. How can we facilitate agile methods and practices to develop better languages and tools around them? Based on severals past and present projects we will take a look at how we developed DSLs and Tools based on MPS in an agile way. What are the strong points of MPS in such a context and challenges did we encounter on the way? In addition, we will see how iterative language development influences language design to allow users to provide feedback on missing language features or incomplete semantics.

Taming the Computed Tomography Scanners Complexity with Domain-Specific Languages

by Holger Nehls from Siemens Healthineers

Using the potential of projectional editors to switch from generic spreadsheets to a workflow-driven application

Four years ago, Siemens Healthineers started a project to tame the complexity of the specifications for our Computed Tomography (CT) scanners. The result is a domain-specific modeling tool, build with MPS, that replaces the traditional documents based approach for scanners specification.

During the productive use of the first version of our application, we learned that it is a very good idea to separate the editing workflow from the different views on the data. This leads to a complete restructuring of our tooling and the implementation of a workflow-driven application that benefits from the unique capabilities of MPS.

In the talk, I will present the result by a demo and summarize the challenges we faced. 

The second part is about our Continuous Integration (CI) chain and the (ongoing) implementation of DevOps principles for the domain-specific tool.

GDF: a Gamification Design Framework powered by Model-Driven Engineering

by Antonio Bucchiarone from Fondazione Bruno Kessler FBK

Gamification refers to the exploitation of gaming mechanisms for serious purposes, like promoting behavioural changes, soliciting participation and engagement in activities, and so forth. In this talk, we present the Gamification Design Framework (GDF), a tool for designing gamified applications through model-driven engineering mechanisms. In particular, the framework is based on a set of well-defined modelling layers that start from the definition of the main gamification elements, followed by the specification on how those elements are composed to design games, and then progressively refined to reach concrete game implementation and execution. The layers are interconnected through specialization/generalization relationships such that to realize a multi-level modelling approach. The approach is implemented by means of JetBrains MPS and has been validated through a gameful system in the Education domain. The layered approach allows to reduce the complexity of game design by separating the different concerns involved in the development, and at the same time discloses the opportunity of reusing portions of a game in other scenarios. Moreover, it enables the definition of monitoring and adaptation routines to trace game evolution and possibly react in front of undesired/unforeseen scenarios.

Finally, a declarative base language for MPS!

by Wim Bast from Modeling Value Group

We will give a demo of DclareForMPS. DclareForMPS is an open-source plugin for MPS. DclareForMPS adds a language aspect named 'rules' to MPS. The rules are defined in the regular MPS base-language. Dclare has reactive and incremental semantics. You can build transformations that synchronize your models in real-time. You can also use DclareForMPS to derive only a portion of an existing model within itself. We will demo a transformation between two models of two different languages for a sudoku solver in MPS. The demo will be given by Wim Bast of the Modeling Value Group – an early advocate of Model-driven development and an experienced MPS user.

Dependency Modules

by Kemal Soysal from LS IT-Solutions GmbH

In MPS, as dependencies, we use languages, modules, models, and Java stubs from .jar files, among other things in a model. Although we can write our own plugins, we may sometimes need to use plugins from other vendors. We intrinsically need to have knowledge of which plugins need to be preinstalled in our MPS or User Config Folder to open a project. By modeling each dependency in the project itself, we can:
* Adjust the version, type, and location information.
* Integrate into the logical view.
* Load/unload the dependency.
* Introspect its dependencies.
* Navigate to the source or other artifacts.
* Support automatic building.
The core of dependency modules is extensible, allowing users to extend it to their needs.

Are Tax Specialists the New Programmers?

by Diderik Dulfer from Dutch Tax Office

At the Dutch tax administration, we have used MPS to create a tool that supports our DSL RegelSpraak. This language is a controlled natural language to specify the rules for tax calculations. The Dutch tax administration uses this language to implement the Anti-Tax Avoidance Directive (ATAD) adopted by the EU, which contains five legally-binding anti-abuse measures. In the process of specifying rules for the anti-tax avoidance directive, we work closely with tax specialists to specify the rules and the test cases. IT is no longer a black box for them. With the controlled natural language, they find themselves in the driving seat of IT development. And, of course, they know how to program these calculations much better than we do. In this session, we will talk about this project and other projects where we use MPS to support our development. We will show where we have benefited and where we can see improvements.

Embedded software modeling using Capital Software Designer

by Dinesh Kumar Rajamani and Jan Richter from Siemens

Capital Software Designer (CSD) is a solution from Siemens for onboarding embedded software modeling from requirements to architecture enriched by software contracts, which drives integration, verification, and validation activities. It is part of the Capital enterprise solution for defining, designing, producing, and maintaining embedded systems across electrical, electronic, and software aspects. Capital Software Designer is built on the JetBrains MPS language workbench. In this presentation, we give a brief overview of Capital Software Designer's positioning and capabilities, and highlight the following aspects of language engineering beneficially used in CSD. We leverage the projectional editing capabilities of MPS to allow the users to model in textual or graphical notation. The real-time architecture import model comparison helps architects to merge the architecture created from different standards such as SysML, AADL, and Autosar. The APIs exposed for CSD help in accessing and creating the MPS model from any outside environment, thereby making MPS a service.

Workday’s transformation to a new language platform: Developing a full-fledged programming language with MPS

by Bircan Copur, Antonio Gliubich and Alexey Yashin from Workday

Some time ago, at Workday, we set out to supplement and eventually replace our in-house, web-based metadata programming language, XpressO, with a more modern sibling, YP. We sat down to create a DSL but soon found ourselves on the road to developing a general-purpose programming language using MPS. In this talk, we will discuss how we tackled interoperability with 10+ years of legacy XO code. We’ll dive into the specifics of how we tried to solve different problems: from updating instances in an immutable programming language to translating all kinds of text strings into multiple natural languages, as well as implementing generic types with the help of the MPS type-system.

More of the agenda coming soon.


Why is the event not free?

We will put on breakfast, lunch and we had to rent the venue, and the second (and most important) is that, when the event is for free, there is always a significant % of people that register that then decide not to go, so due to the limited capacity in the venue we have to make sure there is enough space for the people who really want to come and take advantage of this event.

Are you going to feed us?

Breakfast, lunch, and snacks will be covered over the two days. Dinner though is on you.

Is it an event for beginners?

We are inviting people who already know about MPS to share their work and experience. This means that some talks may be more technical. Nevertheless, the door is open to everyone, so if you are still curious about the technology you are very welcome to join us.

995 Views - 12/10/2019 Last update
Spaces Zuidas
101 Barbara Strozzilaan, Amsterdam, 1083 HN, NH, Netherlands

Are you an event organizer?
Create events for free. They will be immediately recommended to interested users.
Create event

Nearby hotels and apartments

101 Barbara Strozzilaan, Amsterdam, 1083 HN, NH, Netherlands

Browse other venues in Amsterdam
Discover now

Discover more events in Amsterdam
Discover now

Spaces Zuidas
101 Barbara Strozzilaan, Amsterdam, 1083 HN, NH, Netherlands

Are you an event organizer?
Create events for free. They will be immediately recommended to interested users.
Create event
  1. Amsterdam
  2. JetBrains Expo BV
  3. JetBrains MPS Community Meetup 2019
Your changes have been saved.