Happy Pi Day!

Today, march 14, is pi day!

Slashdotted (sort of)

There was a story on slashdot this morning about the new XULRunner preview builds, on the bottom of which were several links to XulPlanet pages. It’ll be interesting to look at the server logs later to see if there was any major spike in trafic because of this. I haven’t noticed anything, so I don’t think there was a very big one, if any at all.

The big feeds

I was reading some mozilla blogs over at Planet Mozilla and the mozillaZine feedHouse and I suddenly started wondering why my blog isn’t listed on either of them. The simple answer is, obviously, that both those sites were started before the current version of this blog even existed. However, neither seems to have an “Add blog” or even a “contact” link, so I don’t know how I’d go about getting my blog added to either. Maybe you just have to know a guy who knows a guy…

What ever happened to the sidebar?

Back in the olden days, before Firefox when the mozilla suite was still the latest and greatest thing (and when the AOL controlled Netscape people still had considerable influence over our product features) there was a lot of excitement over all the useful and interesting things we were doing with the sidebar. These days the sidebar still exists, but its only uses seem to be the bookmarks viewer (that as far as I can tell nobody really uses) and the history view (which isn’t much of an improvement over the old history window, and may be worse depending on whom you ask).

What happened to make the sidebar go out of fashion or be neglected as it now seems to have been?

One of the things is that in Firefox you can no longer open the sidebar directly, because there’s no little grippy on the right side of the window like there used to be. Also, once you open it you can’t easily switch from one view to another like you could before. Now, I’m not saying that all the things that used to be in the sidebar were actually good or appropriate, but I think we’re missing out on some potentially awesome things by ignoring it like we seem to be doing currently.

For example, I can think of the following things that could or should be available in the Firefox sidebar right now, if it was still an important part of the product:

  • The Javascript Console. Think how much easier it would be to get at your javascript errors there than in the separate javascript console window we have now.
  • RSS Feeds. Imagine having all your blogs and other feeds right in the sidebar where you could quickly check them without leaving the webpage you were currently browsing.
  • The View Page Info Dialog. Wouldn’t it too be much more useful there than in its current popup window form?
  • Web Search. Who remembers the search sidebar, where you could do a web search from within the sidebar and see all your results listed there, where they would stay even if you started following the links? I admit it had some problems, but I really liked that feature.
  • Tab Preview. The only interesting feature that I can see in IE7 that we don’t already have in Firefox is their tab preview window, where you can see all your tabs at once. There is an extension that makes a Firefox tab preview in the sidebar, which I think is worth serious consideration for inclusion in Firefox 2.0
  • The Download Manager. The download manager is a great feature, but I absolutely hate trying to keep track of the little window it pops up in. Why not make it also a sidebar pane, easily opened when desired and hidden when not?

Now, I know that not everyone’s going to agree with me on all of the above (and I’d probably have a much different list if I had spent more than two minutes coming up with it), and that there may very well be extensions that make many of those (and scores of other things) happen, but I think that my point has been made. Not that anyone who has any real influence over anything actually reads this blog, but I think that when we go to make whatever UI changes are going to go in to FF 2.0, especially as part of the bookmark/history improvements that we’re hearing so much about, considering what role the sidebar might play in all of this would be a good idea.

The Preferences Toolbar

As many of you know, I used to develop a XUL browser extension known as the Preferences Toolbar. The original idea for such a thing was not mine, but as the person who thought of it lacked either the knowledge, time, or will to actually implement such a thing, I took it upon myself to do so.

The original preferences toolbar had ten or so built in preferences, displayed as checkboxes on the toolbar from which the corresponding mozilla preference could be enabled or disabled. I was completely taken back by how successful it was. I started getting dozens of emails every week telling me how great the toolbar was. I heard from not only programmer and mozilla hackers, but also from PhDs and corporate executives, people who called the PrefBar things like “the best extension ever written,” and “this is what I have been waiting for since the Internet was invented.” The PrefBar was even featured on the cable network TechTV during a show about new technological trends. This was, needless to say, the closest I ever got to being famous.

The second version of the PrefBar was a complete rewrite. This time the toolbar was completely customizable, with dozens of checkboxes, buttons, links, menus and other widgets configurable to do just about anything. In addition to the over two dozen built in buttons, users could add their own through an easy to use graphical interface. (This was, I should point out, before customizable toolbars existed in what would later become the Firefox web browser; that made the PrefBar the first fully customizable XUL toolbar ever built).

