Friday, November 21, 2008

Eclipse Summit Europe 2008: The Automotive Working Group Meeting Afterwards

I held off publishing this blog about the automotive working group meeting that was held after Eclipse Summit Europe so that discussions could continue quietly in the background. However, given that Ralph let the cat out of the bag, I thought folks might be interested in what happened at that first meeting back in November...

My day started with breakfast with Mike, Ian, Doug, and Ralph. Then we headed by train to the Bosch site where the meeting was hosted. There was quite a large turn-out for the group, 22 in all.


Mike presented first, reviewing the history that led to the creation of the Eclipse Foundation as an independent entity.


According to Evans Data, there are 4 million developers using Eclipse daily, and 6 million if you include the vendor based products built on Eclipse. In Eclipse 1.0, Eclipse was primary just a Java IDE. For 2.0, it evolved to become a generalized tools integration platform. For 3.0, with Rich Client Platform, it evolved to come a desktop application integration platform. Today, Eclipse and Microsoft are the two dominant tools platforms.

A key to the Eclipse platforms success is the uniform component model that puts all contributions on an equal footing and make it easier to add little things or big things to the application. Open APIs and a commercially friendly licenses help to lower the barrier to entry. Eclipse has established proven best-practice processes around these ideas and these can be reused by industry vertical working groups to get a jump start on getting up and running. The maturity of an organization's policy around open source tends to progress from deny, use, contribute, champion, and finally value co-creation.

Doug Gaff presented on CDT, DSDP, and the lessons learned about working collaboratively in open source.


CDT has evolved to become an extremely high quality popular C/C++ IDE. It's used for things like embedded, linux, and high performance computing. DSDP is a container project for embedded and mobile technology. There are now more than 40 committers from 11 companies. There is support for debugging of embedded devices which features things like memory rendering. as well as target management that includes a remote systems explorer and a framework for managing communication with the targets. Real-time software components, Tools for Mobile Linux, Native Application Builder, Mobile Tools for Java and a proposal for FireFly, a Mobile Web Devleopment Kit targeting iPhone and other devices, rounds off the slate. Much of this technology is very likely to be applicable in the automotive industry.


Then it was my turn to do the 20 minute modeling dog and pony show; check out the conformance to Ralph's dress code!


Next Ralph presented some background about TOPCASED, a French consortium focused on building world-class open source modeling technology.


Two mistakes they admit to making: they focused too narrowly only on the aerospace industry,
and they focused too narrowly only in France. Both limited adoption. Of course many of these people are now committers at Eclipse on projects like Ecore Tools and Papyrus.

After a coffee break we had a round table introduction and some initial position discussions. Stefan Ferber of Bosch, drove home the point that it's very important to manage diverse groups of people who are often split geographically across different countries. The tool expenses are growing out of hand and that's primarily caused by inefficiencies in the system and with shrinking budgets are no longer affordable. Something needs to be done to make the tool vendors more efficient and Bosch is highly motivated to forge a new path.

Ulrich Schopf also of Bosch talked about some of the efficiencies they've focused on in the past,
e.g., the unification of the tool chain around gas and diesel engines.

Ramy Asselin of General Motors was able to attend following an AUTOSAR meeting.


He's currently working on a master's degree. Their goal is to arrive at a single tool set and processes based on open data where both the tools and data evolve over time. They definitely intend to leverage AUTOSAR. The software in vehicles is growing in complexity faster than is the capacity growing to accommodate that.


They need to improve sharing and integration and need to manage better the impact of design changes.

Thomas Hermes of IAV talked about the tools they need being too expensive, full of features they don't need, but for which they pay, and yet missing specific features they really do need. They'd prefer to see more componentized tools into which they could contribute the things they need. They don't care about tools, only about the results they get from those tools.

Hans Kugler helps other people improve the way they manage the software process. The improvements needed by the car industry is needed across the whole ecosystem; improvements within individual organizations won't suffice for the kinds of problems we are seeing. He definitely encourages the development of a common platform as a drive toward huge cost savings measure as well as something to foster more innovation.

Axel Schultze of IAV talked about how everywhere they go they run into customers with customized processes. It's very inefficient for them to have so little commonality of tool reuse across their customer base. Lack of tools around the system architecture of a car it painful as well. He mentioned their involvement in AUTOSAR which he sees as a good start, but perhaps not sufficient. License costs have become prohibitive because as much as 15% of a developer's cost is attributed to the cost of the tools.

