2006s

Celtix Enterprise

IONA, the company I work for, has just released an Open Source bundle called Celtix Enterprise. It's a collection of Open Source elements geared towards helping you create your distributed SOA infrastructure -- we've integrated and tested these.

So where's the return? IONA is doing the for-pay training, consultancy and support for this product. Check it out and let me know what you think.

celtix_ent_components.jpg

Release the Hounds!

Or, in this case, the incubating projects. Apache Yoko incubator has published an M1 release. Yoko (no, I don't know why it's called that) is a fast Java CORBA server which can be used in Open Source JVM and JEE implementations. Hot on it's heels, it looks like the Apache CXF (yes, I know why it is called that - don't ask) is gearing up to an imminent 2.0-M1 release. CXF should be very interesting to people who are doing JAX-WS service development - I have been using it myself in another project and it has worked very well.

Back in the SOA Tools Platform project we're adding UI support for JAX-WS service development and we are testing against CXF to make sure that we are generating the correct classes and dealing with the JAX-WS and other annotations in the right way.

WSDL to *

It's expected that once you have an interface language, like WSDL or CORBA IDL, that you will have a suite of tools that allows you to generate stubs, skeletons, starting code, tests and so forth from the basic interface description in the implementation language of your choice. This is a very important productivity element for any developer, as having to code up server skeletons by hand is just an outrageously dull task.

When I was putting together CORBA systems, I used a tool called idlgen which saved huge amounts of time by generating complete test suites with randomized data, and allowed you to produce stubs, skeletons and mainline code in a jiffy. In my current work, I'm using EMF to represent a suite of models, from which I generate implementation code.

But there's one thing that's starting to bug me about some code generation tools, and here I'm talking about one particular tool that is almost always called wsdl2java, and that is there are so many of them. Everyone! Stop writing new wsdl2java tools and just write a wsdl2star tool instead! Take wsdl4j or Woden as your model and write some backend processing that allows people to develop Velocity templates, or write JavaScript/E4X code to generate the necessary. Wrap all of this up in a single Open Source project and kick-off a community of Open Source script/template developers so that other projects can contribute their code generation incantations (there's your regression test suite too, by the way).

Is there someone doing this already? Let me know if you find them!

Eclipse Summit Europe

Barely has my backside hit the office seat when I am off on a plane again, this time to the Eclipse Summit Europe.

Everytime I come to an Eclipse event I find out some new stuff. Here's one example: in STP, we've been doing some work on developer support for JAX-WS, code-first web service development. Here we've put together an annotations view, which allows the developer to edit the parameters of an annotation with support for validation of the annotation content, hints for enums, that type of thing. At the Summit, I attended a presentation by one of the guys from the Dali project</a, which is all about the definition and editing of Object-Relational (O/R) mappings for EJB 3.0 Java Persistence API (JPA) Entities. Of course, JPA uses Java5 annotations to implement its POJO persistence, so it makes sense that Dali have invested time in creating a Java annotation view, similar to what we've done in STP. The next job is to see how well the two approaches can be merged.

I was going to include the STP bugzilla link here, but bugs.eclipse.org appears to be suffering some database overload at the moment -- I'll update the posting later.

Mixed Experiences with OSS

Ok, this is the last entry on the Gartner OSS Summit, I promise. And, rather a regurgitation of the keynotes, etc, it’s my own impressions. It was surprising to me to see how many of the attendees were au fait with Open Source software being used in their organizations. It was even more surprising to see how many of those who were purposefully using Open Source actually changed the source to meet their needs – unfortunately I couldn’t get any information on how many of the changers submitted patches. Conversing with individuals that stopped by the IONA booth showed a vast continuum of experience with OSS. For example, one visitor, employed by an enormous and well-known bank, spends his time working in a group that performs risk assessments on OSS and approves it for use in the IT infrastructure. Other visitors from budget-free government organizations were keen to make progress on projects using the lack of license fee as the carrot to lure their patrons. Some others were a little frightened by the whole thing, but of course, felt reassured by Gartner :-) A brief aside - earlier on this year I attended a talk at Engineers Ireland on the merits, and de-merits of Open Source. The protagonists were IBM and Microsoft. I went hoping for a least a minor bunfight, if not a celebrity deathmatch smackdown. Alas, this was not to be as each side of the affair merely introduced Open Source from the perspective of their business models, which are discrete and different. However, one developer person that was there came out with a most excellent question that I will have to paraphrase:

But doesn’t that mean that a developer that does Open Source is debasing their skills and going to put themselves out of job?
It was very nearly a cola-out-the-nose incident. Unfortunately I didn’t get to catch up with the individual after the event to elicit more from him and then attempt to explain why he was barking up the wrong tree. The overall message here is that while awareness of OSS is heading towards an acceptable level in the ‘industry’ (that’s the Silicon Valley definition of the word, not the Hollywood one), there’s still a lot of education to do at the level of the usual corporate decision-maker. Enterprising and visionary individuals continue to market OSS, but having an organization like Gartner, who really are at the top of opinion-maker peak for the traditional big-company IT development teams, pushing OSS as a good thing for business is a very powerful boost.

