8 January 20058 January 2005 Back from Mexico. Bounties

I spent some time last night going through the open source desktop bounties that we launched about a year ago.

Justin Wake seems to have nearly completed the Evolution/iPod synchronization bounty.

I haven't given it a try yet, but his tarball is still available [evolution-ipod-sync-0.2.tar.bz2].

Meilof Veeningen completed the mailing list actions bounty with an Evolution plugin.

This is pretty handy for jumping to the archives for the mailing list for a particular mail you're looking at, or for unsubscribing.

The prolific David Trowbridge built a weather data source for the Evolution calendar, so that you can have actual/forecast weather events show up in your calendar for a variety of cities.

The smiley typing bounty was completed by Jan Arne Petersen, and James Bowes claimed the default free/busy URL bounty.

A full list of all the claimed bounties so far is here. To date, we have distributed $12,200 in payments for 21 claimed bounties.

During tonight's clean-up of the bounty web page, I eliminated several of the bounties that don't have very much value. In most cases, this is because they are so underspecified as to be unimplementable. In two cases, the bounties were eliminated because ineligible Novell employees completed them. The eliminated bounty bug numbers are 127528 127517 127559 127524 127555 and 127543.

These eliminations freed up about $3,000. Some of this has been redistributed among the remaining, unclaimed bounties. Note in particular that the calendar publishing bounty is now worth a lot. We'll probably create one new bounty with the remaining cash.

General Bounty System

This bounty project has been controversial for various reasons, but I think that it has led to a number of great hacks being introduced to GNOME, and has attracted some new developers to the project.

I am still in favor of the creation of a general bounty system for open source projects. The idea is to allow anyone to act on their "I'd pay $50 if someone fixed this" impulses. SourceXchange and others tried to do this years ago, but I think they were too early, and to date no one has done this well.

I think a general bounty system should start with a simple, clean interface wherein:

  1. Anyone can create a new bounty, and describe it with HTML, text, images, etc.
  2. People can search for bounties that already exist, and "pile" onto them by pledging additional money.
  3. There is an easy mechanism for people to associate a bounty with a bug in any of the popular bugzillas. So, there'd be a way to create a freeform bounty, and a way to create a bug bounty bound to a bug in bugzilla.mozilla.org/bugzilla.gnome.org/bugzilla.kde.org, etc.

    I had been thinking that we might want to create a link from the bug to the bounty, but I think this actually would seem like spam to the people who are using bugzilla.

    Instead, we could have the bounty website periodically poll the bugs for which there are bounties and alert anyone who has pledged on that bounty if the bug status has changed.

  4. There is a mechanism for people to claim bounties, and for the original bounty creator to verify that the claim is valid.

    This is an interesting matter of policy. If more than one person has pledged money against the bounty, should everyone get a say in whether or not the bounty has been completed?

The key is probably to have a very fast, simple, clean UI.

My friend Rhett Creighton has been interested in this topic. He suggested that the site be generalized beyond software, so that it can be used for things like the Ansari X Prize, James Randi's paranormal powers challenge, and other similar things. That would be cool, but I think this should start with software.

One thing I've considered doing is specing something up, and then putting a bounty on someone implementing the spec. 11 January 200511 January 2005 In London, en route from Phoenix to Nuremberg. Don't ask.

Some cool things:

  • The new GNOME launch box from Imendio. An excellent hack, and yet another consumer of the Evolution Data Server APIs.
  • After my recent comments about the coming superiority of web-based apps over poking index registers and writing to address 0xb800:0000 to draw on the screen, a few related things: Mitch Kapor agrees; DojoToolkit is a project to create a DHTML/JavaScript/CSS widget toolkit.
  • www.gens-us.net
14 January 200514 January 2005 My hotel room in Phoenix on Monday had this super-fancy CD-playing alarm clock. It had two separate alarms ("A" and "B"), and you could configure it to buzz-wake you with "A," or radio-wake you with "B," or vice versa, or do a combination buzz/radio alarm, but only on "B" for some reason.

Setting the alarm required holding down either the "B" or "A" button and then using the CD player track changing buttons to change the displayed time. And then configuring whether the alarm should be silent, radio, buzz or radio/buzz was a matter of pressing the "A" or "B" button repeatedly to change the setting. And of course the volumn knob was unmarked, so I couldn't tell whether I had it full-on or full-off without figuring out how to turn the radio on first to test it.

    [photo]
    Arizona
After I finally got the alarm set I didn't trust it very much, so I did the standard sleep 5h; mpg123 *.mp3 maneuveur just to be sure.

After spending five years being told that the Linux desktop is too hard to use, these fucking alarm clocks boggle my mind. If ordinary people can really figure out how to set the alarm at a hotel, then we are going to make OpenOffice default to vi keybindings in the next Novell Linux Desktop.

