Saturday, September 22, 2007

Predation, Parasitism, Commensalism, and Mutualism in the Garden and in the Community

Every fall death stalks my garden in the form of this beautiful but deadly predator, the Great Blue Heron. No frog or fish is safe and often one or two of the careless will disappear before I can dispatch Ruby to chase it away.


Predators come in many shapes and sizes, like this cute little toad:


Ruby had heard that toad licking was all the latest rage, but she tells me that no, licking a toad doesn't actually give you a good buzz.


The praying mantis is one of my favorite insect predators.


Predators serve a role, but they result in the death of the prey. Predators in the community are something we'd all like to live without, but predation is a fact of business life just as it is in our environment.

My garden is also full of parasites and of all these, the leech is the most disliked.


Parasites don't actually kill their victim, but they do cause harm. Apparently leeches have medicinal use because of the anti-clotting agents in their saliva but I'd still don't like them. Often a community will have a few parasites as well. There are always a few people who are just like leeches, i.e., they drain away your lifeblood until sated giving nothing in return but a scar.

But, in a community, commensalism is the norm. The users of open source software benefit and in doing so cause no harm. Just as this frog uses a lily as a convenient platform from which to ambush its prey without harming the flower.


What we'd like to achieve in a community is mutualism where both parties in the interaction benefit. This bee on a sunflower is a prime example, benefitting from the nectar and the pollen while ensuring the diversity of the sunflower gene pool by transporting the pollen from flower to flower:


A thriving community is driven by mutually beneficial behaviors. Users help test the software and help make it better with suggestions. Some individuals eventually become contributors and will directly enhance the software. Others might help document it thereby making it more consumable for others. A few will even strive to become committers to invest even more of themselves.

For quite a few weeks now I've been watching the geese practice flying in formation. They tend to do this every evening for the late weeks of summer.


I find this a particularly striking example of mutually beneficial behavior at work. Most folks probably know why geese fly in formation and it's not because they just love to hang out together. The goose flying the front has to do the most work, and those behind benefit by virtue of getting a little bit of extra lift from the turbulence created by the goose in front. They need quite a bit of practice to learn how to fly in this way. Each goose will take turns leading, and when it tires, it will peel away, falling back to the rear, allowing the next goose in line to take the lead. In this way, all the geese benefit and get to their destination with less effort than it would take to get there alone.

Let's try to be like the geese and act cohesively for the mutual benefit of our whole community.

Wednesday, September 12, 2007

Diversity is More Than Just a Symbol

With all this recent talk about diversity, imagine my surprise when I got up just past the crack of dawn this morning to see the very symbol of diversity arching across my backyard.


This is just too coincidental and clearly something that I feel compelled to share with those who sleep in well past the crack of dawn.


Do you see how all the different colors of the flowers are complimented by all the different colors in the rainbow? Diversity isn't just nice. It's pretty too. And for a successful project at Eclipse, it's even expected if not absolutely required.

Sunday, September 2, 2007

The World Reflected in the Eyes of Another

The unofficial end of summer is always a time for reflection, so it's kind of cool to see myself reflected in the eyes of a frog:


From this perspective, it's clear that I'm rather large and intimidating which helps to remind me that others are likely to perceive me very differently from how I might intend...

It's also apparent that I'm not the only one always on the lookout for bugs!


The bugs themselves are busy too. This bee is absolutely covered with summer's bountiful harvest of pollen.


I'll bet most people have never stopped to notice how many kinds of bees are really buzzing around out there. This one's busy lapping up sweet nectar as well as collecting protein rich pollen on her hind legs.


I'm sure that even fewer people notice that the flies too are rather pretty if you take the time to look really closely.


Life is a rich tapestry full of the unexpected. I don't even know what kind of bug this is, but it's certainly fierce looking!


Contrary to popular believe, I don't spend my whole life answering newsgroup questions. It's certainly one of the gardens I nurture with perhaps a little too much zeal. But I do have time for my other gardens too.