Nest Wolfgang Neuhaus of itemis talked about his interests in this space. Itemis is heavily involved in providing help to develop domain specific languages in the embedded space. He asserts that an open tool platform will inevitably exist, so it's primarily a question of what form will it take, and who will get involved to drive the direction. Itemis recognized this inevitable end result as evidenced by they fact that it has open sourcing all its tools and technologies.

Martin Thomas of Bosch mentioned the gas and diesel tool chain unification as an example of the kind of cost savings that are needed. He considers Artop too closed in its current form. AUTOSAR is very important and he wants to see an open source project around this. The current effort is far too closed and will not produce the type of open ecosystem that's needed. He repeated my think big but start small, which I'd earlier termed as start small but aim high.

Markus Utz of Bosch reiterated some of the themes about how the current cost structure is stifling innovation. He too wants to work together with others.

Martin Richter of IAV talked again about the plethora of OEM development environments. It's just too painful and wasteful.

Peter Horn of Intel talked about why they are doing tools. Primarily they want to ensure that there is a good tool set available for people to exploit Intel's chips and hence improve the uptake.
They have good compilers, for example, that typically have 20% performance improvements over gcc. Faster code makes their chips seem faster. They want there to be a full tool chain that best exploits the silicon and are interested in the automotive industry's specific requirements.

Joerg Zimmer of BMW is interest in seeing a solid tool chain. Lutz Rothhardt also of BMW talked about how to manage all the different controllers in a vehicle. Their mirror, for example, has 5 or 6 inputs to decide whether to heat the mirror. It's gotten to be too complex to manage the dependencies between all the components for the purposes of change impact analysis. Even gathering the data within their organization is far too complex. The costs of a mistake in a shipped vehicle is extremely high. They want to see vendors competing so they don't become complacent but rather continue to focus on quality and innovation to maintain their position.

Michael Rudorfer of ARTOP talked about their development efforts around AUTOSAR.


They see a need for a common AUTOSAR model upon which to build tools to foster better interoperability. AUTOSAR's license restricts disclosure of the specification to members only, which effectively blocks the ability to turn it into an open source project. So they're trying to be open, but can only be open within the membership. The theme here is much like that I described earlier, i.e., building a common model and then encouraging tool vendors to compete in providing the best tools around that model, and to add specialized complimentary add-ons to any tool. They are currently working to build an EMF-based model, which was the topic of some conversations I had yesterday that ESE.

Minoru Okada of Dendso talked about his role in process development which is made more difficult by the lack of a coherent tool chain. It's often far too difficult to chain tools properly. He pointed out that the Japanese automotive software industry is many years behind and is simply not familiar with Eclipse.

Martin Beckel is from Continental, which was big in things like tires, but they've grown by acquisition and have ended up with a diverse set of tools; this type of diversity is not the good kind! They need to unify this. Exchanging software components is way too big a task, so they badly need something to integrate easily the various software components they reply upon. They're also involved in TOPCASED and Artop, so they're well aware of the benefits of collaboration. Even when there are good commercial tools, those often don't integrate with Eclipse nor with each other.

Nils Nilson of Johnson Controls repeated the concern about islands of tools; there really need to be bridges. Collectively there are a huge number of people with good ideas so doing work collectively will be a huge improvement.

Ralph summarized some of the issues and then Mike talked about some steps we could take to build an ecosystem on a well defined platform.


The first step might be to define an Eclipse package that assembles some of the key pieces of Eclipse that are expected to be of ubiquitous use, e.g., CDT, parts of DSDP, and EMF. This would establish a straw man base line. It would certainly start sending the right signals; tool vendors and the AUTOSAR folks are likely to take note. This starts to create an ecosystem with empty niches just waiting to be filled. Surprising players will turn up and do surprising things; that's what innovation is all about. It's important to define a roadmap, spell out the requirements wishlist, and sketch a viable business and governance model around all this.

Eclipse Summit Europe 2008: Day Two

The day started with David Wood talking about the Symbian decision to become open source.


