The roads I take...

KaiRo's weBlog

June 2010

Displaying entries published in June 2010. Back to all recent entries

Popular tags: Mozilla, SeaMonkey, L10n, Status, Firefox

Used languages: English, German


March 2021

April 2020

March 2020


June 28th, 2010

Weekly Status Report, W25/2010

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 25/2010 (June 21 - 27, 2010):
  • Releases:
    Finally pushed SeaMonkey 2.0.5 in parallel to Firefox 3.5.10 (and 3.6.4, but that one and it's immediate update 3.6.6 ship the new "out of process plugins" feature, which we can't have in 2.0 and need to do a lot of work for if we want it in 2.1).
    I also started the build process for SeaMonkey 2.1 Alpha 2, resulting in candidate builds that are up for testing now - but we have one or two bugs we need to decide if we can ship with them.
  • Packaging, Notifications, Tabbrowser:
    In 2.1a2 work, I realized we failed to remove a file on updates, and fixed that for the future.
    When the new notification system landed for Firefox, I immediately went and ported "doorhanger" notifications to SeaMonkey, this work went through a number of iterations, Neil as a reviewer, Gavin as the Firefox/toolkit developer and me are in continuous discussions to make things work best for all of us.
    The places icons work I started as a followup to bookmarks has not just been separated, but landed in itself already for 2.1a2, making our tabbrowser more compatible with Firefox' and making icons in the history window work.
    Trying the test for doorhanger notifications made me aware of another tabbrower API difference that caused failures in the mochitest-browser-chrome suite, and so I fixed that by renaming mTabs to tabs, and that patch also made 2.1a2 still.
  • Data Manager:
    The currently available version on AMO is still 0.7, progress has been relatively slow as I mostly did look into other things this week, but I should be able to ship another 0.* update soon that will react to cookie and password changes correctly.
    My efforts to get connected with Firefox people thinking in similar directions didn't get far, though, I might do some pings on IRC when I get around to it.
  • Places:
    Updated places bookmarks locally for a few changes in Firefox code, I'll upload new patches and try builds this week probably, until then, please continue testing the current try builds.
  • German Localization:
    I synchronized the German localization with trunk to be able to get a language pack out for 2.1a2 - and that looks good so far!
  • Various Discussions:
    XPCOM changes, tabs on top, perma-oranges, Mozilla security bug bounties, upcoming reporter removal/replacement, UA strings, findbar for SeaMonkey, Sync landing, Mercurial upgrade and tool bustages, L20n file format, developer tools, HUD naming, Firefox UI changes, etc.

I took some time this week to spend at the said-to-be largest open air festival in Europe, the "Donauinselfest" (danube island festival) here in Vienna, but I hope I still could get some good work done. ;-)

Also, it looks like SeaMonkey 2.1 Alpha 2 will show off a few good new features but will really be more of alpha quality than some of our other quite high-quality milestones. As usage of the previous is also not excessive, I think it might just be good to get this out for testing rather than respinning it too much, but we'll probably decide on that on the upcoming SeaMonkey Meeting tomorrow.

By KaiRo, at 22:38 | Tags: L10n, Mozilla, SeaMonkey, Status | 5 comments | TrackBack: 0

June 25th, 2010

My Thoughts About Tabs On Top

I've just watched Alex Faaborg's video about Tabs On Top for Firefox 4, and as I have been thinking about that topic for years now, I think it's time I put down my thoughts as a "SeaMonkey guy".

Now, some people would assume, that being a "SeaMonkey guy" must mean I'm totally opposed to this as we're widely considered to be the completely conservative kind of folks.

But then, my thoughts base on the fact that we've been talking about running browser, mail, HTML editor, chat, preferences, and whatever else all as tabs that can live in a single window (see our long-term vision) - and I actually can't imagine getting that right without placing tabs on top ultimately (think of toolbars needing to change between different kinds of tabs, for example).

