31 August 2010 - 13:00There’s Always Another Release

As Atul mentioned in “The Social Constraints of Bettering The Web” [toolness.com], Account Manager will likely not make its way into Firefox 4. He points out one of the biggest bottlenecks as getting approval from Firefox product drivers:

Within Mozilla, I see my coworkers vie for the attention of this tiny handful of gatekeepers. People in charge need convincing; the clever social engineer has a lot of power when it comes to navigating this landscape.

This last step of getting approval comes at the very end of a long line of work. While Dan and I have been busy implementing the core feature and making sure it doesn’t regress performance and tests, a good number of people have been involved both inside and outside of Mozilla to design the user interface, to flesh-out the spec and to integrate the feature into sites or as plug-ins.

Alex Faaborg's mockup of letting users pick different types of accounts

But this approval process affects people outside of Mozilla as well. New developers in the community hear about neat features of the upcoming Firefox and want to help by hacking on patches of related features. For example, the status bar removal in Firefox 4 has a number of side-effects including the removal of the download statusbar. Alex Limi has suggested ways for “Improving download behaviors in web browsers” [limi.net], which would add a new toolbar interface, and while there are initial patches from multiple community members, it seems unlikely to make it to Firefox 4.

I even ran into this same roadblock a couple years ago when I was trying to get the AwesomeBar into Firefox 3. Back then I was a random community member that had a good idea and was able to hack on stuff in my “free” (ha! ;)) time. It was only after a lot of prodding and persistence that got just a bit of what I worked on into Firefox 3, but that was all very stressful as I looked back on “Why I Worked On Firefox.”

But fear not community members! There’s always another release. The product drivers are not approving patches during this beta-crunch time because there’s always some risk involved with changes (especially those “it’s just a one line change” fixes :D). New changes typically are followed up by a number of new issues and patches that then need to be additionally hacked on, tested, reviewed, and approved. So just because it doesn’t get approval now doesn’t mean it won’t be accepted when the tree is more open.

Additionally, patches usually come with a number of dependent fixes that might be able to land first. And in the case of Account Manager, I’ve already gotten in some changes into Firefox 4 that improve the new PopupNotifications (used by Geolocation and Add-ons) and testing infrastructure. Some other useful changes that could land independently of Account Manager are some upgrades to the Password Manager and networking APIs. So while the core feature might not be in yet, the platform is made better and ready for it.

So keep hacking away and perhaps your feature will be ready to land on the open tree after Firefox 4 branches. And then it’ll have many months to bake and get tested by other community members and eventually be seen by millions of Firefox users. 🙂

10 Comments | Tags: Account Manager, AwesomeBar, Development, Mozilla

