Welcome!

Welcome!

We had a great DemoCamp in Stuttgart. About sixty people crowded the room and welcomed every beverage the hotel could come up with.

The room just sufficed

The room just sufficed

Please refer to the Eclipse Wiki for abstracts, slides and additional links for all demos.

Andreas Sewe shows Hippie Code Completion

Andreas Sewe shows Hippie Code Completion

Andreas Sewe demonstrated Code Recommenders, including their newest feature called Hippie Code Completion. He explained the various ways Eclipse supports the developer with code proposals. After a quick recap of already available Code Recommenders features we saw how Hippie Code Completion collects code patterns live during input and distills proposals on the spot.

Jan Stamer on Eclipse Gemini

Jan Stamer on Eclipse Gemini

Jan Stamer gave an overview of Eclipse Gemini, the Eclipse implementation of OSGi Enterprise specification. He compared OSGi Enterprise to Java EE and showed implementation examples for database access, JPA, and dependency injection.

Dominik Obermaier connects anything via Eclipse Paho

Dominik Obermaier connects anything via Eclipse Paho

Dominik Obermaier swapped his slot with the Contracts for Java talk. He demonstrated Eclipse Paho, the umbrella project for machine-to-machine (M2M) protocols. He argued for MQTT as lightweight, low-bandwith, and fault-tolerant protocol suited for small systems. He implemented live a publisher and subscriber of MQTT messages within a few lines of code.

Sebastian Zarnekow in passion about Xtend

Sebastian Zarnekow in passion about Xtend

Sebastian Zarnekow demonstrated Xtend, aka Java on steroids. He began by writing a simple list processing example in Java style. Step by step, he refactored the code using Xtend features, thus becoming far more concise and readable. Finally, he gave a crash course on one of Xtend’s newest features, Active Annotations: Sebastian live developed an Annotation to enable logging on any class.

I had been warned that once we opened the windows, the air conditioning would shut down. After stepping outside and back into the room, I decided in favor of at least some oxygen, taking the risk on the air conditioning. Unfortunately, the warning came true, and we had an increasingly hot second term.

Andreas Graf shows a dozen Eclipse projects combined to allow Function Oriented Development

Andreas Graf shows a dozen Eclipse projects combined to allow Function Oriented Development

Andreas Graf demonstrated the current state of an automotive research project. As an example, he picked the seemingly simple car function of start-stop system to save fuel at a traffic light. He explaind how this function concerns lots of different car subsystems. Most likely, they are provided by different external suppliers and managed by different internal departments. The research project IMES combines lots of Open Source and some commercial Eclipse based projects to tackle this complexity. Andreas showed this combination to enable advanced concepts like traceability, feature and variant modelling, and impact analysis.

Hagen Buchwald explains Stefan Schürle's demonstration of Contracts for Java

Hagen Buchwald explains Stefan Schürle’s demonstration of Contracts for Java

Stefan Schürle stood in for Florian Meyerer to demonstrate Contracts for Java together with Hagen Buchwald. Hagen started by explaining the basic ideas of contracts. Every step Hagen explained, Stefan implemented within the C4J framework. The demo application provided a student’s bank account, guarded by contracts to disallow debit.

Timo Kehrer explains SiLift

Timo Kehrer explains SiLift

Timo Kehrer explained SiLift, the Eclipse implementation of his concept how to compare/merge models on a meaningful level. He focused on edit operations as basic blocks rather than model modifications. Timo illustrated how SiLift can detect the changes of some edit operations automatically; more complex examples need to be described by the developer. He spent quite some time on putting the concept into usable tools.

Sorry Ed, I forgot to take a picture (-:

Sorry Ed, I forgot to take a picture (-:

Ed Merks concluded the sessions with his “first non-modelling talk in the last ten years”, as he put it. He told about his experience on improving Java performance in two customer projects. He learned not to trust anything and to be paranoid about common knowledge, each and any measurement, experts, and even oneself. He showed how to establish some baseline by looking for the quickest action one environment can measure (limited by timer resolution) and the fastest operations a JVM is capable. On this baseline, he wrote a simple framework to work on more complex cases. The extended slides offer much more detail than Ed was able to squeeze into the 20 minute slot.

After more than three hours of new and exciting ideas, combined with a jungle-like climate in the room, both the speakers and the audience rushed for the buffet and more cool drinks. We had a relaxed evening with lots of interesting discussions, leaving the premises just about midnight.

My special thanks go to all the speakers, arriving from all over Germany on their own expenses to show us their Cool Stuff™.

I appreciate all our guests participating in the DemoCamp and the survey we sent. We got more than 50 per cent response rate — thank you! The survey resulted in a favor for short slots in English. The demo vs. presentation question came out more closely, with advantage for a mixed program.