If the response to the original PrefBar had been big, the reaction to version two was huge. I believe it was, for a time, the most downloaded XUL extension in existence. Although plagued with naming problems, the Phoenix (later Firebird, then Firefox) project was starting to take shape, mozilla’s market share was creeping up, and it looked like everything we had been working for for so long was about to become a reality.

As luck would have it, it was right about that time that I had to take an extended hiatus from mozilla and XUL work. It was in the Spring of 2003, and I had just found out that I would shortly be leaving for Brazil, where I would be living until the latter half of 2005. I don’t need to go into the details here, other than to say that I knew that I would be unable to do any work on any of my then existing projects (including the PrefBar) during all that time. Knowing how popular the extension was, and how many people relied on it for everyday web browsing, I wanted to try to make sure that PrefBar development continued in my absence.

I understood then, as I understood now, that if I were to put the PrefBar in anyone else’s hands, it probably would still be around when I got back, but it wouldn’t by mine anymore. Still, I felt that, for the good of the world, that was the right thing to do. I did not, however, feel comfortable leaving the tool in the hands of any single other person that I knew. Instead, I created a mozdev project called prefbar.mozdev.org, moved the PrefBar source over to it, and then began asking around to see if I could find someone who wanted to be the project leader in my absence. With only a few days left before my departure (from the US and from the mozilla world), I found someone willing to fulfill that role. I do not know his real name, but he went by the screen name clav. I also found one other individual (although I have since forgotten who it was) who was interested in working on the project.

In one of the last emails I sent him before I left, I told clav that he need not consider that the PrefBar was still mine. I knew how difficult it would be to maintain a project always wondering if the person who started it would like or agree with the decisions you were making or the direction you were taking, and I came to the conclusion that having such issues would be detrimental to the PrefBar project. Rather, I told him to do what he saw fit until I returned, at which point we could (if he still wished to help with the project) work on it as a team. Clav thanked me for my sencerity, and I left for South America hoping that all none of the thousands of PrefBar users out there would be disappointed or left without a compatible update during my absence.

Now, fast forward two years. Upon returning from Brazil, I looked up the PrefBar project, and was pleased to see that several new versions had been released. It appeared that things were going exactly as I had wanted them to. I did not, however, immediately attempt to contact clav or the other developers, because I was still in the process of getting things setup in my new house, new computer, new job, etc. I had plans to return to PrefBar work as soon as possible, my goal being the first part of 2006.

Now, here’s where it gets interesting. About a month ago, I started getting emails and comments on my blog asking when I would have an updated PrefBar that was compatible with Firefox 1.5. Even though I had not yet attempted to get back into the PrefBar project, people had apparently remembered that I was the one who started the tool and sought me out to ask about future updates. One individual even said that his wife, who is visually impaired, cannot normally use the Internet without the PrefBar’s ability to quickly turn on and off website defined colors.

I returned to the prefbar mozdev page and saw that there had not been a prefbar update since September. I also noticed that clav was no longer listed on the project members page. Instead I found only my own name, and one Manuel Reimer (who I did not know). Not being in contact with Mr. Reimer, and not knowing if he was even working on the PrefBar anymore, I grabbed the latest PrefBar build from mozdev and set out to make the changes necessary to achieve compatibility with Firefox 1.5. This wasn’t as easy as it would have been two years ago, since even though the PrefBar functionality had remained mostly unchanged, much of the backend code had been rewritten. However, I was able to come up with a version that worked, even though it was very much a hack, not a real quality release. I then sent an email to Manuel Reimer, using an address that I found on mozdev, telling his who I was, how I had hacked together Firefox 1.5 compatibility, and asking that we get together some time to talk about the status and future of the PrefBar, in order that I might be able to get back onto the development team.

Three days after having posted my PrefBar update hack, I still had not received a reply to the email I had sent to Mr. Reimer (although he later said he sent one, so it’s possible it got lost somewhere). I also noticed (when someone pointed it out to me in the blog comments) that there was now an official PrefBar release for Firefox 1.5 on the mozdev project page. Realizing that this release was likely of much higher quality than mine, I posted to my blog again suggesting that everyone download that build instead of mine. I also sent another email to Manuel Reimer, letting him know that I wanted to start working on the PrefBar again (hopefully in cooperation with him, and anyone else that might have been working with him), and suggesting that we get together on IRC to talk about it.