I wouldn't have mentioned any of this, but last night at a hotel in Germany, I encountered the best alarm clock interface I have ever seen, and the contrast between Thursday's hotel alarm and Monday's hotel alarm just happens to be one of the most exciting things happening in my life right now.

    [photo]
    Words fail.
The only question that picture might raise is why I was setting a 7:00 alarm at 4:11 in the morning. A good question.

. . .

Okay, I wrote all the above on an airplane from Germany to Paris, where I was connecting for my flight to Boston. Let's just say that you cannot make a connection between terminals at Charles de Gaulle airport in 55 minutes. So, Paris tonight. Poor me!

15 January 200515 January 2005 Had a great Brunch with Guy, Luis and Krissa at Au Pain Quotidien. The yogurt was so incredibly good, I smuggled some back in my luggage.

I flew back to Boston today on Air France flight 322. I always board first due to my superior cunning and scintillating personality and near-native French-speaking ability, but as soon as I got onto the jetway they stopped me and did a frighteningly thorough search of my baggage and person.

This is a bit unusual in France, so I was pretty annoyed as I stepped on the plane . . .

. . . and saw John Kerry standing there! He was chatting with the security people. "Au revoir," he said to each of them, "Merci." He went to first class, and I went to my usual seat in the "blue zone" near the bathroom (seat 47Q).

I got out my headphones, put Modest Mouse on, and slept the entire 7h40m flight. When I got to baggage claim in Boston, Kerry was standing around the belt waiting for his bag. There were hundreds of people waiting for their bags too, and they all kept nervously glancing in his direction.

After a few moments of consideration, I went up to him and we had a little conversation!

It went like this:

Senator John Kerry: No, that's not my bag. Mine is blue, and it's wrapped in cellophane.
Police Escort: Senator, this one is blue and wrapped in cellophane.
Senator John Kerry: I think it has someone else's name on it.
Nat: Excuse me, Senator.
Police Escort: You're right, it says "Property of Belinda someone."
Nat: Excuse me, Senator, I just wanted to say hello.
Senator John Kerry: >turning to greet the dapper young man<
Hello.
Nat: I am a big supporter, and it's a great honor to meet you, sir.
Senator John Kerry: Good, good. It's good to meet you.
>shaking hands<
Nat: Yes, I contributed to your campaign, and —
Senator John Kerry: Great! Keep up the fight.
Nat: Anyway, I was wondering if you could possibly reimburse me for my contribution.
Senator John Kerry: ...
Nat: So, if you want to just write me a check now, we can call ourselves square.
Police Escort: I think this is your bag, Senator.
Unfortunately, my camera battery was dead from taking pictures of the bookinistes along the Seine, so the great moment was not caught on film. It seems he was coming back from the Middle East, and yesterday (the day before he met me), was hanging out with Jacques Chirac.