So, I think that for an application suite that allows mixing tabs, it's ultimately a must to do that, and that makes me think in favor of this idea in general. Even now, having SeaMonkey's Site Navigation bar to be only displayed when needed makes my tabs bar jump around, which is nasty. Also, adding find bar on top of the web content should still place it under the tab bar and not make it jump, as it will do in our first implementation.

What I'm still unsure about, though, is how to deal with things like the bookmarks bar or the menu bar, if one has shown them, and unfortunately, Alex also left those out. Also, things like additional app toolbars added by add-ons are something we still need to figure out completely.

I know some users will be upset, and it must be a preference in the beginning, but for SeaMonkey purposes, I don't see how we should ever get mail tabs and browser tabs into a single window if we don't move tabs to the top.

Still, I'd love some ideas about the problems I pointed to. Any thoughts?

(Oh, and, of course, we still need someone to implement/port the actual code to even enable this in SeaMonkey - help would be appreciated!)

By KaiRo, at 16:11 | Tags: Firefox, future, Mozilla, SeaMonkey, tabs, Vision | 14 comments | TrackBack: 1

June 21st, 2010

Weekly Status Report, W24/2010

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 24/2010 (June 14 - 20, 2010):
  • Releases:
    Once again, continued following Firefox release discussions to determine when we can ship 2.0.5 in sync with their builds. This might now come really close.
    In the SeaMonkey Meeting on Tuesday, we decided to freeze for Alpha 2 tomorrow and add a third alpha in July or early August.
  • Build Infrastructure:
    I fixed Linux64 trunk builds by switching to gcc 4.5, which I had installed the week before anyhow.
    To fix some test failures related to painting, I installed VNC on all Windows slaves, so that a screen seems always to be attached and painting is done correctly. The success was a bit hard to verify at first, because our master got stuck, but Mozilla IT people reacted relatively fast to reboot it - thanks for that!
    On Linux slaves, I also installed ccache and put it into use on 64bit at the same time as the new compiler.
    And while I was at it, I did the upgrade to buildbot 0.8 on the Linux slaves, and that seems to have gone well for those. Thanks to Ben Hearsum for providing me with the packages in absence of a solution for direct access to puppet packages.
    On machine requests, I filed a bug for Mac64 and Win64 slaves so we can at least set up experimental builds. I also filed a bug intended as a tracker for the needed machines in the one year hardware strategy 2010 - it looks like Seth also welcomed it as a general envelope bug for that strategy.
  • Data Manager:
    The currently available version on AMO is still 0.7, but it's now a public Add-on.
    In my local code, I have done quite some work to detect what specifically has changed when we observe a data change, and even implemented the UI reacting to such changes for cookies. The next step is now to do the same thing for the other data types - once that's finished, I'll be able to call the result a 1.0 version. :)
    Also, I asked the Firefox UX team for design help, with the outcome that I should probably ask more publicly about Firefox efforts in similar directions so we can potentially reduce overall overlap. I'm still not sure if they really want as much detail in their UI as Data Manager is presenting right now - but if so, I hope my work is a good base even for them. ;-)
  • Places:
    Reacted to more review comments on places bookmarks, and during investigation of the locked database infobar, I realized that the "Know Your Rights" toolbar was not shown any more, which Neil fixed very fast. Thanks for that! I also realized we'll need an additional help topic that is called by that locked database infobar, and filed a followup bug for that.
    I also updated the patch for making site icons work with places, which I originally thought of as a followup, but may be useful by itself for history as well, so I'll drive it into the tree independently.
    While I'm waiting for more bookmarks review, please continue testing the current try builds.
  • Themes, Plugins:
    I worked to get my themes updated for 2.1 Alpha 2 and during that realized that SeaMonkey is missing outdated plugin notifications, which would be a really good thing to add for the 2.1 series. Help on that is wanted!
  • Various Discussions:
    XPCOM changes, gopher removal, perma-oranges, hardware acceleration and Linux, trunk-is-not-trunk model for Thunderbird, Mozilla security bug bounties, upcoming reporter removal/replacement, UA strings, FF Beta tester feedback tool, etc.

