Monday, July 26, 2010

Looking Ahead, There's No Turning Back

Time moves in but one direction, forward, so it's generally best spent looking ahead. It helps avoid hitting obstacles, something in which our girls take a personal interest.


Subjectively it moves slowly or quickly, but rarely slowly or quickly enough. With our move to Vancouver and the Helios release quickly receding into the past, there's definitely no turning back. One thing I can say for certain, neither pictures nor words can fully reflect the beauty that is British Columbia.


Did you know that the Helios release included 26 modeling projects? That's one for every letter of the alphabet! How many will be in Indigo? Time will tell. Modeling is most certainly an exciting place to get involved. Not quite as as exciting as wake boarding, mind you; yes, that's really me on the board!


Speaking of excitement and getting involved, our next main event is Eclipse Summit Modeling, err, I mean Europe. With all the excellent modeling content, it's all too easy to get the names confused. I'm a little torn on how to split the slots between tutorials and symposia; we have two half day slots. Probably it will be best to have a half day tutorial and a half day symposium. Given we can have only one tutorial, I'd like one that covers a broad range of technologies in a cohesive way, so I'm going to try to force people to work together on that. I'd also like a symposium that's more interesting than the one I organized last year, i.e., more discussion, less lecturing, more demos, fewer slides. Action packed is the goal. Oh well, that's my problem. Your problem is to get something submitted as soon as possible; the deadline is August 16th---no you can't wait until September---and the early bird contest deadline is August 2nd---only days away! Hurry, time waits for no one.


Looking ahead further, I'm a little concerned about the future of the Ecore Tools project. We had to give it a transfusion of life blood, Kenn's, Cedric's and my own, just to get it built for Helios, but it really needs some active committers for Indigo. Interested? It's a fairly big challenge to tackle, though not as big as this "stick" Else is trying drag out of the water. She's too ambitious to notice it's more of a log really. Not only that, the boat itself is tied to it.


Looking ahead on the personal front, I've been working hard on my own secret project: generating a GWT application that exploits App Engine. I suppose it's not really a secret given that I'm publicized to present this topic at the Modeling Day at Googleplex 2010, err, I mean the Eclipse Day... I'm making excellent progress. I'll be able to share the details when the gem is a little less rough. It's so very nice to be doing some really solid technical work for a change.

Friday, May 7, 2010

Patently Ridiculous

Imagine you had an existing Java data model---a plain old one not based on EMF---that you wanted to map to an EMF model so you could take advantage of all of EMF's cool features. If your data model were a simple bean-style model, you could easily induce an Ecore model from its API; after all, that's what EMF's @model annotations do. You could then easily map instances of the plain old Java model to instances of your EMF model, perhaps using Java reflection, bringing together the old and the new.


What an exciting and innovative idea, you would exclaim to yourself, and to those around you, as you jumped for joy, reveling in your own brilliance.


Sorry to disappoint you, but don't bother. IBM has patented that: 7506303. The lesson learned? Just because something is simple and obvious doesn't mean you can't patent it. So run, don't walk, to your nearest patent lawyer, turn your obvious ideas into incomprehensible legal babel, file a claim, and then sue someone's assets right off their balance sheet, perhaps with the help of a patent troll. Surely such patented ridiculousness serves primarily to suck the lifeblood of the software sector much like collateralized debt objects did the vital stuff of the financial sector.

Friday, April 30, 2010

Change Begets Change

Change begets change. Nothing propagates so fast. I've not blogged in a couple of months amid the whirlwind of change that has become my life. I often feel more than a little in over my head these days.


Change is inevitable so best to embrace it, make it work in your favor. That being said, it's important to choose the path forward carefully, and the company you keep, wisely. It's all too easy to make a wrong turn or to pick up bad habits. Can you say gambling?


My life was on a very steady course up until the time I left IBM. That particular radical change was the beginning of many to follow; it was voluntary and good even in hindsight. But it was carefully planned like the rest of my life. The demise of my partner of 27 years, on the other hand, was untimely, arbitrary, and beyond my control. Such things make one reconsider life's carefully laid plans. It's clear that time is fleeting and that one must make the most of today because there is no guarantee for tomorrow. Workaholic Ed died and the phoenix that rose from his ashes took a really good look around. Guess what? There really is time for me to swim 2km every weekday morning. Go figure!

Looking around a little further, I discovered that I have the greatest neighbors in the world. Okay, granted Warren is a bit of a princess.


So's Linda come to think of it.


But they've helped me more in the last year and a half than one could reasonably expect from another human being. For example, they've looked after my girls for countless weeks whenever I traveled; the girls love it next door. Last week, they even threw a birthday party for Else, the most recent addition to my dog collection.