This time, I got a reply from Mr. Reimer. In response to my saying that I wanted to work on the PrefBar team with him, he wrote the following:

If there is one thing I don’t need now, then it is someone who wants to get credit for the work I did. This was the biggest fear I had the whole years when I did many hours, days, weeks (months?) of work for PrefBar. Currently anything works well and PrefBar development has beenalways fun. (I hope those sentences don’t sound too hard. I’m german and my english isn’t perfect. And I want to be frank with you). Currently I’m the only one who works on PrefBar. With update to 3.x I had rewritten nearly every line of PrefBar code. This is also the reason why my name is on most files as “Initial developer”.

Through this email and a very long conversation IRC later in the day, I learned a bit more about Mr Reimer and the PrefBar project. I seems that shortly after I left, Manuel found the mozdev project and contacted clav asking to join in as a developer. This was done, and he started fixing bugs and adding features. Shortly thereafter, clav (for reasons I do not know) left the project, leaving Manuel Reimer as the sole and only developer. For at least the last year and a half, Mr. Reimer was serving as the owner of and only person on the PrefBar project. As such, he had during this time full power and control over all new features and code that went into the tool.

Manuel, of course, had not been involved in the conversations that clav and I engaged in when I first started the mozdev project. He had not heard my promise to not attempt to forcefully “take back” the prefbar upon returning, nor had he made clav’s promise to work on it with me as a team when I eventually did so. He likely knew very little about me other than the fact that I had started the project, developed it for several years, eventually left, and that I was due to return in the fall of 2005. Through conversing with him on IRC, I learned that Mr. Reimer had gotten the idea that when I returned I was going to attempt to do exactly what I had (in reality) explicitly promised not to do, that is, attempt to kick out other developers and run the PrefBar myself. His comments to me about not wanting someone (that is, me) trying to “take credit for the work he did” was based on this belief and opinion about me.

I must say explicitly that I am not the person Manuel thinks I am, nor am I trying to do what he (apparently still) thinks that I wish to do. I am not trying to “steal back” the PrefBar for myself, nor am I trying to get credit for any of the work that he had done on it in the last few years.

I intend to retain my side of the bargain, but I expected that the other side of the deal would be maintained as well. The problem, however, is that Manuel Reimer, I now know, has no interest in working on a team with anyone. After almost two years of having full power and control over the program, he does not wish to give up any of that power to anther team member. He suggested that I could work on the PrefBar project, as long it remained clear that the PrefBar was “his” now, and that he would have full authority to make all decisions regarding any and all important issues. In other words, I have been invited to return to my old project, as long as I do so under complete subjection to the will and ways of Mr. Manuel Reimer. My suggestion that, with a little empathy and humility on both sides, we could work as equal partners, 50-50 if you will, was rejected, with him insisting that someone had to be in charge (”every project needs an owner”) and (obviously, since he’s had it to himself for so long) that owner should be him.

I am now in somewhat of a difficult place, not knowing what would be the best or correct thing to do in this situation. I find the way I have been treated by Mr. Reimer to be more than a little bit impolite and inconsiderate. I understand and appreciate the much work he has put into the Preferences Toolbar in the last few years, and am in no way attempting to take credit for this work, nor prevent him from continuing to do so in the future. I am aware also that his lack of advanced English skills makes it more difficult for him understand the points I am trying to make, and easier for him to misinterpret what I say so that it falls in line with the idea of me that he currently has in his head. However, I do not think it should be so difficult for him to understand that as the creator of the program and of the mozdev project, I do have some right to expect that the agreement under which the latter was originally organized be maintained, the which agreement created a project comprised not of one totalitarian ruler and his subjects, but a team of equal partners. I maintain my belief that, with a little respect, empathy, and humility on all sides, such an arrangement is not only practical, but the best way of so working.