A lot of things are moving forward nicely: Our build machines and test results have improved a lot, but still need some more work - on the latter, you can help as well by figuring out causes of test failures and trying to come up with patches. Passing automated tests would and will make SeaMonkey 2.1 a better product!
That said, I think doing another alpha soon is a good step to that as well, even if the first alpha only had 3300 downloads so far and is at roughly 200 daily used installations now. Handing out somewhat tested milestone builds to people should improve testing of new code and has already doubled overall usage of 2.1-targeted builds up to this point. Further alphas should improve that even more. And the new 2.1 features gained some SeaMonkey-specific points as well recently, which is nice as well.
My own large projects are progressing, but not ready for inclusion yet - places bookmarks is going a bit slow on reviews, and Data Manager not really feature-complete at the moment, but both are moving in the right direction and I hope both will still make the 2.1 release.

By KaiRo, at 16:36 | Tags: L10n, Mozilla, SeaMonkey, Status | 10 comments | TrackBack: 0

June 18th, 2010

Data Manager Add-on Now Public

I've been talking about Data Manager here before, the central access point to all kinds of data stored within SeaMonkey and Firefox, like Cookies, Content Preferences, Permissions, and Form Data, all within an about:data tab in the browser.

The current 0.7 version allows all the data to actually be managed, but dynamic updates of the UI on data changes are not fully implemented yet.
The actual functionality works and is stable enough for common use in my internal testing.

And now, it's a public add-on for Firefox and SeaMonkey on AMO!

Feel free to download it and play with it, I think it has some potential. In the meantime, I'm working on those dynamic updates of the UI when data changes, and I made some progress today in detecting what actual entries have changed, so that in a next step, I can actually get the UI updated for those. I hope I will make progress on that soon.

Until then, please test the current version of the add-on and tell me what positive and negative experiences you make with it (except for the lack of dynamic updates, which is the only really known issue).

By KaiRo, at 01:30 | Tags: Add-Ons, Data Manager, Mozilla, SeaMonkey, SeaMonkey 2.1 | 2 comments | TrackBack: 1

June 17th, 2010

2.1a2 Code Freeze On June 22!

In this Tuesday's SeaMonkey Meeting, we discussed our next milestone, SeaMonkey 2.1 Alpha 2, and figured we should create that one sooner rather then later.

Because of that, we decided on the following date:

SeaMonkey 2.1 Alpha 2 code freeze: June 22nd, 2010, 23:59 PDT

Builds will be created as soon after that as no blockers remain, release once we have enough testing on the candidate builds - we hope that will be soon after we freeze and build, hopefully even still in June.

This release will once again be a testing preview of the next upcoming stable SeaMonkey series, and not feature localized builds, as usual in alpha milestones in Mozilla projects.

By KaiRo, at 23:59 | Tags: Mozilla, release, SeaMonkey, SeaMonkey 2.1 | 2 comments | TrackBack: 0

June 14th, 2010

