Monday, 29 December 2008

It's Here, it's Finally Here!

The second edition of the EMF book physically arrived at my doorstep today! Here she is, modeling her new improved jacket with the Ecore Tools diagram of the Ecore model as a backdrop.

What a stunningly fashionable combination! With almost twice as much meaty content that's more than twice as excellent as the last edition, I expect it will be all the rage in the new year. According to Amazon, if you order today, it will still arrive in time to ring in the new year on Wednesday night. We live in a world of instant gratification...

Wednesday, 10 December 2008

Eclipse Banking Day in New York

On Monday I was headed for New York a day ahead of the Eclipse New York Banking Day event. I whipped out my camera as we approached Manhattan.

I haven't been to New York in more than a decade. Welcome to the Big Apple!

I grabbed a taxi and was soon in the mid island tunnel headed for my stay at the Stay hotel.

The hotel was very reasonably priced, had nice rooms, and some funky decor in the lobby.

After dinner, I walked around to see some of the sights. New York is a very lively city and there is a great deal to see. Too bad I didn't have more time to spend here.

On Tuesday, Ian started the day with a quick overview of the agenda and expressed gratitude to the sponsors, Actuate and Sybase, as well as to Ted Epstein of Morgan Stanley for hosting the meeting with excellent facilities.

Next Mike provided a high-level overview of what's happening at Eclipse these days
and why there is value in getting involved.

He talked about the following maturity model for how organizations deal with open source.

Business agility---responding quickly to changing regulations, standards, and customer opportunities---is becoming increasingly important. Today's information technology solutions tend to result in technology silos that are poorly integrated and plagued by vendor lock-in. Eclipse offers a new approach: open collaborative development. It has established best practices for multi-organization collaboration, including development processes, intellectual property sharing, technical architecture, and sound governance. Defining a platform in open source with transparent processes that are focused on meritocracy will definitely encourage many pragmatic people to get involved to share their innovations. Businesses should focus on where they can offer competitive differentiation. There's too much effort going into building the whole enchilada in today's complex world, and that effort detracts from being able to focus on the important factors that would actually provide better value for in terms of specific business needs. Defining and implementing a common banking platform would help the industry as a whole move beyond it's current cyclic reinventing of the wheel.

Next Jochen Krause talked about e4 and where Eclipse as a platform is headed.

One of the tool challenges we all face today is how best to make developers productive with quick write-test-debug cycles while producing modular componetized applications with consistent and stable APIs. The mission of e4 is to build a next-generation platform for pervasive, component-based applications and tools. It's very important to reassure the established community that the 3.x stream will continue to be supported for the foreseeable future. Eclipse has been growing for many years, but nothing has ever disappeared, so there are often multiple ways to do the same thing, e.g., storing preferences. Some cleanup is required. He talked about the effort to model the workbench so the same type of technology folks are using to model data within their specific domains will be used directly in the platform to model the workbench. For the future, we should anticipate the browser becoming a more viable delivery vehicle for applications.

Andrew Montalenti and Ted Epstein described MODeX, Model Oriented Data eXchange, which is a graphical modeling IDE that includes a code generator, language-specific runtime components, and life cycle management tools.

Direct XML manipulation is the least common denominator in the message exchange space. Toolkits focus on SOAP envelopes, transport, and message dispatching and handling. XML Schema is something that's often ignored, or treated as only a design time thing that's not properly maintained. Developers have been left to manually translate business concepts into XML formats with issues like poor support non-containment references getting in the way. Their solution is to have developers focus at a higher level of abstraction and to generate schemas and other detailed low-level artifacts from well-defined abstract message contracts.

Andrew gave a demo of MODeX designer, which uses GEF, EMF, GMF, JFace/SWT, and Equinox, and showed how to design entities, which he compared to EClasses in Ecore, using the tool. It supports tree-based editing as well as a graphical view of the entity relationship diagram. The user can create multiple different graphical views of the same underlying model. He showed all the different things they can generate including Java, C#, and C++, as well as schemas and described how some of these generated things can be used. MODeX includes support for views that allow you to filter down the overall model to the relevant information actually needed in a particular context; the corresponding schemas for these filtered views are generated automatically. They don't yet have a good graphical representation for views, but they plan to provide that soon. MODeX is yet another extremely cool example of how powerful model driven development can be in any domain.

In his talk, Christian Meier briefly described UBS' experience with Business Capability Modeling, which involves apply modeling to abstract over existing business processes, technologies, and organizational structure.

Philipp Kutter quickly outlined the EMF model they've designed to capture all this high level information.

Tatyana Staver gave a short talk about the Eclipse Open Financial Markets Platform, which is focused on creating a middle office financial markets application.

She reiterated the earlier theme about avoiding the continuous reinvention of the wheel that we see all over our industry. Build a platform and do it right once. Then evolve it and benefit from the expertise and contributions of others.

Edwin Park shared RBC's experience with Front Office Fixed Income Application Integration.

In the past, trading applications were localized to specific product types so there were multiple applications doing much the same thing. It would be more more effective to have one integrated user interface that could be tailored to address all the specific needs. A componentized architecture is ideal for providing a common base and allowing specializations to be seamlessly integrated. The fact that Eclipse already provides a rich variety of useful of components is a big win. They're making use of p2 to help with making installation a snap. The shift from monolithic solutions to component-oriented solutions is a big organizational shift: there is more reliance on shared infrastructure and that requires better coordination across larger groups of people. Internally their development effort follows much the same process as Eclipse itself uses: they focus on addressing real immediate needs and involve others in realizing the solutions. He stressed that it's important to get management buy-in for investing in shared technology projects.

Next was my turn fo the EMF dog-and-pony show. First I took pictures of the audience.