Gartner OSS Summit Roundup - Mastermind Panel

An open source ‘mastermind’ panel was held at the Gartner conference last week. Mike Milinkovich of Eclipse, Brian Behlendorf of Apache and Collabnet and Stuart Cohen of OSDL. I diligently wrote down all of the conversation until, unused to actually using a non-keyboarded writing instrument, I cramped up :-) Luckily Zack Urlocker was much more diligent than I, and captured pretty much everything in a blog entry - to which I redirect you. Further analysis can be found on Ian Skerrett’s blog - Ian is the Director of Marketing at the Eclipse Foundation.

Gartner OSS Summit Roundup - Tapscott Keynote

The opening keynote of the conference was given by Don Tapscott, co-author of the well-known Paradigm Shift and author of many other interesting treatises. In his presentation, he explored and explained what he termed the Participation Age, in which those of us who are privileged enough to have access to globe-spanning communications tools can join together as independent actors in a powerful peer production effort, free of hierarchies and centralized control. He articulated the business benefits of exposing corporate information to take advantage of a peer production effort - the striking example was that of goldcorp, who revealed geosurvey data on a large area of land and offered prizes for those who could pick the strongest locations for gold. They spent $500000 on prizes, and in return were presented with locations that later product $3.5 billion worth of the metal. He spoke of other ‘open source’ efforts - such as SpikeSource for applications, the MIT Open Courseware project and school- and text-book efforts at GlobalText and Wikibooks. He talked about new approaches to traditional business, such as the development of prosumers that consume your goods, but also in turn produce material (extensions to goods, etc) for you. Overall, it was a good enough keynote for the occasion, giving a broad overview of situations in many businesses where ‘open source’ has been of clear advantage and linking the individual successes with an overall trend. No explanation for the trend itself – but I suspect that it could be related to the co-option of the commons by corporate interests, viz. the purposing of the web and internet to the creation of new commons.

The Other Third

I’ve just arrived in Phoenix for the Gartner Open Source Summit and to get a chance to see how the other third lives - I’ve spoken to OSS developers at ApacheCon, OSS users and extenders at EclipseWorld and now I’m going to get a chance to talk to Directors of IT Planning, Directors on Information Services, Lead Technical Architects and suchlike. This, I should add, is the same Gartner from which an SVP went on record last year saying that open source could have a damaging impact on software innovation. We’ll see if the opinion has changed - from my own perspective, it would appear that the total opposite is true. Also, this is my first time in Arizona. It’s 100°F (a change from 59°F in Dublin) and I’m delighted to see that the skies do indeed have lots of little fluffy clouds.

Eclipse COSMOS

In a previous entry I mentioned SML and the fact that I got a chance to speak with one of the authors at EclipseWorld. During the conversation we were joined by Mark Weitzel and Joel Hawkins and we started talking about something called the COSMOS project - a joint effort between IBM, Cisco, HP, Compuware, IBM, Intel and others. This project was about unifying a lot of the capabilities of SOA Systems Management and agreeing on resource modeling approaches using the aforementioned SML. Just today, I read an entry on Chris Aniszczyk’s blog stating that COSMOS had been proposed as an Eclipse project. This looks like a good idea to me, and from the point of view of the SOA Tools Platform Project it could make it more straightforward for us to incorporate management of SOA resources. By the way, Mark and Joel put together a really interesting talk and demo at EclipseWorld in which they managed to mashup SCA, Tuscany, OSGi, and TPTP. I was totally impressed!

Service Modeling Language

Recently I received a couple of emails linking to the SML specification. I read it a couple of times, and came away with no idea what it was about :-) Luckily, I got a chance to talk to Harm Sluiman, one of the authors of the specification. It turns out that the use of the word Service in the title of the spec is misleading. It’s nothing to do with services specifically. Instead, what it appears to offer is a described means to connect and associate XML documents, with a set of constraints that govern the connectibility. Since this piece of work is very fundamental, it looks to me like it presages something else coming down the pipe. Looking at the list of companies involved, and knowing the effort it takes to construct a white binder agreement between IBM and MSFT, it looks like this is going to turn into a big deal.

Eclipse 2006 - Meetin' and Greetin'