Weekly Status Report, W23/2010

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 23/2010 (June 7 - 13, 2010):
  • Releases:
    Continued following Firefox release discussions to determine when we can ship 2.0.5 in sync with their builds.
  • Build Infrastructure:
    Installed YASM and gcc 4.5 on Linux and YASM on Mac build machines. YASM is needed for speeding up the recently landed WebM decoder, and gcc 4.5 should bring a few improvements and get us ready for potentially using PGO if we ever get enough machine power for that.
    Regarding machine power, I sent my projections on needed, wanted and ideally "like to have" hardware requirements for the SeaMonkey project to Seth from Mozilla Community Giving, in the hope that this help us getting at least the first of those categories satisfied by them. They have been very helpful so far in providing the machines we have, I hope we can continue this good collaboration.
    I also did some investigation for an upcoming buildbot upgrade, but without access to puppet packages, this is significantly more work than anticipated/hoped.
  • Build System, Automated Tests:
    As a module owner, I was happy to do some reviews for the build system, as this means things are progressing - even if the list of changes to port is growing again.
    When I checked package-compare to find out if some recent test failures could be connected to missing files, I found that was not true, but we were indeed missing a file for the new Add-ons Manager, which I corrected.
    I also investigated a test leak we're experiencing. I found a way to fix this on the test side, but we should keep an eye on the issue, as the leak might also be an actual issue in our tabbrowser with tabs that are closing themselves "too fast".
  • Data Manager:
    I evolved this add-on from 0.4 to 0.7 being available on AMO, and have requested this be be public now, as all major functionality is implemented. Context menus, sorting, keeping selections intact, improved cookie info, and even "forget all data from this domain" have been completed this week. The only missing piece in 0.7 is updating dynamically to data changes (those are even already observed, but noted in the error console instead of being reacted upon).
    During the work for that, I discovered that observers are broken in current password manager, but later that new bug was found to be a dupe of a two-year-old one...
  • Places:
    Reacted to the first review comments on places bookmarks, with some help from the places team. I filed a bug on incorporating improvements from those comments in Firefox and could already land the first patch for that. While I'm waiting on more review, please continue testing the try builds.
  • German L10n:
    After some time without updates, I did a larger L10n pass to get German SeaMonkey to go green on trunk again - including all changes in shared modules.
  • Various Discussions:
    Finally posting publicly about Whistler, missing items in Mozilla timeline, graveyarding old "View Source" component, Mandelbot going public on AMO, MPL update, XPCOM changes, etc.

I've spent quite some time this week thinking about the Mozilla platform and how it is a real game-changer. As much as Firefox mas matured and a lot of the platform functionality has as well, as unpolished a diamond stays the platform itself. There's tremendous worth in it, but it looks shabby and dirty for most people who don't know it really well. I think it would take a real coordinated effort with some person/team taking a real lead to get it polished up and make it really shine, but I'm not sure how to manifest that, esp. given the way previous efforts on working on that have failed. I've even pondered the idea of having an organization like MoCo or MoMo that could take the lead, have a handful of employees and build infrastructure running builds for multiple apps in a shared environment, as build/machine requirements are pretty similar and sharing could profit all participants. But then, it would mean a significant investment to build this up, and I have no idea who would do that - and I also don't have a good model of how to sustain such an organization - yet.
If it would manifest itself, it might be a good option for SeaMonkey to work with that or even be an integral part in this, I believe.

Back enough with dreams for the moment, I have enough real work to do after all. ;-)

By KaiRo, at 21:58 | Tags: L10n, Mozilla, SeaMonkey, Status | 4 comments | TrackBack: 0

June 10th, 2010

The Real Difference Is The Platform

I just read this blog post on extensibility of Safari, Chrome, and Firefox - and it hits a very important point.

Chrome is winning an interesting share of users, Safari wants to do the same, Firefox recently goes out of its way for improvements that make it more alike to the "cool child in the block" that Chrome currently represents. Now, many of the improvements the teams are making are worth to be made by themselves, with our without having competition in that field - I'm not sure all of them are, but that's a topic for other discussions.

What's important is that we look into what makes a difference between Chrome, Safari and Firefox. Now, as I recently posted, the mission is the main philosophical difference. On the side of the product, there is a real difference as well though - even if we'd match Firefox to look, feel and function almost or completely like Chrome (which I'm sure the team are not really targetting, even if they're going a lot of the way in that direction), that would persist - and if it wouldn't, I'd not feel like it would still be right to be called a Mozilla product.

And that difference, the one thing that sets our technology apart from any competition, is the Mozilla platform.