Most important of all, they've helped make my Frank feel more than a little welcome in his new home in Canada.


Warren and Linda are the epitome of what it means to be good friends and I consider myself fortunate for having them in my life.

Looking around further still at what's happening with modeling at Eclipse and beyond is also eye opening the the extreme. Talk about change that begets change! I'm more than a little gratified and relieved to see that it's taken on such vibrant life of its own. I don't need to obsess quite as much about driving the vision of modeling forward. There are so many others who do that job even better. I've learned an important lesson: don't push the river, it follows by itself! As Kim so aptly put it: Eclipse is like family. What a great family and what a great place to be. Thanks Cloudsmith and itemis for helping make it economically viable for me and for all their other great contributions to the Eclipse community.

Speaking of great places to be, it struck me a few months back that I'd much rather live back in British Columbia. I grew up there. My parents, brother, and sister live there. I like the weather better there. I can grow a more interesting garden there. Frank and I can build a new life together from scratch there. I only moved to Ontario for IBM. So I bought a great property with this view.


My house is already sold, I've got a rental house lined up, and I've scheduled my move for the end of May. Of course there are more changes yet to come.

I write this blog today from Berlin, in summer like weather, as I anticipate traveling to JAX in Mainz next week where there's an Eclipse day and a Modeling day. Could life get any more interesting and exciting?

Oh yes, and it turned out workaholic Ed didn't really die, he was merely transformed into a more well-rounded version of his former self. I've spend the past several weeks porting the core EMF runtime to GWT and modifying the generator to produce GWT-enabled models and edit support on top of that runtime. It's all committed to CVS in time for M7, but I've not had time for documentation yet. Modeling in the clouds; stay tuned for yet more change.

Tuesday, February 9, 2010

How Active is Your Committer Representative?

Now that we're in the middle of an exciting Eclipse board of directors election campaign, you're probably asking yourself, how will I decide for whom to vote? You might well be swayed by folks like Bjorn who are actively campaigning; Bjorn's always got interesting new ideas. Then again, you might prefer Boris' more subtle approach of simply encouraging you to vote; I like that approach a lot! Or you might like Chris' approach of tirelessly and visibly helping to promote our community; how can you not like Chris for that? On the other hand, Doug's more edgy approach could well be just your thing; he's always thought provoking. Clearly it helps to be visible, so I'd better not be too quiet if I want another opportunity to be on the board; I doubt that simply looking pretty in pink will help...

One thing you might consider is how actively involved are the candidates. Here are some statistics about project involvement.






Most of the candidates are quite involved. There are of course a multitude of statistics one might consider, e.g., number of commits. For that you could compare the dash statistics for caniszczyk, bbokowski, dschaefer, bfreeman, and emerks. Great, just what I needed: a sad, ugly reminder of how unproductive my 2009 was; at least 2010 is off to a better start, both personally and professionally. Check out this lovely one-of-a-kind Kim Horne original water color that I recently had framed to hang in my office as a beautiful reminder of the diversity and creativity of our community.


In the end, the choice of representative is necessarily subjective. I'm sure folks will choose wisely based on who most closely represents their own point of view as well as who is most likely to make effective positive contributions. Having seen Chris and Boris in action first hand, I can definitely recommend them for their experience and for having represented the commiters well.

Monday, January 25, 2010

Peripatetic

It was bound to happen: I was finally asked to be a model. I kid you not. The truth is stranger than fiction. It happened at Upper Canada Mall. Leaving a store that sells leather jackets, I was interrupted by a plaintiff "Excuse me sir, would you mind helping us out for a second." It turned out I was just the right build to act as a model for the lady's husband; she and two other ladies were picking a jacket for him. Being incredibly helpful and generally unable to say no, of course I obliged, volunteering my own opinion on which jacket fit best. All the while, visions of an easy life on the Paris runway just standing and modeling flashed before my eyes. But then I started to feel just like a piece of meat and I decided to keep my regular day job where looking pretty isn't all that important.


Life continues to be far too busy. It's pretty much impossible to balance my personal life with all the other demands on my time. I'm writing this post today from Berlin which is in the grip of a frigid winter not unlike the kind one normally expects in Toronto, so I feel right at home. Last weekend I was in Vancouver getting married. Tomorrow I head over to Munich where Peter and I present at OOP 2010; no, I will not be presenting in German though my German is definitely improving, something one might expect when you marry a German. The more German I learn---I can almost follow a conversation now---the more frustrated I am with not knowing more. This coming Thursday Ralph has arranged another Eclipse Stammtisch so I plan to attend that; I'm sure much German will be spoken. Maybe I'll see you there. I just hope it's not so cold.