Working in OSS projects means that much of the time the only chance you get to meet co-developers and other community members is when conferences like EclipseWorld happen. Usually, you get to meet brand-new people and have interesting conversations with them. At the Wednesday night Tailgate Party at EclipseWorld I was introduced to Chris Aniszczyk and - I don’t know how we got into it - we had a little conversation about the PDE. My major gripe relating to the PDE is the headless facilities for automating build, test and coverage - after I compared it to something like chewing ground glass, Chris informed me with a grin that he worked on the PDE UI. The PDE UI you will agree is in good shape. You just have to take a look at the new and noteworthy for 3.3 M1 to see that the team haven’t been sitting on their keisters since Callisto. It’s great to use, but from my perspective it’s only part of the equation of shipping software on the Eclipse platform. Back to the PDE headless build. The PDE build works - right now every Eclipse project uses it as far as I know. But it’s got a steep learning curve, and it’s brittle. I know this from experience :-) So let’s fast forward to now: in STP we got the PDE build to work well under the expert guidance of Naci Dai, who is the JST lead and buildmeister extraordinaire. Adrian carries on the torch and maintains the STP build for us. I’ve probably timed this badly, but we would like some more people to help us with build mastery. Send email to the usual address - stp-dev@eclipse.org :-) Update: looks like Felix is heading out of incubation! Update: a sudden conversation on Bug 154251 - Maven2 Integration shows some relevant work in progress.

Unfortunately we - the Eclipse developers - are not in a position to make much of a choice in the matter of building our projects. The PDE build will build Eclipse for us, but nothing else can really engage with the way Eclipse wants to be constructed. Of all the build system approaches available for Java, there’s probably only two that are front runners as an alternative to the PDE build. The first one is Buckminster - but the technology product named for the inventor of the geodesic dome appears to be closely aligned with the existing build approach and has as a goal the ability to materialize component dependencies from other, non-Eclipse, worlds. I confess I don’t fully understand how Buckminster really operates, however, so I’m looking forward to meeting up with some of the guys behind it at the Eclipse Summit in Esslingen in October and asking them to explain in easy words what it is all about. The second one is Maven. Most new java open source projects seem to use maven as their buildsystem. The maven software is itself open source and uses a plugin architecture to permit the addition of new capabilities. The pluggable nature of the software is the basis for a flourishing ecosystem of open source extensions, which is a really good thing. By the way guys, it would be cool if someone could put together a PlanetMaven tracker (see PlanetEclipse for example) or something like that so we could have a single go-to place for plugins and plugin doco. So, maven and eclipse don’t play well together because both of them are trying to do the dependency tracking. But there seems to be a genuine interest in moving towards some kind of resolution here. My colleague Conrad (who’s doing a talk at OSCON in Brussels - I’ve seen the drafts and heard the conversations and I recommend you go see it) tells me that the Geronimo guys are making some good progress in this area as part of their Development Tools subproject. Download the source for the details. I’ve also had a look at the OSGi plugin for maven that is part of the Felix project at Apache, which generates OSGi plugins in a hassle-free manner, but still needs a small amount of work to give it the ability to include Eclipse-specific manifest entries and offer some options on being able to fine-tune the content of the Classpath: manifest entry. Also, the fact that Simula Labs has joined the Eclipse Foundation as a strategic developer makes me think that we’ll see more going on in this area. SimulaLabs are of course the parent of Mergere - a source of all things to do with Java build processes in general and maven in particular. Of course, just because the PDE build is difficult to grok, sketchily documented and somewhat brittle doesn’t mean it should be replaced. Ideally more love here from the Eclipse development community would reduce the burden of the buildsystem maintenance and close off many of the issues. As usual, the community will decide in it’s own way what to do here. Whatever the route taken, any action will lead to an improvement of the status quo.

SOA Tools Press Cuttings

I got the chance to talk to a number of interested tech journalists and analysts during EclipseWorld and sure enough, the STP got some nice mentions in the tech press:

It’s great to get this kind of coverage at this stage. Hopefully it will generate more interest for those developers who might want to use the SOA Tools Platform in the future. By the way, if you are one of those developers, we would really like to hear from you: if you check out our Call for SOA Scenarios page you will see some of the feedback we have received on typical SOA development scenarios. You can edit this page once you create a wiki account and add those items that are important to your SOA development requirements. Update:
A clarification - the SOA Tools Platform has not limited itself to Web Services only, but intends to include the tooling elements to support construction of other mechanisms of service creation - for example, a CORBA interface and its servant implementation. If you look into the SCA Assembly specification, you’ll see that the assembly description has extension points for implementation/interface/bindings, so the space is there to be innovative about service creation. As we grow the STP, you’ll see approaches for deploying Services that aren’t related to WSDL or WS-* standards.

EclipseWorld 2006 - SOA Tools

soatools.png I’m in Logan Airport, on my way back to Dublin after a hectic few days in Cambridge at the EclipseWorld 2006 conference. I went over there with a job to do: as the the PMC Lead for the SOA Tools Platform (STP) project, I had a talk to give, updating the attendees with the status of the project. I think it went over pretty well - our presentation (pdf link) was chock-full of details of the STP sub-projects and included a number of demos of the code contributions.
After the presentation we had some great questions and I’ll be frank and say for some of them I didn’t have really good answers - especially on how the SOA tools project is going to enable and support security aspects of many runtimes and services programming models. I got lucky though when a guy from the Australian Bureau of Statistics volunteered to help us out with putting together our vision around security. Wayne, I thank you most sincerely and look forward to working with you. I’ve subscribed you to the stp-dev mailing list too :-)