Community Bug Watching

I made some suggestions to Robert Wall about ways that he could improve his already quite nice Bonsai Bugs tool. As I mentioned earlier, I miss Asa’s informed and concise buildbar comments about what bugs are most interesting in each build.

Seeing Bonsai Bugs got me wondering if there was some way to determine the most interesting bugs without needing a human investigator. If Google’s shown us anything, it’s that you can use the power of the network to show you the most relevant information. What if Bonsai Bugs could somehow mark the bugs that have the most community interest and downplay those that are less important?

I came to the conclusion that there are several ways to evaluate community interest using data already in bugzilla. For example, the following criteria could be added together to devise a reasonable Community Interest Factor so that you could rank the bugs:

  • Bugs with many duplicates
  • Bugs with many votes
  • Bugs with a large list of CCs
  • Bugs with a large number of comments
  • Bugs with many dependencies (or even with a parent with many dependencies)
  • Bugs with certain keywords (for example, bugs fixed that have out of date milestones (Mozilla0.9), crash, dogfood, catfood, or 4xp keywords).
  • Joke: Bugs that I vote for or that I am CC’ed on.

Obviously these are somewhat vague and need to be tweaked to pick up those bugs that are most relevant. You could compare with the most frequently reported bugs list or recent duplicates list as well. You could search and see if a bug is a dependency of a “Make X release not suck” bug. I imagine you could even search Google or the newsgroups for each bug number and up the Community Interest Factor if you find additional links.

I’m happy to say that Robert found the idea a good one and we’ve had a stimulating discussion about ways to refine and improve this. You could be incredibly granular and show a great number of levels of community interest, but the result is that nothing really stands out. Five seemed like too many. I suggested to him that with the right threshold only two levels (normal and interesting) might be needed, but three felt about right (normal, interesting, and imporant).

I’m looking forward to the first release of the improved Bonsai Bugs. I imagine that the algorithms will continue to be refined and this will make it more enjoyable for the community to watch the tree grow.

Windows theme support

Interesting bug of the day: The fix for bug 172751 has been checked in. This should make Mozilla on Windows platforms other than XP look more like native apps. It fixes a few cosmetic glitches on XP as well. This will be most obvious with the Classic theme.

Down and out

Unfortunately, towards the end of thanksgiving day, our baby started vomiting. We suffered a long sleepless night in the hotel with two sick children. By the time we made it home the next day, my wife and all of the kids were sick. I seemed to have avoided the vomiting bug (wash hands often!), but ended up with head and chest congestion and basically felt terrible. I’m still not back to normal. Yuck.

Thanksgiving

We spent a lovely Thanksgiving day in Ohio and enjoyed time with extended family that we infrequently get to see. Getting to meet all the new (and not so new) babies was great fun.

One of the things that I was surprisingly thankful for this year was google. Everybody’s favorite search engine continues to amaze. Let me explain: For as long as I can remember and I’m told long before I was even around, our family has sung a German hymn as a prayer at the major celebrations and gatherings of the family. This is a tribute to my mom’’s grandparents who brought the hymn with them when they came to the United States from Switzerland. I’m told that there was a memorable moment in my mom’s life when the normal family prayers switched from being said in Swiss German to English. In any case, this hymn has been a part of our lives and gatherings for a long time.

Unfortunately, as the grandparents and great aunts and uncles have fallen asleep in the Lord, fewer and fewer of us know the tune and words sufficiently well to do other than sing the chorus and sort of hum along. Google to the rescue. A quick search and we have the text and music to Gott ist die Liebe. Now we can at least hum along with the music. Even better, Google gave us a quick translation of God is (the) love, which gave those of us who’d studied German in high school and college an acceptable starting point for making one that better fit the music.

Some of the family seemed to remember seeing a translation of this hymn as God loves me dearly. So we sang the first verse in German and then in English as “God loves me dearly, he sets me free; God loves me dearly, he loves even me. Let me say it again: God loves me dearly, God loves me dearly, he loves even me.” What a gift to praise God in two languages and to honor our heritage.

Looking for it again today, it appears that this is hymn 175 in the Evangelical Lutheran Hymnal, but there doesn’t appear to be a complete copy of the text of the hymn online. I did find a partial version:

God loves me dearly, grants me salvation;
God loves me dearly, loves even me.

Refrain:
Therefore I’ll say again: God loves me dearly,
God loves me dearly, loves even me.

I was in bondage, sin, death, and darkness;
God’s love was working to make me free.

He sent forth Jesus, that true Redeemer;
He sent forth Jesus and set me free.

Jesus, my Savior, Himself did offer;
Jesus, my Savior, paid all I owed.

Now I will praise You, O Love Eternal,
Now I will praise You all my life long!

Enable/disable flash