Fragmentation caused by too many mobile operating systems dilutes the industry's effort while open source helps to create a more successful, cohesive, productive community. Stability and quality of the base, agility in responding to changing needs, and a growing base of skilled developers are key aspects to a platform's success. Open source lowers barriers to entry, but it's not a panacea because integration and cohesion are always a challenge, and fragmentation is always a risk and in fact open source makes that risk more likely. A copyleft license like Eclipse Public License helps avoid that, though it's not always possible to consume the changes external parties make to the base. A very large number of companies have signed up to participate in this system. Good luck Symbian!

After that is was time for my stupid modeling talk. By the way, did you notice that in Ian's blog, all the people talked about modeling, even Doug Gaff? Resistance is futile. As I tried to bring up my screen on the projector, my computer decided to go to lala land so I had to power down and reboot. There's nothing quite like an untimely technical failure (like there's ever a timely one!) to get a guy off to a great start. Oh well, I think it went very well, judging by the comments I got afterward.

After the meeting I had a chat with Axel Rittershaus of Skyway Software.


He really liked my talk and we speculated about the various reasons why there are so very many misconceptions around modeling. Skyway uses EMF to help build their tools and models and those in turn are helping their end-users generate web applications. There's meta in action for you!

After that I chatted with Cameron Bateman of Oracle.


I've chatted with him a few times on IRC's #eclipse-modeling, so it was especially nice to get to meet him in person. We chatted about how best to sync up a model and a DOM and about rendering something that's better than the ugly properties view we have right now. It's great working with enthusiastic people with a can-do attitude.

I was chatting with so many people, I missed the Ecore Tools talk and the Tom Schindl's talk. That made me really sad, especially when everyone told me they were both really good. Darned ESE is too short so there's not enough time to do everything. I also spent time with Stefan Eberle chatting about the AUTOSAR implementation he's working on. I should have taken more pictures; yet more brain failure. Then I missed Rich's Amalgamation talk. Double darn. I'm going to have to cut some of those conversations short next year, because before I knew it, the summit was over after short wrap-up at 5:00.

For dinner I went out with some of the board members and some of the folks considering the possibility of starting an automotive working group. We meet with them tomorrow early, and I still don't have my slides ready. I'd best get to it!

Thursday, November 20, 2008

Dave Thomas' keynote focused on the history and future of embedded devices though much of what he explained was around the fact that what we do at Eclipse generally sucks.


In particular, Java sucks, frameworks suck, modeling sucks big time, and hence Eclipse as a whole is a complex disaster. Those sound like fighting words! He expressed dismay that EMF made modeling marginally successful otherwise modeling would have just died off long ago. I almost felt kind of guilty, until he got to the part about Domain Specific Languages being a solution to all this complexity. Hey, isn't that what modeling will help develop? I noticed that his misconceptions will be fully addressed by my talk tomorrow.

After that I attended Tonny Madsen's talk about implementing screen flows in RCP applications; he's from The RCP Company.


He explained some of the problems related to flow control in wizards and described the simpler screen flow approach he's advocating. He showed some of his cool tools for designing flows.

Benoit Langlois of Thales talked about SolFa, i.e., a solution factory for integrating components in the software generation processes.


A factory component is a unit of generation with a clear objective and a well defined contract based on view points. They are orchestrated into an overall assembled plan. It needs to bridge the gap between the flexible control desired by the users and the technical precision needed by the provider of the services. His case study example showed how SolFa can be used to orchestrate the EMF's generation process. It's interesting how SolFa makes EMF's rigid generation process more flexible by making it easily configurable as part of an overall generation plan. Much of what we have hard-coded in Java in our generator adapters can instead be orchestrated by what's effectively a SolFA DSL for that. Very cool stuff!


Next Quentin Glineur described how ATL can be used to transform EMF models in a declarative way.


It can directly operate on an instance to modify it, i.e., to implement transformations such as refactoring. Constraints can be applied to ensure that a transformation produces results that conform to expectations. Its declarative mapping design supports bidirectional transformation;
preconditions and post-conditions govern the applicability of the patterns. In the future, they'd like to align with portions of QVT core.

Peter Friese, Jan Koehnlien, and Sven Efftinge talked about Xtext, which supports the devlopment of textual Domain Specific Languages.


I love this stuff and of course it's ironic that sucky modeling technology is exactly what you need to produce DSLs, the very thing Dave Thomas asserts to be one of the important technologies for the future of the embedded space. With an augmented EBNF grammar you can define your syntax and specify the abstract modeling onto which it maps. I think this technology will have a big impact!

I had lunch with Xavier from Soyatec and Benoit of Thales to talk about starting the SolFa project at Eclipse. Woo hoo, another cool project.


I also chatted with Steve Sfartz of Microsoft to discuss how we might start a dialog with folks working at Microsoft who clearly share common interests. He already sent me a note. Woo hoo!

My good buddy Kenn Hussey of Embarcadero presented on data models.


The data model design process covers the whole abstract range of issues from contextual, conceptual, and logical to physical, definition, and instance. He talked about Information Management Model (or something like that) to help unify things like UML, Entity Relationship Diagrams, Relational models, XML Schema, and LDAP.


After that, my other good buddy, and recent new father, Cedric Brun of Obeo, presented the EMFT Compare framework.


It's fully integration with on Eclipse's team APIs, and of course is based on comparing models structurally rather than based on comparing their serialized representations. The compare editor displays the side-by-side structural views of the model, i.e., the same as the view used in the EMF editor's outline for that model. They even have an EMF Diff model that captures the differences between the two models in the form of a serialized model. They're currently prototyping support for comparing semantic instances but displaying a graphical representation of them. It's really cool!

After that yet another good buddy---no, I wasn't on the program committee picking all my buddies---Eike Stepper presented on CDO.


He drew attention to the fact that the CDO team has committed 175 bugzillas since Ganymede as an example of how active the development is. I speculated out loud that maybe it was really buggy before; it makes you wonder how I treat people who aren't my buddies doesn't it? He showed some of the cool new things in the latest version, like structured resources organized into folders, save points to support partial rollback, passive updates to disable updates to the session based on external changes, change subscriptions for producing regular EMF notifications for changes in the remote instance, and even a query framework. He's really has been busy! He finished very quickly, but there were a heck of a lot of questions! I prompted him with a question about the fact that CDO allows objects to be garbage collected since objects do not directly contain references to one another. Eike explained that this allows CDO to scale to resources that are bigger than 4G in size, for example. That was the best question and answer session ever!

After that I talked to Hajo about writing up a project proposal for the cool stuff he demoed yesterday. Woo hoo, this is going well! On my way down to the the MTL presentation I bumped into Dave Thomas and asked him what's the difference between a model and a DSL? He said they are the same thing. Excellent, that's the right answer! He said he'll be around tomorrow, so it will be cool to see what he thinks after my talk.

The good buddies never end, because Sandro Boehm was next to present JCRM.


The goal is the foster synergy between the modeling community and the JCR community. The JCR community doesn't have good tools support and the modeling community can help produce those. The modeling community benefits by virtue of having a JCR-backed data store for EMF objects. This will help provide multi-user capabilities as well as fine-grained object-level versioning. JCR is quite a nice match for EMF's type system. EMF's reflective or dynamic delegation generator patterns allow Sandro to map all data access onto the repository and easily supports locking and versioning.

This was followed by the board meeting. Those on-site at ESE congregated in a little room.



I'd tell you all about what we talked about, but then I'd have to kill you. Or they'd kill me. You'll just have to wait for the public minutes.

Finally it was time for the reception. Lynn encouraged folks like Larry to worship her as a goddess.


Janet, Chris, and Doug enjoyed their beers, although I don't think Doug approves of idol worship.


Later I there was even a pretty young woman who couldn't keep here hands off me. Despite the smile, I felt violated. I hope her husband reads this blog.


I spent quite a bit of time chatting with Maximillian Koegel and Jonas Helming about their research work relating to change management and project management.


That was a really fun night. As is so often the case, chatting with people is more than 1/2 the fun.

Wednesday, November 19, 2008

Eclipse Summit Europe 2008: The Symposiums

There was really good turnout for the modeling symposium.


Well over forty people attended.


Markus Voelter started the symposium with a brief outline of the agenda and a description of how the "open space" discussion would be structured in the afternoon.


Lars Schneider of Siemens presented his position paper on model quality assurance based on his research work.


He defines qualitative metrics for assessing model quality, which he terms as smells. The idea is to detect problematic patterns, i.e., bad smells, and then to use refactoring to eliminate such patterns. He described how his refactoring tool can be used to apply basic refactoring transformations and he also showed how the his graphical tool is used to design transformations.

Sandro Boehme of inovex presented a description of how EMF's EStore is used to provide support for Java soft references, a good solution for dealing with models that are too big to fit within memory.


Recall that soft references will be garbage collected when the JVM runs low on memory. By generating an EObject implementation based on the generator's reflective delegation pattern, it's possible to delegate all data access onto an InternalEObject.EStore. The store itself delegates to a map that manages the soft references under the covers. He uses this approach to implement EMFT's JCRM so it can access and traverse models larger than can fit in available memory.

Dimitrios Kolovos of York University described how GMT's Epsilon can be used to navigator heterogeneous models.


It's often the case that we need to establish links between different types of models. He described an example problem of applying probability information to an activity diagram for simulation purposes. In this scenario, it's desirable to be able to treat such information as if were just properties directly on the model. To solve this problem, the Epsilon runtime queries the available models to determine which ones know something about a specific property being associated with some type object, i.e, which ones define bridges.

Hajo Eichler of ikv++ talked about executable models.


He described some existing approaches, which as he said, are interesting, but not EMF based, and hence don't directly solve the problem. He defines operational semantics by extending Ecore and has founded it on a well-defined formalism. There is a graphical editor for specifying the dynamic behavior. He showed the debugger directly working with specified behavior. Effectively this approach allows him them very quickly specify the full semantics of a complex domain specific language.

Moritz Eysholdt of itemis described his work on meta model evolution.


He described a simple example of a document with an author-name attribute evolving to become a model with an author object to carry that name attribute. The problem is of course what happens to existing instance serialized according to the old model? If one can record the changes made to the model, that information can be used to determine how the corresponding instances need to be transformed. It's also possible to simply compare the original and final versions. In general, one needs to collect information about how the original model was changed. That information is encoded as an Epatch which groups the changes in a meaningful so that corresponding changes can be interpreted in a meaningful way against the instances.

Markus Herrmannsdoerfer described coupled evolution of meta models and models.


He gave us choice of pretty slides or a demo, so naturally the audience wanted a demo. He showed how his tool records all the changes being made to his sample model. These changes can be grouped and then annotated with instructions for how to migrate the instances. He also has refactoring transformations that can be applied and have built-in meaning in terms of migrating the corresponding instances of the model. You can learn more at his website.

Miguel Garcia presented on techniques to extend languages in the style supported by LINQ
with a focus on how to apply the same types of ideas in Java.


Annotated Ecore models can be used to specify details for how best to query instances in an SQL-like way.

Jabier Martinez of European Software Institute talked about some of the challenges faced in model drive software development, i.e., versioning and transformation, particularly those that scale to very large instances.


These are the problems they are exploring and building tools to solve.

Peter Friese and Heiko Behrens of itemis talked about Xtext, a framework for developing textual DSLs.


The idea is to support syntax that's more human readable than XML. Certainly managing and working with textual source artifacts has a long history of support. The text of course represents deep structure but all structure is implied by the text so only the source files need to be version controlled. It's difficult to work in deep meaningful ways with just source though, so an alternative is to represent the deep structure in a repository, but that implies it's necessary to resurrect the textual form when the users needs to view it, which might be lossy in terms of formatting details. A third approach is to combine these two, i.e., create an index of the deep structure from the source and maintain both.

Jos Warmer of Orinda talked about an alternative approach to large models.


Current solutions include repositories and file storage. Their solution is simply to avoid having large models. They focus on a collection of small independent DSLs along with collections of small instances. So models are composed of a number of model units and scaling happens by virtue of scaling the number of units, not growing the unit size. References across units are soft references, e.g., reference by name. Of course this implies that you'll need an index, like CrossX, to understand the soft references in order to reason about the deep structure implied by them. Effectively this is like compiling your source models into a compact representation of the deep structure.

After the presentations Markus observed that the community is maturing as evidenced by the more sophisticated topics of the interesting presentations we just saw. He then proceeded to gather topics to focus the afternoon break-out discussions.

One was focused on modeling verses programming. Kenn said "programming is modeling but modeling is not necessarily programming." The implication is that programming involves a significant focus on behavior not just structure. What is the purpose of a model generally? Typically they are defined as a target for some program to manipulate, but Kenn claims that sometimes models are just meant to communicate information. Pretty pictures, oh no!

It was asked, why don't we focus modeling more around things we've done with languages like Java, i.e., much what like Jos talked about earlier. In other words, lots of small source files and indexing them. It's key to be able to answer queries about inverse references. A focus on use cases driven by real user needs is important to achieving the same type of comfortable experience that JDT provides. Two main parts of the issue is how to compute the closure for what's to be indexed and to identify which specific things are important enough to be indexed. So we all agree we need an indexing mechanism and a query language to exploit it. Sven will propose a project that focuses on indexing.

We digresses a little at that point about the need uniquely identify every object. A URI should suffice for that. Part of the contentious issue was readable names verses arbitrary fragments that might not be human readable, e.g., a UUID. Even the issue of how the resource is serialized becomes important to understanding the issue, i.e., does the reference to some object include that full URI or is it perhaps just name based, just like a name-based Java reference. It's a bit confusing that we mix up how a resources reference each other verses how, in general, we can reference any object.

We discussed scaling via lazy loading and importantly the ability to unload things so that the heap doesn't steadily grow. It's even important to partially load objects, i.e., proxies aren't enough because sometimes specific features can be hard to compute so you'd like to defer that computation. It's important that EMF allows integration with any persistent representation
so that XML, databases, object-based stores, or repositories can be used. Often the persistent representation has an impact on what type of query mechanisms are supported.

It was also asked if scaling be transparent to the programming model or if we should expect to write our models and algorithms differently to scale better. It seems generally important to think about scalability at design time; it doesn't generally come for free. We concluded that we need good information about examples and best practices based on experience; after all, EMF's EStore API can solve many of these problems. Kenn will start a wiki about best practices.

We the crashed the e4 symposium where an excellent modeling discussion was already underway. It was interesting to hear some of the arguments against modeling because they fit in so well with my classification of all the reasons modeling is stupid.

After that we had a quick summary of the breakout sessions. It was a long and tiring symposium, but very enjoyable.

Later in the evening, the members of the Architecture Council had a nice dinner after which I decided I had enough blog fodder to choke an army, so I'd needed to get it out of my system. Tomorrow promises to be full of interesting talks followed by a great reception. Stay tuned...

Tuesday, November 18, 2008

Eclipse Summit Europe 2008: The Members Meeting

After a good night's sleep, Monday was the start of beautiful sunny day. We did some sightseeing in town to begin the day.


In the afternoon, I attended the members meeting. There are now roughly 190 members, 22 of which are strategic members, and there are 932 committers from 75 organizations. These days we get roughly 1,000,000 package download requests per month. We are expecting about 400 ESE attendees and there are roughly 35 sponsors.

Mike talked about the initiative to create industry working groups as a way to drive the growth of the foundation and to diversify its membership. Eclipse has good infrastructure and processes, including a sound intellectual property process, to help facilitate collaboration. The working groups can leverage existing projects, feed back their requirements to those projects, and even initiate projects to address any gaps. Our first example is the Mobile Industry Working Group led by Motorola and Nokia which will focus on creating a Model Application Development Kit.

There were questions about licensing issues for these working groups, i.e, will they be stuck with EPL? Mike pointed out that 3 projects are already dual licensed, e.g., EclipseLink is also licensed under BSD so that it be consumed by GPL and be part of the JPA reference implementation. He also indicated that there are efforts underway at the board to make it possible for something like CDT's Wascana distro to be hosted at Eclipse.

Karsten Schmidt talked about the SAP Eclipse story.


SAP decided to support Java in 2000. They chose Borland's JBuilder as their IDE but they needed better access to source than was provided by JBuilder in order to build their own specific extensions, so they evaluated Eclipse and NetBeans. They also needed a model abstraction layer. By 2003 they had a version of NewWeaver based on J2EE 1.3 with Selena as their modeling layer. At that time, Borland acquired TogetherSoft and Modeling Infrastructure (MOIN) based on MOF 1.4 was started as a research project. They decided not to use EMF because they needed something that worked on the server side; how odd given that EMF has always worked there. By 2006, they became the first major vendor certified for JEE 5. By 2007 they first signed the Eclipse committer Agreement and supported a committer on WTP. They also donated their memory analyzer project to Eclipse and they now have a BPMN modeler based on MOIN.

Some challenges they faced included their conservative policies that kept them from participating; without participation they could not have real influence. Things like the EMF/MOIN split are an unfortunate consequence of that lack of direct involvement. Karsten expressed regret that they were not able to get directly involved with EMF many years ago; I was certainly very hopeful after last year's "Big Models" meeting that we'd be able to work more closely together. Unfortunately decisions made at the executive levels don't always match the wishes or expectations of those of us in the trenches. Karsten is still hopeful that perhaps it's possible to better align EMF and MOIN in the future. They also expect to fully align their current component structure onto a uniform OSGi base, and they plan to focus on the Equinox implementation for that, because the benchmarks for Equinox generally give it the lead and therefore make it the best choice. The fact that it's hosted at Eclipse makes it easier for them to participate in its evolution. It's a brave and bold new future for SAP and Eclipse.

Jeff McAffer presented an overview of the runtime project's vision of the future.


The trend these days, as Karsen just demonstrated, is that people are more and more willing to consume from open source. One problem this surfaces is how to combine those components to build solutions. Many things are possible, including the ability to install a thin Equinox WAR into which you embed your OSGi bundles. The Utopian vision is to be able to use the same component model and deploy it anywhere. We already have all major JEE vendors building on OSGi, although they don't surface that as a component model for their users. A consistent, flexible, configurable component model that allows you to integrate a diversity of components is key.

Next Jochen Krause presented on the motivation behind the e4 effort and the progress it's made.


It needs to be easier to build plugins including doing so in other languages like Javascript. Richer more flexible support for styling is an important goal, along with a service-based application model able to target the web. He wanted to reassure the community that we will remain committed to the 3.x stream for five years or more, and that we plan that 3.x plugins will continue to work in a compatibility mode in e4. We will strive to provide more uniform APIs that avoid singletons and are more finely structured as small components. Even the resource model needs to be more flexible and we need to exploit patterns like Dependency Injection. We expect that the entire workbench will be formally modeled. Overall, the goal is to create a simpler and more powerful application model. An interesting approach that has been prototyped is cross compiling SWT to Flex. He also showed Boris' sample e4 application running normally and running as a brower application; pretty impressive! Of course of invited folks to get involved!

Chris Brockman presented on some of the problems that need to be solved in the business world.


The integration of disparate sources of information across the enterprise is key issue to many. The same information can be interpreted in different ways and often separate sources of information need to be related as if they originated from a uniform semantic source. The SMILA approach is focused on this. The idea is to create a shared architecture standard. Just a single company like Volkswagen might have 500 applications running just in Germany, so even just maintaining connectors for these applications is a significant cost. It's easier for application based on Eclipse because providers can be more easily encouraged to provide integration directly. Important players like SAP have gotten involved. He also drew attention to Eclipse's IP process, which, although can seem onerous, is something that's key to using open source in a way that's enterprise friendly. Ultimately it has extreme value for corporate consumers.

To help bring in the schedule, Ian Skerret gave a very rapid overview of the Mobile Working Group Mike talked about earlier.


It's a great example of the foundation's successful new approach for attracting new types of members.

Martin Oberhuber presented an overview of the Architecture Council, what it is, and what it's doing.


There is a representative for each PMC, a representative for each strategic member, as well as members appointed based on merit. The AC council facilitates mentorship and all new projects must have at least two mentors from the AC. It fields community requests via bugzilla; did you know you could do that? It interacts directly with the EMO. And it acts as a channel for raising high level issues to the board. An example of how an issue was addressed was the change to make the committers mailing list be moderated so it can remain open without becoming a frustrating source of SPAM. The AC can help offload work for the foundation staff by fielding questions directly; we have a lot of experience to share. In general, its overview of the community helps it act as a filter when it comes to issues reaching the EMO and the board. Martin has done an outstanding job making the AC active and effective.

Our beloved Bjorn, acting as Rich, talked very briefly about the activities of the Planning Council,
which has recently set itself up as the body to drive the release train for the Galileo release.


He talked about the impact of the tragedy of the commons, i.e., how everyone might want something but no one is wiling to help make it come about, with the hope others will do it for them. See how he's going to crush those who don't pony up? They don't call him knuckles for nothing. We fully expect that Galileo will release on time and on schedule just as every previous release.

Maxim Groouchevoi introduced instinctools, a new Eclipse member based in Belarus.


He talked about the DITA technology developed by his company. The idea is to provide single-source support for the documentation process and to support the full documentation life cycle.

Finally Ralph talked about the growth of Eclipse in Europe. There he is explaining how he's carving up the European pie.


All this talking and listening is hungry work so a group of us stormed a local restaurant in search of a cozy table for 22.


It was a long hard day, but even the walk back was pretty.


I was looking forward to the symposiums!