I don't head back home to Toronto until February 2nd, but I expect to be back in Berlin yet again for the Modeling Code Camp at the beginning of March. Itemis does trainings like this as well. It's unfortunate that more people don't take advantage of the opportunity to get a jump start on exploiting open source technology. It might seem cheaper to muddle through on your own but suboptimal design decisions are likely a much bigger hidden cost down the road. EclipseCon will be yet another cost effective opportunity to learn new things, and yet another reason to travel. There will certainly be a great deal of modeling content. Too bad we couldn't accept more submissions. After EclipseCon I expect a short break in the travel schedule before I head over to Germany yet again for the JAX conference in Mainz. Maybe I should just move to Germany to save all the travel time.

Friday, January 1, 2010

On the Balance

The new year is a time to reflect on how life is unfolding, to chart an effective course forward. Those who are wise consider carefully all the things for which to be grateful so that all the ways in which life inevitably short changes them loom less large. They temper their drive to satisfy their own personal needs and desires with consideration for their impact on the world around them. Life is a balancing act without a simple, obvious, optional strategy. Of course it's better to give than to receive, but only a fool gives to the greedy; something particularly germane in an open source community.


The wise avoid spending in inordinate amount of time focused on all the things around them that might be changed for the better because most of those things are beyond their control, not to mention the fact that "Better for whom?" is not always entirely clear. Instead they focus primarily on the very small number of things upon which they can personally have the most significant impact, always keeping in mind that the easiest things to change, and the biggest source of problems, are themselves.


For me personally, 2009 has been in part an extremely bad year; I've had to learn some painful lessons. Life is short, don't waste precious minute of it. Unfortunately everyone has to learn this lesson their own hard way, based on direct personal experience. I generally did my job poorly, or more positively stated, there's much room for improvement. I'm most grateful to itemis and Cloudsmith for their generous funding of my work and to my family, friends, and the Eclipse community for their support. All things considered, 2009 has also been an extremely good year; I've learned some my lessons exceedingly well and most importantly I've found the one thing I want most of all. On the balance, life is only as bad as you choose to perceive it and only as good as you take action to make it. Let's make 2010 an excellent year!

Tuesday, December 1, 2009

That Totally Sucks You Big Loser

Suppose you went for dinner at someone's house and they served excellent wine, a fantastic main course, a scrumptious dessert, and a salad that made you want to gag. What would you do?
  1. Compliment them on all the good things, overlooking the one bad thing.
  2. Explain that the salad literally sickened you, carefully detailing exactly what was so awful about it.
  3. Something between these two extremes.
Keep in mind that the blue cheese salad dressing might very well be fine quality; the real problem might be that the taste and smell of rotted milk just isn't your thing, i.e., the problem might be subjective, not objective.

It seems human nature to find fault with the world around us. It's not even bad thing. After all, how can one improve anything without constructive ideas for making them better? One must counter that with the fact that it's also human nature to take offense easily to anything that isn't entirely flattering. We generally prefer to hear mostly compliments, especially given the fact that we're getting asymptotically closer to the perfection for which we strive. That's why as children we're taught: if you can't say something nice don't say anything at all. Clearly that's a little too black and white, but that's yet another human failing: to over simplify problems and then come up with simplistic solutions to those. One thing to keep in mind in this drive to achieve perfection through criticism is that focusing on positives, or at least noticing them, generally makes one feel better, e.g., I noticed how lovely these maple trees looked and therefore spent much less time noticing that the wild pigs of Berlin had destroyed the lawn around it.


Given we're all so perfect, of course it's a virtue that we should speak our mind whenever a thought enters it. Every criticism we dish out should be seen as clear evidence of our drive for ultimate perfection. The sharper the critique, the more evident is our keen intellectual perceptiveness. Any mature adult ought to see our commentary as the good kind of criticism, i.e., the constructive kind. Those who do not are, well, over-sensitive, short-sighted losers to be perfectly blunt. With folks like that, one might as well waste time explaining to this water plant that the underwater lily bees aren't about to show up to pollinate it.


Personally I'm more than a little fed up with people complaining about the salad; it tends to ruin the dinner party for the host, and even the other guests who don't share the subjective distaste. It's especially disturbing when the host shrieks back a retort about the gawd awful choice of the complainer's dinner wear. One always has to wonder if the complainers could throw a dinner party or their own, especially given their lack of social graces. I'd suggest they think more carefully about the impact of their criticism before dishing it out. Is it actually valid critique to begin with, or is blue cheese simply not their thing? Most important of all, what good will come from the criticism? Is there perhaps a nicer, more effective way to achieve that goal with an approach that doesn't sound so critical? Sharing your favorite salad dressing recipes without a single word of criticism is probably an approach close to optimal.