The core of that platform goes back to a decision of a few probably visionary Netscape engineers back in 1998 who found out that the new web renderer they designed for "Netscape 5" in the newly founded Mozilla project was so fast in rendering basic web pages and even form elements that they decided it would make sense to use it even for rendering the browser UI with that renderer - using the same code and definitions on all supported platforms. As HTML didn't have support for all a UI needs and the HTML box model was made for scientific documents and not on-screen design, they created XUL as the markup language the web renderer (Gecko) would use for that UI - but the key was that it was extensible in many ways with very web-like technologies that were - and are - quite easy to learn and use (and IMHO, much of it is even easier than HTML itself, as e.g. <input> has strange syntax there).

The extensibility of that platform and making UI work with web-like technologies made it a no-brainer to support additional modules that could be installed, later called "extensions", nowdays a part of the refined "add-ons" system. As the UI itself is built with the same technologies, that also means those extensions or add-ons can do anything the UI can do or that the application can do - I just recently converted what I previously ran as a full-blown application into a Firefox (and SeaMonkey) add-on ( Mandelbrot), for example.

With the tremendous success of Firefox over the last years, a rather large add-ons ecosystem has formed around exactly that platform that allows any extension the same flexibility as the application itself - and even though generic packaging and installing isn't very well-supported, whole applications are powered by the Mozilla platform or based on Mozilla technologies.

And that is the real strength of Mozilla technology-wise. We have a very powerful platform that allows building extensions to our applications or whole products by themselves (using XULRunner), and all those use "web" or very "web-like" (but IMHO to some part even cleaner) technologies and work on all platform that platform can be compiled on, recently that even can include mobile devices.

The real technology difference of Firefox, Thunderbird, and SeaMonkey to any competition is that extensible and powerful platform. If we want to "win" over any competitor, this is one thing we really need to focus on, this is the ace we need to play. Other might try to match us there, but we have put 10 years of the work of great minds into developing that strength, others won't match that easily.

So, let's put this difference to work. Our mission for a better and open Internet and this great platform technology ought to be a game-changer. We need to build on those to succeed. But we can do it. So let's get to work, and let's tell people about it.

By KaiRo, at 18:38 | Tags: Firefox, Mozilla, platform, XULRunner | 11 comments | TrackBack: 0

June 8th, 2010

No-Conference Travel-Free Year For Me?

In 2009, I've been to more conferences and more different places than ever before in my life. FOSDEM in Brussels, lift09 in Geneva, MAOW in Berlin, MozCamp Europe in Prague, not to mention the local Linuxwochen conference in Vienna and a vacation in the US.
The year before, I had FOSDEM in Brussels, a vacation and visit to Mozilla HQ (including a brown bag) in the US, the Mozilla Summit in Whistler, and MozCamp Europe in Barcelona.

I expected this year to follow that pattern, with being invited to another FOSDEM, lift10, and Summit, probably more. As a remark: Don't ever expect that, or you could be seriously surprised. And so far, this year looks very different: No conference (except Linuxwochen here in Vienna), no vacation, no travel. None done, none planned. And no, Eyafjallajökull is not to blame this time. I am, probably, though not intentionally.

Early this year, with the release of the long-awaited SeaMonkey 2.0, a vacation, and Christmas behind me, I felt frustrated by some people shooting down 2.0 and praising 1.x because of things that sounded minor to me, even calling me names for some decisions or compromises I had made in my own work, and, after all, by further development stalling somewhat while the rest of the world was moving on and though I was putting a lot of work into the project. Being a workaholic and quite success-oriented, this made me quite uncomfortable and should have even more effects, but an immediate reaction was to cancel my FOSDEM trip and instead get some measurable work done, as a sense of achievement always makes me feel better. And, after all, I'd meet many of those people on the Summit later this year anyhow. Or so I thought.

When lift10 came near, it became clear that Mozilla Europe didn't think our engagement in that through early enough and we wouldn't take part there after all. I don't want to blame anyone, but it meant one interesting conference (and travel destination) less for me. As it conflicted with the local Linuxwochen event here in Vienna, I could live with that after all.

And then, people were invited to the Mozilla Summit in Whistler. I had been looking forward to meeting a lot of Mozillians, finding out a few things in side talk with a number of people, discussing the future of Mozilla and the web as well as staying longer in the area, visiting Seattle for more than half a day this time, and possibly even driving down to Portland to be at OSCON.