Comments:

  1. Tiago Sá says: 31 Aug 2010 - 13:58

    What I don’t get is why Firefox 4 doesn’t get delayed for 2011 if these and so many awesome features are not ready for it. It’s like “who cares anymore?” if the home tab is not going to land, the identity button and its awesome anti phishing abilities are not going to land, in content UI besides the add-on manager is looking totally unfeasible… And where’s the profile manager? Where’s the add-ons toolbar? Where’s the treating the title bar as a toolbar so we can get add-on icons up there? Where’s the share button? Releasing Firefox 4 in 2010 is just not possible if we’re going to stick to what we (well, we as in the community) set out to do. It seems the things that were “at risk” on the original road map made it into Fx4, but those that were more like promises are looking more and more distant… The inspector, the web console, tab animations… Pff…

    Big bugger, I say. Here was I all hyped up ready to upgrade as soon as it came out and sacrifice many of my many add-ons, but by the looks of things, I’m going to do as I did with 3.6 and upgrade… whenever hey? When it reaches 4.0.3… yeah, seems like a good time to upgrade.

    What’s you say? >_>

  2. Good perspective, Ed.

    I noticed a common pattern between this and the last time you posted on the topic, which was that in both cases we were talking about opportunistic changes with patches and submissions that were arriving right as the main product development thrust was approaching lockdown/convergence mode, when we’re least likely to have the willingness to take unknown additional risk.

    We’ve made some improvements (like the feedback? flag) to allow for lighterweight ways of getting early review on code to make eventual landings easier, but we may wish to figure out how to further simplify/ease the cost of reviews and their iterations. Co-browsing technology may help here, as well, of course, of finding other reviewers to spread and balance the load.

    There are improvements to be made at clarifying what will and won’t make it into a release, to be sure, but ultimately it feels like we need to be more declarative of our general risk tolerance through a development cycle. Perhaps something like the US Threat Level gauge? 🙂

  3. @Tiago Sá: where were you and your contributions four months ago when we started down this road? Yes, those were our plans. They always included shipping at the end of this year, too. The result has been a balance.

  4. RyanVM says: 31 Aug 2010 - 16:41

    Tiago Sá – If the next release is always being held back for new features, the next release will never come to be. If you’ve been around the project for any amount of time, you should remember that the same situation played out when Firefox 3.0, 3.5, and 3.6 all were shipped. Personally, I’d rather see Firefox 4.0 and all of the awesome work that has gone into it ship ASAP and let the stuff that didn’t make the cut land, get polished, and ship in a later 4.x release when it’s ready.

  5. Tiago Sá says: 31 Aug 2010 - 16:54

    @ Mike.

    I did read the roadmap as soon as it was released. I don’t think was nagging you guys already, though…

    In any case, as I said, it’s a let down. I’m sure the devs, well, I hope the devs also feel sad for not delivering their every promise, but it’s a let down. I asked something about the foreseeable final released at mozilla.dev.planning, so I’ll discuss it more there, if possible.

  6. Tiago Sá says: 31 Aug 2010 - 17:02

    @ RyanVM

    Are you the post’s author? I’m a bit lost with all the nicknames, sorry.

    Anyway, it’s not new features, it’s features that are in the roadmap. I can’t be certain of this, but the account manager was in the roadmap, and it wasn’t faded out like tab candy was (in fact, I didn’t even know what tab candy was when the roadmap was shown). So either we set out to do a specific application and release it when it’s done, cutting as little as possible, or we set a release date, get work done as usual and when time comes, whatever has landed goes, whatever hasn’t doesn’t. And I’m sure this is simplifying things, but quite honestly, it’s how I feel Firefox 4 is being developed. Things are left by the wayside to favor other things that are not a priority in the roadmap, and stuff that was promised isn’t delivered. I say promised in that it’s stuff that was on the original road map. This isn’t some kind of political campaign, so it’s not in THAT sense I mean promises.

    At the end, Firefox is the only option for anyone with brains, and I believe in this with all my heart. And the web takes priority, and all these features are meant to help the user prioritize the web over the browser, not the other way around. My feeling is that of someone who loves Firefox and wants to see it being loved by as many people as possible. Well, I guess that, in actual fact, my feeling is that of someone with brains that wants as many people as possible to have brains… But as I said above, I’d like to discuss this at mozilla.dev.planning, if possible.

  7. This makes me want to say something I’ve been thinking about for a while.

    To me, being an outsider, it always seems as if the Firefox lead devs lay out these lavish, wonderful plans for Firefox. They create long lists of things that are going into the next release.

    The next logical step would be to find people who can take care of those different areas, but this never seems to happen. To paint a mean picture, its almost as if MoCo create these plans and then just lean back and hope that the community will randomly fill in the blanks.

    Surely Mozilla has the financial resources to make stuff happen in-house if necessary?

  8. There’s always trying to see if the code can be shoehorned into an extension and released that way, too, though it looks like this case involves too much changing the core code (making various things async) to get that to happen.

    As a bonus, it also exposes things that needs to be changed so other people could write similar extensions, possibly with small twists that might make the experience better.

  9. Ed, what would be nice though is to have your work available as an add-on for FF4, so we can test what’s upcoming even in the upcoming release already. Not everything might be perfect in the add-on – but then, making it even better will be an argument to look forward to the next release. 😉

    (Oh, and the add-on might give me an easier possibility to make things working with SeaMonkey as well, which is always a nice thing *g*)

  10. @Mook, @KaiRo: Account Manager was originally an add-on that was rewritten as a branch of mozilla-central to prepare for landing. I’ll probably keep updating the account-central repository with merges from mozilla-central and provide builds from tryserver until it actually lands into trunk.


Subscribe without commenting

Add a Comment