A simple code generator for bespoke data models, web forms, and scientific workflows in Eclipse ICE

Subscribers:
24,000
Published on ● Video Link: https://www.youtube.com/watch?v=XM9f0oIyzyY



Duration: 28:49
190 views
4


The primary goal of the Eclipse ICE project is to provide tooling for creating scientific workbenches and workflows. Developing these tools over the past decade has often involved a tedious, uninspiring rehashing of the same boilerplate Java code, the same project layouts, and the same opportunity to identify new ways to streamline our efforts. To put it another way: How much time better spent getting coffee is lost to re-implementing Object.equals() for ten years?

In our quest to continuously code ourselves out of a job, this talk presents a solution to this problem with a simple, highly opinionated, template-based, Java API for generating data models, web forms, and scientific workflows. It combines Lombok for basic boilerplate generation, Dagger 2 for dependency injection, Apache Velocity for template processing, Maven archetypes for project generation, and Vaadin with LitElement templates to generate whole projects with minimal input that meet all the requirements of the ICE platform using a few custom annotations from ICE itself.

Attendees will learn not only of the utility of this framework, but also what motivated its creation and what lessons were learned in its evolution from the original hard coding in ICE 2.0, to prototypes using RDF and Java generics, and finally ending with annotation processing. Fully deployed examples for a set of science projects will be demonstrated. Attendees will find it easier to follow the talk with an intermediate to advanced knowledge of Java, especially with respect to the annotation processing API. Attendees will learn how to use the new tools in Eclipse ICE to create their own workbenches and be provided with links to the talk content and tutorials. Finally, it is expected and hoped that attendees will leave inspired to use code generation for their own projects.


Speaker(s):
Jay Billings (Stellar Science Ltd. Co.)
Daniel Bluhm (Oak Ridge National Laboratory)




Other Videos By Eclipse Foundation


2020-10-28Developing and Debugging ESP32 IoT Applications using Espressif Eclipse Plugin
2020-10-27Coding Kubernetes for kids with Scratch and Che
2020-10-27Unleash the power of Eclipse technologies - The benefits of modernizing your project
2020-10-26High Speed Autonomous Driving with Autoware ROS 2 CycloneDDS #iac2021 #becauseracecar
2020-10-26AdoptOpenJDK - Making Java free again
2020-10-26Evolving Jakarta EE Applications in Kubernetes
2020-10-26Asychronous Communication in Distributed Environments - The new OSGi Messaging RFC
2020-10-26A harmonized open source platform for effectiveness assessment in the field of automated driving
2020-10-26Web-based modeling tools with EMF.cloud
2020-10-26Deploying a Modern Serverless Container as powered by Vert.x
2020-10-26A simple code generator for bespoke data models, web forms, and scientific workflows in Eclipse ICE
2020-10-26What Edge Computing Can Learn From the Moon Landings
2020-10-26Sustainability in Software Engineering
2020-10-26Easier integration testing in OSGi: The open source osgi-test project
2020-10-26Wellness Break: Mindfulness for Developers (Part 2)
2020-10-26Run your APPs on carrier edge: an open source solution
2020-10-26Ecore tools in the cloud - behind the scenes
2020-10-26Writing docs in your IDE - an AsciiDoc primer
2020-10-26Make your microservices as much robust as mission critical systems by MicroProfile and Jakarta EE
2020-10-26Building an Industrial IoT Solution - Open Source
2020-10-26From non-modular to modular Java programs - What you need to know



Tags:
Eclipsecon 2020
Eclipse ICE
workflows
annotations
code generation