Thursday, 31 July 2008

New Beginnings

I'm back from my fantastic sailing trip from Quebec to Newfoundland on the Canadian Sailing Expedition's Caledonia. Isn't she a beauty!


I've seen parts of Canada I've never seen before and that's served to remind me that I live in a truly spectacular country with a rich diversity of cultures and natural beauty.


Quebec City has all the charm of an old European village, which isn't surprising given that it's celebrating its 400th birthday! Vive le Qu├ębec!!

What could be more inspiring than a minke whale swimming in the foreground of this tiny Newfoundland village?


This trip has really helped to make my spirit soar with new passion.


As always, all good things must come to an end, and so the sun sets on another vacation.


Coming back to find not a single EMF newsgroup question in need of my attention was certainly very gratifying. It's a great new beginning for my journey into the unknown.

Saturday, 19 July 2008

Bon Voyage

Yesterday was the official last day of my 16 years of employment at IBM. I marked the occasion with a trip down to the Markham lab to drop off all the old hardware along with a few other odds and ends. After that I went out for a "last lunch" with some of my lab colleges which was followed by a very short EMF "planning" meeting with Nick, Dave, and Marcelo back at the lab. I thought I would be more emotional, but perhaps it hasn't all sunk in.

Today I spent time preparing for my 10 day cruise on the Caledonia.


It's exceedingly good timing to start my new adventures in life with a particularly cool new adventure. By tomorrow night, I'll be sailing into the sunset.


I don't know if they have internet on the ship, but I'm going to pretend they don't even if they do. So don't expect to hear anything from me until after July 29th at which point I should have some really cool new pictures. I hope the rest of the EMF community helps to look after the newsgroup.

Wednesday, 16 July 2008

Statistical Trends in Modeling

Yesterday's posting about BIRT job trends was interesting and naturally it prompted me to do a few searches of my own, not that I'm competitive or anything like that! I thought I'd share the fruit of my labors.


Searching for "EMF" all by itself turns up some bogus matches, so I used "Eclipse EMF" instead.


That's quite the growth spike. If we look at the absolute scale though, the graph has the same shape, but the axis changes to show the percentage of all jobs that match the search term, i.e., around 0.001-0.002.


If we do a more general search for "Eclipse Modeling" the graph doesn't have the same thousands of percent growth spike to it, so that appears far less exciting.


But switching to the absolute scale is interesting because it reveals that while the growth curve is not spectacular, that's because a significant number of matches have existed for quite some time. Even more interesting is the fact that there are 10-20 times as many matches.


Three lessons we've learned:
  1. Take any statistics with a grain of salt because it's easy to to get a distorted perception if you're not careful about exactly what's being measured and what those measurements really mean.
  2. Learn about EMF and modeling. It will help you find a good job.
  3. EMF jobs are breeding like flies.

I'm eagerly anticipating my next trip to see parts of the world I've never seen. There are bound to be some good photo opportunities! I wonder what it will feel like to be unemployed on Saturday?

Sunday, 13 July 2008

Specifications and Standards: The Good, The Bad, and The Ugly

I think our industry might soon have more specifications than stars in the known universe. Fortunately, even if we run out of meaningful names for them, we'll never run out of UUIDs. Goodness knows many modeling types just love their UUIDs, even if a UUID does use up more space than the object it's identifying; but I digress. Not surprisingly, there's even a UUID specification, so we can be absolutely certain that no two specifications nor two modeled objects need ever unintentionally use the same identifier. It would really be a fly in the ointment for there to be confusion, it would be very antithesis of what specifications are all about.


Specifications and standards are the cement that props up and binds our growing, global software edifice without which we'd be using an abacus or slide rule. And of course in this day and age, there's nothing finer than an open standard, given that being open, like motherhood, is simply an unassailable virtue. To get a good sense of what specifications are all about, just have quick glance at this this poster:


Clearly standards help to simplify the lives of users and developers alike by precisely spelling out expectations for well-defined behavior so as to facilitate interoperability. I know this poster is exceedingly lovely and that you can't truly appreciate all the virtues of the fine print unless you render the original PDF on paper the size of a wall poster, but please don't do that, the world's trees are disappearing at an alarming rate already and it would be very sad if standards contributed toward global warming and the loss of wetlands.