Notice below that the monitor is showing a screen saver of my garden? I started by explaining that I was going to jump to the conclusion. I pointed out that this beautiful garden was modeled first, on grid paper, before I went out and landscaped it. The conclusion being that it's important to model first, and take action in light of that design, if you want to achieve a beautiful result.

In this picture you can see in the monitor a picture of me taking a picture. You got to like that!

I think it went well. Almost no one fell asleep, and even the one guy who did, didn't snore very loud.

After a break, Jochen Krause talked about how RAP extends Eclipse RCP to the web.

The idea of course is to have a single code base that supports both RCP and the web. Just shoehorning an RCP window into the browser didn't go over so well though, so there was an effort to map the UI in a more browser-friendly way. I totally perked up when he said that cell editors are working the latest version of RAP. Woo hoo, now it can support properties views as used by an EMF generated editor.

Finally Henrik Lindberg of Cloudsmith and Jeff McAffer of Eclipse Source described Provisioning Eclipse in the Enterprise.

Of course p2 is the focal point for this. Unzipping files just doesn't cut it and the old style update manager, which p2 replaces, had many limitations. The installable unit, or IU, is the star of this new show; everything is an IU and everything is installable. With p2, a key design point is the separation of the metadata from the artifacts for which they provide information. The overall design is based on a director for managing the metadata, a repository for managing the artifacts, touchpoints for managing the runtime targets, and an engine to produce profiles or runnable configurations. Suffice to say, p2 is an installer on steroids.

The banking day was a great success. Kudos to Ian for helping organize this, to the sponsors for helping fund it, and for to Morgan Stanley for being such excellent hosts! It was a great event and it was very nice to meet so many interesting people. For example, I ran into Jeff Ricker whose name I recognized from the EMF newsgroup.

After that, Jochen, Mitch, Jeff and I headed to JFK for our 8:15PM flight to San Francisco for the Eclipse board meeting.

I didn't arrive at my hotel until well after 1:00AM PST, so it was a very long but productive day.

Friday, 5 December 2008

The Church of the Holy Metamodel

I knew it was only a matter of time because I've been seeing various ominous signs. Celestial bodies are moving into an unusual alignment.

So it didn't surprise me in the least when Father Ralph Müller, one of EMF's many zealots, err, I mean disciples, came to me with a story about hearing voices that he believes were from a supreme being. It might actually have been His Holiness Mike Milinkovich, but in my fanatic, err, I mean learned, opinion, that's close enough. The gospel according to Ralph is that God uses EMF. Now this should really come as no surprise to anyone---of course any self-respecting designer would model their creations first---but it's nevertheless a startling revelation to many. It really begs for the creation of the Church of the Holy Metamodel; I'm writing the Eclipse project proposal for it now. We will enshrine Ecore as the fundamentalist's pure self-describing model that binds all creation under unity. Feeling totally inspired, Sister Amber went out on a pilgrimage in search of visions, or perhaps for a nice place to make yellow snow; everyone is inspired in their own way.

The timing could not have been better, because Brother Dave Steinberg has been working tirelessly in seclusion on The Really New Testament, also known affectionately as the second edition of the EMF book. He just completed this sacred task. His compilation about the life and times of Ecore will be unveiled December 24; order now because you won't find a free copy in every hotel. It's is a delectable compelling morsel you definitely don't want to overlook.

To kick start our new church, we began with a good old fashioned purging; nothing brings a community together like a witch hunt. Our witch was called SDO, a tainted offshoot of Ecore we'd all like to forget, so we scratched it from our history books. We're definitely feeling much better now that the SDOectomy is behind us. A little sprinkling of holy water along with a heart-rending blessing from Brother Nick, and the exorcism is done.

Though not as astounding as Ralph's revelation, I had an amazing, almost miraculous, experience of my own: I went out to the car this week and found this stunning revelation on the license plate of my very own car!

I believe this to be a sign calling for me to preach the holy word according to modeling. To make a fresh start, one of the ancient practices I'm thinking of reviving---you just don't hear enough about it these days---is shunning. Like witch hunts, it's a great community building experience; not so great for the witches of course, but hey, there are only a few of them and many of us, so it's for the greater good. I'm just not sure whom to shun first, so I'm open to suggestions.

Tuesday, 2 December 2008

Modeling: Too Much of a Good Thing

With the EclipseCon Program Committee meeting scheduled for 10:00AM this morning, I finally had to grab the bull by the horns.

That is, I needed to review all the EclipseCon 2009 modeling submissions before the meeting. There are 11 tutorial proposals, but only 2 slots as well as 20 long talks, but only 4 slots; I'm in the awkward position of having to consider my own stupid modeling talk among the candidates. Assuming we divide our 4 hours of short talks so half the time are 30 minute slots and the other half are 10 minutes slots, we have 20 30 minutes talks but only 4 slots and 8 10 minute talks for 10 slots. We clearly have enough excellent material to fill a whole track for a whole week. I know it's been said that too much of a good thing can be wonderful, but it seems that a great many people are going to be very disappointed. Oh well, it's a bridge we're going to have to cross, like it or not.

Of course my first approach will be to whine for more slots, but whining will only get you so far, even though I'm very good at it! Few can snivel as well as me and I'll have Rich Gronback to help me. Personally I think it's time for an Eclipse Modeling Summit; Hawaii would be nice. Assuming that whining will get us only so far and that Eclipse Modeling Summit won't happen any time soon, I'm left wondering how best to make decisions. For example, will attendees want an EMF and a GMF tutorial, or will they want different cool things that haven't been offered before? If you have opinions, please feel free to spout them.

No matter what, rejecting proposals won't make any new friends I'm sure, so it's good that at Eclipse I can buy frienship. Apparently friendship requires long term maintenance though. I was the 2nd donor as well as the 400th. I really like the high speed download mirror.