(Yes, I'm kidding about the check.) 17 January 200517 January 2005 Evolution for Windows

I am thrilled to announce that we recently hired Tor Lillqvist into the Novell Desktop group. Tor is famous for his work to port Gimp and the Gtk+ toolkit to Windows, and these days he helps keep Gimp running on Windows.

For Novell, Tor is working along the same lines, making Gtk+ and various parts of the Linux desktop stack run better on Windows to improve the experience for cross-platform developers. He is currently working on a dbus port to help complete Fredrik Hedberg's port of Beagle to Windows.


Beagle running on Windows

After that is done, however, his major project will be to port Evolution to Windows. The scope and difficulty of this work is currently unknown, so we don't have a timeline (or even a "development plan" to speak of), but you will be able to follow his work on the various mailing lists and on Tor's blog (once he starts one). The Evolution porting will be discussed along with all Evolution development topics on e-h.

If you're interested in helping, I'm sure Tor would welcome you with open arms. It's a big project.

Good luck, Tor! We're all really happy you joined! :-)

. . .

More on Web Applications

Hey, it's "Keyhole" in Javascript. One of the most impressive web apps I've ever seen. 19 January 200519 January 2005

    [photo]
    Robert Love's breakfast bonanza.
23 January 200523 January 2005 So! Cool!
    [photo]
    What a way to wake up!
    [photo]
    Andy Thomas


I have about a hundred photos of these guys jumping out of their 3rd floor window into the snow.

    [photo]
    Trident Cafe was open.
    [photo]
    Andy on the phone in my apartment.
24 January 200524 January 2005 I spent some time this weekend playing around with vnc2swf, and made some demos of simple activities in Beagle and Mono. These are demos I usually give at LUGs, conferences, etc, so it's nice to make them available online where more people can see them.

I intended to demo the latest functionality in Evolution, F-Spot, Tomboy, Muine and Stetic, but I got lazy and so those will have to wait for another day.

VNC is a little slow and jerky, and sometimes a key gets "stuck" down, but otherwise they turned out pretty well, I think.

Beagle Demos

Some simple searches in Beagle, using the "Best" user interface. 1 minute 24 seconds.
A gripping demo of Beagle's "live query" functionality. Jon Trowbridge guest stars in this one. 1 minute 43 seconds.
A quick run-through of a few of the command-line tools that come with Beagle. 1 minute 27 seconds.
We write a sample program that uses the Beagle APIs to perform a search over D-BUS. 2 minutes 31 seconds.
Mono Demos
A demo of monodoc — Mono's documentation browser — including the "Upload Contributions" feature. 2 minutes 48 seconds.
In this demo I write a quick "Hello World" Gtk# application using Glade. 5 minutes 50 seconds.
28 January 200528 January 2005 I am on an airplane and I feel like rambling.
    [photo]
    I really need a haircut.
Tuesday night I arrived in Utah and went straight from the airport to Brewvies (featured prominently in the Nat Friedman City Guide), only to discover that they had some kind of very strange film festival going on called Tromadance.

To say that Tromadance features "independent films" would be a gross understatement of the facts. My friends I invited seemed alternately amused and horrified.

Utah continues to bowl me over with its sheer physical beauty.
    [photo]
    My early-morning meeting.
Those demos I made whilst apartment-bound by the blizzard generated a lot of traffic on my web server, but not as much as they would have generated if they hadn't been Flash files. One of them is 2 minutes, 31 seconds long and only 730k. Also, Beagle had a new release this week which you should try.

Federico and I have been talking about how nice it would be to have an X compositing manager that can write SWF files for you, instead of having to create a separate server to run vnc2swf. Then you could just hit a 'start recording' button when you're ready to record. This would probably make bug reports a lot more informative too.

Also, if anyone is interested in improving vnc2swf, it never disposes of the Flash objects that it creates in the generated SWF file (two objects for each damage event: one for the bitmap, and one for the shape). With long recordings, you hit Flash 7's 65,536 object limit and it starts recycling the old objects, which causes the playback to go haywire and be useless. As an example, check out my attempted Evolution demo, which collapses after about two minutes. If you look carefuly, you can see the exact way in which it fails: early screen tiles from the first few frames of the recording are reused to paint the mouse cursor, new windows, exposed regions, etc.

This should be easy to fix. If there were a general bounty web site, I'd put money were my mouth is.

. . .

Some of you may have seen the recently-resurrected photos of Bill Gates posing for Teen Beat magazine. Well, let's just say that things get a little crazy at the Novell offices after hours. And so I offer you the modern, open-source alternative.

I'm glad he's married since people no longer spread rumors that we are gay lovers, but I hope everyone can see from these pictures why Miguel's my best friend.

(These pictures are copyright me, so ask to use them).

. . .

Boston got another 10 inches of snow this week, so I'm going to spend the weekend in San Francisco. The bad part is I won't get to hang out with Miguel and continue to deliver humiliating beatings to him in chess, which we have been playing every night since I got a chess board and one of those fancy clocks that we ignore but which is fun to hit everytime you make a move. We are both pretty terrible at chess so the game comes down to whoever makes an idiotic mistake first, but it's still pretty engrossing.

. . .

Robert expressed concern at the state of the Cambridge office's breakfast bonanza this week. This is the second time he's complained about the new tradition of having free breakfast at Novell in Cambridge. The first time was when I woke him up at 7am on a Monday morning using our special "Fortune 100 customer emergency" pager code to get him to help me carry all the groceries into the office.

When he got to the car and saw the back was filled with boxes of cereal, he was very angry but I think the hunger overcame his rage and he did help me carry the groceries in. The next day, I got even more breakfast materials, and the following day the only way to trump the previous day's performance was to wake up really early and make waffle batter and bring it into the office with a waffle iron and syrup and jams and so on.

Landing time. 31 January 200531 January 2005 I need to deploy a wiki. We are using phpwiki for our design group at Novell, and it seems to be really nice because you can edit subsections of a page instead of having to edit the whole page at once. Freedesktop appears to use MoinMoin which has nothing obvious to recommend it.

I'd like something which stores the content in an easy-to-extract way, in case I decide to switch to some crazy new DHTML wiki. The main issue, though, is that this site will receive a lot of traffic, in bursts, will need to survive multiple simultaneous slashdottings, etc. It will need to scale.

Any suggestions?

. . .

I just found the Ruby on Rails wiki, Instiki, the most beautiful wiki of all time. Can anyone give me a good reason not to use Instiki?

. . .

2001
     
     
  Aug Sep
Oct Nov Dec
2002
Jan Feb Mar
Apr May Jun
Jul Aug Sep
Oct Nov Dec
2003
Jan Feb Mar
Apr May Jun
Jul Aug Sep
Oct Nov Dec
2004
Jan Feb Mar
Apr May Jun
Jul Aug Sep
Oct Nov Dec
2005
Jan Feb Mar
Apr May Jun
Jul Aug Sep
Oct Nov Dec
2006
Jan Feb  
Apr   Jun
     
     

top

contact
This is a personal web page. Things said here do not represent the position of my employer.