CG2012 Summary (part II)
Day 2, Thursday 29th
The morning started with the first keynote. Markus Völter led the session with the title “Domain-Specific Language Design – A conceptual framework for building good DSLs”. Here Markus deep down with an ontology approach, reviewing the dimensions of DSL Design: covering nine topics: expressivity, coverage, semantics, separation of concerns, completeness, paradigms, modularity, concrete syntax & process. In the session, he focused mainly on expressivity, semantics, modularity and concrete syntax. I found specially interesting the dissection of types of language extension and composition providing detailed samples in each case. In summary, good and quality stuff as Markus used to deliver. As commented by Markus, this material will be published as a book “DSL Engineering” at the early 2013.
User Interfaces are always interesting to me so: Achim Demelt session’s was a must see session or me. “Mission: Impossible — Purely declarative User Interface Modeling”.
The session was very good. The slides are not enough, the accompanying demo shown the tool at work. Achim and his team created Silverlight based UIs using a Java back-end. The S4 environment presented is agile enough to model and generate UIs for the ERP domain Achim was targeting.
Next session for me was for the Jetbrains’s guys Maxim Mazin and Evgenii Schepotiev with the talk “Webr-DNQ — web application development with pleasure”. They show the language extensions Jetbrains has designed over Java using MPS to build in-house products like YouTrack. This is a very clear sample of the quote: eat your own dog food.
After a coffee, and back to action to a very different session: Steven Kelly lead the hands-on session titled “Have your language built while you wait”. Here some of us creating Language Workbenches where placed in a room with our laptops waiting for customers. During rounds of 25 minutes we were attending them showing the capabilities of each tool and solving a concrete and practical small problem proposed by the customer. 15 master craftsmen, representing 11 top language workbench tools, volunteered their time to build languages for participants’ domains. It was a very interesting format because it not only allows people to try new tools, but also to promote cross polinization between tool makers. From mi side I was there showing Essential and also have the chance to play a little with The Whole Platform with Riccardo Solmi and Enrico Persiani and take a closer look to Ensō with Alex Loh.
Steve prepared a good summary on this session (take a look for the details on each tools). I borrow here the video here .
So far, so good! Another day full of code generation, but the dessert was still missing.
This year CG2012 changed the relaxing punting trip on the river Cam in favor of a conference called “How Apollo we flew to the moon” by David Woods. The result: totally amazing! This guy presented us all a brief but detailed introduction to the Apollo systems and navigation procedures and then deep down on the specific problems on the Apollo XI, the mission where Aldrin, Armstrong and Collins engraved theirs names in the history.
Given the audience, David make special emphasis on the computer devices on board in the Apollo missions. Totally amazing the rudimentary technology used was good enough to fly to the moon and come back! Q&A delivered may geek questions about the Apollo mission that David responded with flying colors to impress even more the audience.
So I couldn’t resist, and bought my copy of his book and got it autographed by David (I was not the only one BTW). A good reading for sure, if you like space and/or engineering.