A few days ago Blogzilla mentioned the jTFlashManager tool that lets you enable or disable flash on the fly. Investigating how the tool works shows that it just renames the plug-in file. I’ve been renaming the plug-in to disable it for a long time, but never tried doing this while the browser was running. For some reason I thought it read the plug-ins at startup.

The tool requires a Java VM to be installed and I thought that was overkill for renaming a file. I was a bit rusty, but wrote a DOS batch file that works beautifully as a shortcut from my Windows desktop. Save the toggleflash.bat file and then run it passing the path of your Phoenix, Mozilla, or Netscape plugin directory. If you’re not currently viewing a page using the flash or shockwave plug-ins, it will toggle them on or off.

Here’s the file:

@echo off
if "%1"=="" goto usage
if exist %1.\\npswf32.dll goto disable
if exist %1.\\npswf32.dll.off goto enable
echo Couldn't find a flash plugin.
echo.
goto usage

:disable
ren %1.\\npswf32.dll npswf32.dll.off
if exist %1.\\np32dsw.dll ren %1.\\np32dsw.dll np32dsw.dll.off
echo Flash Disabled.
goto done

:enable
ren %1.\\npswf32.dll.off npswf32.dll
if exist %1.\\np32dsw.dll.off ren %1.\\np32dsw.dll.off np32dsw.dll
echo Flash Enabled.
goto done

:usage
echo You must specify the path to your browser's plugins directory.
echo Put the path in double quotes if it includes spaces.
echo For example, toggleflash.bat "c:\\Program Files\\Mozilla\\bin\\plugins"

:done

Watch the tree grow

I was somewhat disappointed when Asa stopped updating the Build Bar over at MozillaZine. I enjoyed reading his summaries of the important bugs that had been fixed each day. This was especially helpful to me in testing nightly builds of Mozilla. Now with Mozilla 1.0 (and 1.1, and almost 1.2) shipped and the product generally quite stable, I’m not as concerned, but still miss the up to date news.

There are now a number of resources that help keep you equally or better informed about Mozilla development. The MozillaZine Mozilla Builds Forum and Phoenix Builds Forum provide a wealth of information.

Unfortunately, I most miss the short and to-the-point summaries that Asa provided, as well as his overall sense of the state of the project. One easy but verbose way to track Mozilla (and siblings) development is by watching CVS check-ins via Bonsai, which I’m sure it one of the tools Asa used. A day’s results from Bonsai provides more information than you’d probably want to wade through: it shows every file that was changed. Thankfully, several sites now condense the list of daily check-ins and cross-reference them with the relevant bugs. Bonsai Watch provided by MozillaNews gives the detailed bug information. I personally prefer the brief results provided by BonsaiBugs and BonsaiBugs for Phoenix from backprop.net.

Finally, there’s the weekly status update from Mozilla.org, the previously mentioned news sites, MozillaZine.org and MozillaNews.org, and an ever increasing number of developers’ blogs.

Blue is Better

book coverEven if I didn’t work for big blue, I’d want to read Lou Gerstner’s new book, Who Says Elephants Can’t Dance? Inside IBM’s Historic Turnaround. I’m sure it will be fascinating to read Gerserner’s thoughts as he directed and resurrected IBM. A New York Times article emphasizes how swiftly and decisively Gerstner impacted IBM:

Within the first 100 days, he made the important decisions to keep the company together, reduce costs sharply and change the way I.B.M. did business, overhauling sales, marketing, procurement and internal systems.

He writes that the choice to keep the company together, reversing the course set by his predecessor and endorsed by the board, was “the most important decision I ever made – not just at I.B.M., but in my entire career.” He based it on strategic analysis and instinct – and listening to customers….

By the mid-1990’s, I.B.M.’s technical leadership had noticed the Internet, and took the view that the coming “networked world” would lead the way to the post-PC era, undermining Microsoft’s grip on the industry. “Desktop leadership might have been nice to have,” Mr. Gerstner writes, “but it was no longer strategically vital.”

Always skip the flash intro

I’m of the opinion that almost 100% of the Flash I encounter on web sites is a waste of time. It’s bad enough that a good portion of it is merely gratuitous, but it is frequently abused by advertisers to create blinking ads that you can’t easily stop. I therefore have the flash plugin completely disabled. Imagine how the IMAX web site reinforced my opinion of flash when it opened as an empty page. Because Kovu had mentioned that Star Wars II was coming to IMAX theaters, I bothered to re-enable the plugin to be greeted by a dull flash intro and then the site launched in a popup window. Great! Why do people do this? Did they assume that the flash intro was so cool that I’d want to keep playing with it while I browsed their site? It’s truly a shame; the site works nicely if you skip directly to the real IMAX site. I just don’t get it.

Perhaps someday Mozilla or Phoenix will have the ability to block flash on a per site basis (Bug 94035).