In EMF-land, we're just finishing off polishing the final chapters of the second edition of the book and we've decided that since it's been so incredibly painful we should prolong the short term pain by writing an appendix to describe the new features of EMF 2.3 so that we can avoid the longer term pain of ever having to write a third edition. Like my hardy Hibiscus, it's taken a long time to bloom.


I'm also pleased to have finished a prototype for a more flexible and powerful URI converter along with support for content types; please see 191077 for patches. The enhanced URI converter APIs support things like exists, delete, timeStamp, and isReadOnly to allow one to build a fully functional application without hard dependencies on the backing store APIs used to prop up your resources. In addition, it supports contentType to allow one to define resource factories based on resource content rather than on file extensions. I'll need to write some documentation to describe how best to exploit these new capabilities. Probably it will be easier for folks to provide feedback once we commit the changes and start providing builds for EMF 2.4. Just as the garden gets better each year based on experiences from previous years, so too EMF keeps getting better.

So let's say goodbye to summer with the attitude that there will always be more summers and likely even better summers. These sunflowers are most certainly a very lovely way to say goodbye.

Sunday, August 26, 2007

On the Lookout for Bugs

I'm always on the lookout for bugs. Since EMF has so few of them, I have better luck finding them in my garden. The big dragon flies are laying eggs now and this one doesn't seem to have her partner to help her:


If you time it just right, you can catch them in mid flight!


They're quite the amazing creatures dating back to the earliest days on earth when life first took to the skies. Good solutions have real staying power on this planet!

Thursday, August 23, 2007

Closely Supervised Work

I recently gave up my office at the Toronto lab to work at home full time and to also enjoy the tax benefits of having a home office. You might ask yourself though, who supervises whether you are really working when you are at home and not just puttering in the garden of Eden, or is it the garden of good and evil? Anyway, let me assure you, my every keystroke is closely monitored at home more so than at the office.


As you can see Amber prefers to be on top and is far more vigilant than Ruby in her supervisory duties. You can imagine that neither of the girls likes it when I need to use the mouse, being right handed and all, so for their comfort and enjoyment, I bought a very cool USB ThinkPad-style keyboard with the UltraNav button right on the keyboard. Now they can rest their little chins and paws on either arm in style and in comfort without all those annoying lurches for the mouse. It's good to keep your supervisors as happy as possible!

Monday, August 20, 2007

The Road Not Taken

I'm sad that Kenn Hussey has left IBM.


I'm also sad that Wassim Melhem is leaving too.


Both will be working at Embarcadero. My sadness is somewhat tempered by fact that they will be working on technologies that involve EMF, so I expect that I will continue to work with them both.

All this makes me introspective and brings to mind one of my favorite poem's by Robert Frost titled "The Road Not Taken," which of course calls for a gratuitous photo I took on Saturday.


Two roads diverged in a yellow wood,
And sorry I could not travel both
And be one traveler, long I stood
And looked down one as far as I could
To where it bent in the undergrowth.

Then took the other, as just as fair,
And having perhaps the better claim,
Because it was grassy and wanted wear;
Though as for that the passing there
Had worn them really about the same.

And both that morning equally lay
In leaves no step had trodden black.
Oh, I kept the first for another day!
Yet knowing how way leads on to way,
I doubted if I should ever come back.

I shall be telling this with a sigh
Somewhere ages and ages hence:
Two roads diverged in a wood, and I--
I took the one less traveled by,
And that has made all the difference.

Thursday, July 26, 2007

Looking for Sexy Graphics?

Now that I have your undivided attention, let me further shock you with a graphic scene of the activities that are taking place in my own backyard!


On a related note, many of us building sexy user interfaces are often on the lookout for cool icons and of course we drool when we see all the lovely graphics that are in Eclipse. Bugzilla 170720 discusses the desire for there to be a central place to beg, borrow, and steal such graphics as well as a place to ask for help creating new icons that will fit cohesively within Eclipse's overall look and feel. Interested parties are invited to get involved in fleshing out a proposal for getting this initiative off the ground using the wiki at http://wiki.eclipse.org/Eclipse_UI_Outlet.