But my invitation didn't arrive. I tried to ask back with the person in charge of invitations but didn't get an answer, so I mailed Mark and Mitchell, the heads of Mozilla. And Mitchell, who I hold in high respect due to her openness among other things, did reply - though unfortunately a bit differently than I had hoped. Apparently some inherently stupid remarks of mine, some passionate tries to prove some arguments back in the days when I was so frustrated (see above) did go as far as to break the trust in me with a number of powerful individuals in the Mozilla community. Enough that they apparently vetoed my being invited. And some feeling that myself and SeaMonkey would be conservative and backwards (I guess we never will shake of the stain of reminding people of the past) surely didn't help in getting me on the list for an event where we're supposed to discuss the future of Mozilla and where we and the web need to go to stay relevant and open. In the end, the result is that I'm shut off and not invited. Bummer.

It's really hard to explain this without blaming anyone or making anyone look bad but myself - and I really want to take this all on myself. Still, I owe the community an explanation. Also, I know I said dumbly emotional and stupid things and I'd like to apologize to anyone who felt offended or lost trust in me, even if it doesn't change that particular picture. We need to keep working together and bad feelings need to be cleaned out no matter how things go for this particular event.

In the end, I hope this explains why someone who built up the most-used localization 10 years ago, who coordinates a Mozilla-hosted application project, is passionate about the mission and whose add-ons have 13.8 million total downloads, 19,400 weekly downloads, 984,000 active daily users in total (as of today) will not be present on the Summit.

I for myself can only hope I can win back the trust I lost and see things turn out differently in the future. For that first week of July, I might stick to what I hear in those Country Music tunes I like so much and drown my tears over this outcome of what was largely my own mistakes in some Whiskey. I have a few good bottles of all six Classic Single Malts here, after all ;-)

By KaiRo, at 02:37 | Tags: Mozilla, SeaMonkey, Summit, travel | 12 comments | TrackBack: 1

June 7th, 2010

Weekly Status Report, W22/2010

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 22/2010 (May 31 - June 6, 2010):
  • Releases:
    Listened to the Firefox release discussions to determine when we can ship 2.0.5 in sync with their builds.
  • Data Manager:
    There is now a bug report for inclusion of Data Manager into SeaMonkey to unify cookie, permission, password, and form data management and probably obsoleting all the separate managers we have for most of that right now. Meanwhile, I could develop the add-on a bit further, completing the ability to delete all displayed data by adding that functionality for content preferences as well. Also, cookie sorting and some command keys are implemented in the new version 0.4 that is available on AMO.
  • Places:
    The first few review comments on places bookmarks are there now, I need to look into them, probably with help from the places team. Feedback from testing of the try builds is positive, but more of that testing would probably be helpful.
  • SeaMonkey L10n:
    The first patch to making "site" vs. "web site" vs. "website" usage consistent has landed on the tree!
  • Various Discussions:
    Blog post on not being invited to Whistler, WebM and open video, "I believe" idea, buildbot 0.8, commit access policy, missing MDC docs, Lightning prefwindow, add-on manager library, etc.

This week, a few events in the strange world of what they call "real life" has sent me to some interesting adventures and fun but reduced the amount of work I could do next to that. Still, I could drive Data Manager another step - on the path to 1.0 the missing items left are some context menus on the lists, the "forget all data from this domain" function as well as dynamic updates of shown lists and tabs when the data changes from any indirect manipulation.
Sorting of some of the smaller lists and other functionality extensions can go into post-1.0 work (1.0 is when I'd like to get the add-ons public and start integration into SeaMonkey proper). What I'm still not completely sure about is that tabs-inside-tabs interface, I'd hope some good idea will come around there still.

By KaiRo, at 18:32 | Tags: L10n, Mozilla, SeaMonkey, Status | 4 comments | TrackBack: 0

Feeds: RSS/Atom