Much ado about scripting, Linux & Eclipse: card subject to change

2008-06-13

The streets are empty

Seems Patch is feeling better today, but Bud's a little off. He keeps growling at me for no apparent reason. So, to hopefully calm him down, we went for my usual daily walk.

There's nothing usual about today. The streets are empty, save for abandoned buses. Even multi-lane roads sit empty.

When we got back, I noticed that something had been clawing at my recycle bin.

What the hell's going on today?

Still probably nothing

Last night I couldn't sleep, so designed a bunch of new Ganymede Posters. Looking at them today, it seems I've been thinking a lot about the undead and the end of the world of late. In fact, when I woke up this morning, I had The Future Soon stuck in my head. Brushing my teeth, this switched somehow to End Of The World As We Know It (I Feel Fine), and I had this uncanny craving for peanut butter. Wierd.

Anyway, that cut on my hand is getting strangely puffy. I'll post more as this progresses.

Ganymede Poster Contest, Part 2

So far, the Ganymede Poster Contest has been a raging success, with hordes of submissions swarming over bug 227561. We'll be announcing how you can vote soon, which means there's not a lot of time left to get in your submissions!

Here's a few more, if you're struggling for fresh brains, erm, ideas...

(Click images to enlarge. Get your submissions in now, before it's all over!)

2008-06-12

Probably nothing

This afternoon I went down to the beach to walk my dogs, and while there discovered that there were many feathers and offal scattered (pun intended) all over. I've seen bird-littered beaches before, but this seems... different somehow.

As usual my dogs are fascinated with the taste of goose crap -- it was a struggle to keep them from eating everyone on the beach. Later, when I was giving them treats for waiting for a traffic light, Patch snapped at my hand and inadvertently broke the skin. It still itches.

A few hours later, he threw up all over my living room, and has been passed out ever since. I think he must be dreaming, as he's twitching gently and making strange noises.

I'm sure it's nothing.

2008-06-10

RC3's All Green

RC3's all green. Red noses? no
EPP blooms for me and you
And I think to myself, what a Ganymede world

I see lines of code compiled for me
With bright JDT, and dark PDE
And I think to myself, what a Ganymede world

The projects of Ganymede, so pretty in the sky
Are also on the faces of people going by
I see friends shakin' hands, sayin' "I <3 p2"
They're also saying "Eclipse is you"

I hear bugs a'squashin', I watch them go
The teams do much more than I'll ever know
So I think to myself, what a Ganymede world
Yes, I think to myself, it's a Ganymede world

Oh yeah

Louis Armstrong (Weiss & Thiele) - What a Wonderful World

2008-06-06

HOWTO: Contribute

There's been a fair amount of discussion about volunteers and community outreach of late, both on the Planet and in the newsgroups. The following is probably nothing new, but here's my take.

In eclipse.platform.swt, Ed said:

Human nature is such that if everything is working smoothly, for example, if every desired SWT feature simply appears out of thin air, then there is no compelling need to change behavior. Only when things get painful or uncomfortable is action taken. If the belief is that others are responsible for providing the level of comfort to which we've grown accustomed, that action will typically take the form of complaints rather than constructive steps to deal with the issue directly.

I couldn't agree more. That's been my experience w/ PDT -- blog about successes/failures, open bugs, see minor improvement. This was Phase One: Complaining. Not very effective.

Then I started lurking in #eclipse and found that there were a lot of people eager to use PDT, but who were having issues getting it up and running, or migrating to it from another PHP editor. So, after finding myself answering the same questions over and over, I started contributing to the Eclipse wiki, writing docs on installation & migration. Phase Two: Support / Documentation.

Last week, I found myself volunteering for PDT's first Bug Day (which frankly didn't go as well as I'd have liked). To digress for a moment, here's why:

Of the bugs tagged for BugDay, Roy suggested I look at the ones about code formatting, as they were long-standing issues.

I know next to nothing about structured text editors and how the data model is used to properly indent code, so this was a bit of a struggle -- first to find where to insert breakpoints, then to really understand what was going on. Roy was very supportive and helpful, but ultimately I don't think I had enough experience to really be useful.

The other reason for my failure to launch was that much of BugDay got eaten up with my other commitments, and the time zone offset meant that by the time I was done with all my other stuff in Toronto, it was very, very late in Israel. Time zone offsets suck. Incidentally, if you're looking for a way to help PDT, here's their list of BugDay bugs, for which they're actively seeking patches.

Digression aside, I've also been actively contributing to the PDT newsgroup and mailing list, fielding more setup, migration, and install questions. Phase Three: Feeling the Pain / Getting Your Hands Dirty.

PDT has had some tough times in the past with Integration builds only being delivered once a month and update sites that only provide Release builds, or incorrectly displayed requirements & install instructions on build pages. So, as Ed said, there's a pain: a pain that I want to help fix. And because the pain is personal, I've offered to assist with their build infra so that they can more easily publish weekly builds and monthly milestones, which they seem thrilled about. Clearly this is a shared pain. Phase Four: Code Contribution.

So... what's the point of all this? Offer your help as best you can. Do what you can to be supportive out on the periphery. Get your name out there. Chat with the teams on IRC, in newsgroups, or on their dev list. Worm your way in. Contributing to Eclipse means giving your time, but it should also mean ownership of what you contribute, because others need to give their time to process your contributions. The more you show your commitment & involvement, the more effective you will be.

After all, Eclipse is a meritocracy -- you have to earn your seat. :)