Now don't get me wrong. I'm not suggesting that specifications and standards are simply bad, I'm merely suggesting that they aren't pure virtue. When entire organizations such as WS-I are dedicated to cutting out the cruft produced by other organizations, something has obviously gone more than a little wrong. In fact, standards are even used as political weapons. Can you think of a better way to tie up your competitor than to have them wasting their time implementing a tainted specification rather than spending their time wisely on something innovative and hence competitive? Standards can be a great way to enforce mediocrity.


It should be clear that standards bodies are not the place to innovate new things. It should also be clear that while large organizations might look like bottomless pits of resource, their massive inertia makes it difficult to turn on a dime. Hence they tend to thrive on standards and often more so than smaller organizations. Innovation thrives on agility and the willingness to explore radical new ideas, while standards and specifications, when working properly, thrive on codifying well-established best practices; this dividing line is too often blurred these days so it's best we remain vigilant about the flies that might get into the ointment.


I particularly love working at Eclipse because it's the kind of place where the two worlds meet. Most gratifying of all, at Eclipse the committer is king; specifications are just a tool, a means toward an end, rather than an end unto itself. Developers know politics when they see it, and the good ones, when given a choice, will focus on implementing innovative things, even if those aren't yet standard things. We can let politicians worry about standardizing innovations after the fact, as should be the case in the natural scheme of things.

Thursday, 3 July 2008

Where's the Modeling Package?

I'm a little disappointed now that Ganymede is finally out. Of course I'm generally in a funk whenever I actually reach whatever goal I've ever tried to achieve.


It helps to remind me that goals are nice for setting direction but are generally disappointing when you get there; it's best to enjoy the journey itself as much as possible because it lasts a lot longer than does the goal. But I digress, and so quickly too. Speaking of which, our neighbor had a very nice Canada Day party complete with spectacular fireworks.


Getting back to my disappointment, have a look at the Eclipse home page with its lovely moon shot that includes a "you can't miss it" link to the Ganymede downloads. It's just so clickable and soon you'll be at the Gaymede download page itself. But where the heck is the modeling package? And since I don't see it there, how do I find it? The navigation bar has a Download Packages link, but isn't that where I am already? As an exercise to the reader, see if you can figure out how to find it...


Well, if you hunt long enough, perhaps you'll find the "More Packages..." link in the far right hand column; it's not listed under the names of the other packages in the left column where you might find it more easily. This link takes you to the annex where the second class packages live; the ones not popular enough for the main download page with its precious real estate that's carefully tailored based on the "less is more" principle. You have no idea how much I dislike the "do more with less" principle; I'm sure many readers will understand exactly what I mean, but I digress yet again.


If we really wanted to do more with less on the main download page, isn't it a little odd that the page has a banner with a link that navigates back to the same page itself? Doing more with less seems to argue that a circular link along with a big banner are actually doing less with more.


Now have a close look at the 10 most popular projects on the right. Given EMF and MDT on the list, it's a little odd that the modeling package is so unpopular. And speaking of popularity, given that accurate download statistics can't be computed, 239389, what exactly does determine popularity? It seems to me that making something hard to find might well impact its popularity.


It's been argued that adding more packages would move the member distros farther down the page and make them less reachable. But if that's such a big concern, perhaps we should put the member distros at the top, and hey, we might even add a link for it in the navigation bar. After all, member revenue drives the foundation's budget and having your distro be prominently displayed helps derive value from Eclipse membership fees. Or perhaps the distros could be put side by side with the packages to make better use of the precious real estate. In any case, on a 1050 line monitor, the distros aren't visible anyway, so it seems like a weak argument at best.


Note that Borland, Itemis, and Obeo are strategic developers heavily invested in modeling so I expect some board discussions on this topic of membership value on the main download page. I think the random appearance of distros along with their own separate overflow page is also kind of bogus.


It all makes me wonder if it wouldn't be better to have an expansion swizzle that lists additional packages/distros on the same page rather than having to navigate to a different page? Or even just to make the overflow link be more noticeable? Of course I'm far from being an expert on marketing or proper web page design, but I'm disappointed that the main download page is picking favorites. No matter how you look at it, it's certainly clear that the current approach doesn't market Modeling well at all, and that fundamentally disappoints me.