I appeal therefore to the wise readers of this blog for opinions and suggestions. What would be the correct thing to do in this situation? Should I continue my attempts to convince Mr. Reimer to accept work as a team, agree to work under his authority, or initiate a fork of the project, allowing myself and Mr. Reimer to go our sperate ways and develop two different tools according to our own skills and priorities? The last option is one that I wanted (both two years ago and today) to avoid at all costs, but it seems that it may soon by the only one left. I will say, however, that if there is a fork, I will insist that the name “PrefBar” and the prefbar mozdev project I started two years ago remain with me (along with any other developers that wish to work on the team).

In saying all this, I do not wish to appear rude, power hungry, or false in any way. It is still my hope that this situation can be resolved in a way that won’t leave anyone feeling left out or cheated. However, because of the large number of inquires I have received regarding the current status of the PrefBar, I thought it only fair that interested parties know the current situation. I will post an update when I have one. Until then, your ideas are welcome (and requested) in the comments section.

Aaron Andersen

Prefbar update #2

Well, this is interesting. Two days after I put up my hacked together prefbar update, Manuel Reimer has posted a “real” update at http://prefbar.mozdev.org/. I recommend that everyone use this one instead, since I’m sure it’s a lot better than mine (he being much more familiar with the code than I currently am).

I am still trying to get in contact with Manuel in an attempt to coordinate our work in the future. (I have sent him a few emails, but have yet to get a responce). I’ll post an update when I have one.

My new laptop

Well, I finally bought a new laptop, an Averatec 3715, for $799 at Sam’s Club. I needed a powerful enough machine to do some serious developement work, but at the same time something small and light weight enough that I could take it along anywhere and everywhere. At 4.2lbs this 12-inch ultralight is exactly what I was looking for. It’s tiny on the outside, but inside it’s got a 1.8 GHz processor, 512MB of memory, and an 80GB hard drive (or in other words, it doesn’t lag at all behind any low end larger model I might have bought instead).

I love the looks of it too. The battery life is a little lower than I maybe would like, but if you turn the screen brightness down a bit you can get a good two hours between charges, which I can live with.

Prefbar for Firefox 1.5

I have had several people lately requesting a version of the Preferences Toolbar that works with Firefox 1.5. As some of you may know, I was out of the mozilla world for an extended period of time ending this last summer. The last few versions of the Prefbar have been developed and maintained by a team of programmers at prefbar.mozdev.org. Now that I have returned, I intend to get back into prefbar work again, hopefully in cooperation with those other guys. However, since I have not yet been able to discuss this with the mozdev group, I hacked together a quick update to the latest prefbar build in order to make it work with Firefox 1.5. This was actually a lot more complicated than I thought it would be (there were quite a few changes between 1.0 and 1.5, combined with the fact that there is now quite a bit of code in the prefbar that I am not familiar with), but I have a version that works.

Experimental Prefbar 3.5 for Firefox 1.5: Download
(You may have to save the file locally and then open it in Firefox in order for the install to begin.)

I know of two bugs in the current version:

  1. After changing the toolbar button selection via the options window, you have to open a new browser window before the changes are reflected. I’m working on figuring out a fix for this.
  2. Some of the buttons and checkboxes no longer work, mostly because of changed preference names. Your help in figuring this out would be appreciated. If you spot a preference that no longer works (or any other bug in the prefbar), email me at aaron at xulplanet dot com with the details.

This should be considered a somewhat unstable experimental build, suitable for those who really really need the prefbar for everyday browsing, and people who want to help me out by spotting bugs. I’m hoping to have a better, cleaner, less of a hack version available soon.


I am resurrecting the old book review arm of this blog as of right now. I’ve purchased a lot of books online lately, and gotten a few more from the library. I’ve been getting a lot of the books that I read as a kid, or wish that I would have. In the second category is Speak, by Laurie Halse Anderson, a book I really wish would have been around when I first started high school.

Title: Speak
Author: Laurie Halse Anderson
Genre: Young Adult Fiction
Published: 1999
ISBN: 014131088X

My Rating: 10 / 10. Perfect. Five Stars.

This book is, as of two days ago, one of my favorite novels of all time. I wholeheartedly recommend it to everyone I know (and everyone I don’t, such as the majority of the people who this read this blog). Although I don’t know if it’s international appeal would be the same, anyone who is, or ever was, a student at an American high school should appreciate this story. More later…

Happy Birthday

… to me!

Next Page »