2008-05-29

Ganymede Poster Contest

Attention all Photoshop geeks and movie lovers! In the tradition of worth1000.com and somethingawful.com's Photoshop Phriday, I present the Ganymede Poster Contest.

Quick facts:

  • What: An opportunity to show your Photoshoppin' / GIMPin' skillz, and maybe make a few bucks, too*.
  • When: Now through June.
  • Why: Because Eclipse is awesome.
  • Who: Anyone with some free time to burn.
  • Where: On your blog, or attached to bug 227561.

* In order to sweeten the pot a little (and to try to get at least 4 posters, one for each month between Ganymede GA and the Ganymede Update in September), I'm willing to put up $100 in the form of 3 prizes of $50, $30, and $20 for the top 3 submissions. Funds to be donated to your favourite open source org or free service provider -- could be fsf.org, somafm.com, thepiratebay.com, eclipse.org, or anyone else. Your choice.

PMCs, if you want to contribute to these prizes, I'm all for that. Hell, you could even run your own spin off contest, just for your project.

So, what should you design? A movie poster, showcasing something about Ganymede. Style is up to you, but personally I like grindhouse, and retro & horror.

Here's some ideas to get you started...

(Click images to enlarge. More ideas & links in bug 227561.)

UPDATE: More posters here.

UPDATE 2: Submissions are now closed. Vote for your faves!

I. P. Freely

This is your brain.

This is your brain on a fortnight of IP logs and About files.

Clean IP / From Where Did Our Code Come

Sometimes
I feel I've got to code all day
I've got to code all day
But the pain
Of rewriting from scratch, oh me!
The libs I share
Must have come from somewhere
And I think I've lost my light
For I toss and turn
I can't code at night

Once I ran to you
Now I run from you
This tainted code I've given
Given my Abouts all to you
Fix my log
And thats not nearly all

Clean IP x2

Now I know that I can code all day
I want to code all day
And there'll be more time everyday for me
To build things right
We need someone to hold us tight
And you want clean code to stay
But without its due it won't stay that way

Once I ran from you
Now I run to you
This clean IP you've given
Given my Abouts all to you
Gen my log
(Though it's but nearly done)

Clean IP x2

More CQs please!
I can not stand the way you tease
Orbit's the only way to go
But we need a lot of CQs, too

Clean IP x8

IP, IP
From where did our code come?
Ooh, don't you wonder
Don't you wonder no more
I've got this burning
Yearning, yearning
Nested inside jars
Ooh, deep inside jars
And it hurts so bad
I used third party code
So commonly
With a burning love
For my Apache
And now I will surrender
To clean pedigree
You're in my log now
Ooh, you're in my IP

Soft Cell - Tainted Love / Where Did Our Love Go?

2008-05-20

p2: The Good, The Bad, The Whiners

After taking a break from reading the Planet this past week, tonight I discovered several p2-bashing posts. Now, I admit, in December I had some less-than-positive things to say about p2, but that was over 5 months ago. It's been evolving rapidly ever since, and has one of the most responsive dev teams I've ever had the pleasure of working with.

Some statistics, to prove my point:

  • 695 resolved Equinox.p2 bugs; 472 open Equinox.p2 bugs. Closure rate: 60%. Given the oldest changed bug is in February, that's over 200 features and work items a month for the past 3 months! (A bug is not always a problem. I use bugs as TODOs, thanks to the wonderful workflow integration provided by Mylyn. But I digress.)
  • Of the 20 Equinox.p2 bugs I've opened; only 5 remain. Closure rate: 75%.
  • Of the 39 Equinox.p2 bugs I've opened, commented on, or am watching; only 8 remain. Closure rate: 80%.
  • Articles in the Eclipse Wiki related to p2: at least 46
  • Time required to go from knowing nothing about p2 metadata to having it enabled for all the Modeling projects' update sites and integrated into automated promote scripts: about 2 hrs
  • (Recently) active committers for the whole Equinox project: 14
  • Lines of code committed in Equinox project in the past year: 378,000
  • Number of commits in Equinox project in the past year: 28,000

Bottom line? Ask (early) and ye shall receive. Wait to complain when there's no time left in the cycle, and ye shall be disappointed. This is open source, people. You get back what you put in.

2008-05-13

Across The Intertubes

W00t. Ganymede M7 is out today -- here's something to read / listen to while you download it. If you use the Friends of Eclipse site, you'll probably get your bits downloaded before the first verse has finished playing. Membership has its privileges, as they say.

Bits are flying out like
endless rain into a pigeon coop
They syn/ack while they pass
They slip away across the intertubes
Pack-ed jars and XML
are drifting through my net, p2's
Resolving and installing 'em

Jai guru deva om
Ganymede'll rock my world [x4]

Finally there's self-hosting
now fixed for Ed and the rest of the Sad Men Club
(As Wassim calls them 'cross the intertubes)
Support for patches has improved
in many ways -- go check the news
And JUnits now report how long they take
to wend their way across your cpus

Jai guru deva om
Gany's gonna rock my world [x4]

Sounds of laughter, tons of code
installed for free: thanks, open source!
exciting and inviting me
Limitless undying love which
shines around me like a million suns
It calls me on and on across the intertubes

Jai guru deva om
Ganymede'll rock my world [x4]
Jai guru deva [x2]

The Beatles - Across The Universe