Focusing on the integrated Firefox Sync experience

Today we are announcing the end of official support for the Firefox Sync add-on, focusing resources on improving and supporting the Sync experience for those users in the latest versions of Firefox. This means that the add-on will not be available at addons.mozilla.org and the only way to get Firefox Sync features will be to upgrade to the latest version of Firefox where they are built into the browser.

A lot has happened since Mozilla launched Weave back in 2007: We launched Weave as an add-on, rebranded it as Firefox Sync, moved Firefox to Rapid Release and eventually integrated Firefox Sync into the browser. Our goal has always been to offer the best service so you can seamlessly share your Firefox experience across devices

Since the launch of Firefox 4, the browser comes bundled with all the goodness of Firefox Sync. Because of the continued support for Firefox 3.6, we have continued to support the add-on. This causes a great deal of engineering & testing headaches between the add-on and the integrated Sync. We also see a lot of users unhappiness since the add-on does not support some of the newer, highly desired, features we’ve added to Sync.

Keep in mind the add-on will still be usable for now, but we will not guarantee its reliability in the following months and foreseeable future. We ask everyone still using the Sync add-on to move to newer versions of Firefox to enjoy the best online and Sync experience.

— mconnor & ibai, on behalf of the Services and SUMO teams

Introducing Project Sagrada

Project Sagrada is a Services project to build a solid and stable platform to develop new and highly scalable services and applications to support Mozilla’s mission. The initial goal is to make it easy for internal developers to build reliable and high performance backend services, easily deploy them to test or production, and have their deployed services be robust and easy to manage. Based on the current product direction for the known services, this set of capabilities are both the hardest to get right at scale and the most important shared aspects between all of the services.

The first phase of the project will focus on adding capabilities (abuse detection, metrics, crypto, and more) and tooling (testing support, build automation, and packaging/dependency tracking) to the current python services-core framework. Later phases will provide better support for building and deploying web-based applications, increasing amounts of “self-serve” capabilities around deployment and provisioning, and options for isolating experimental/external apps.

Creating a core set of stable and reusable code libraries and, where appropriate, web APIs alongside the programmatic ones, technology choices (i.e. which key-value store, which auth technology, which abuse detection system, etc) are abstracted away and allow the user to focus on the core of code that is unique to their app. We believe this is the best and fastest path to a solid, scalable and highly capable base platform that can be used as a framework and as individual components.

How We Get There

Our efforts to date have focused on building out and refining capabilities as they arisen on a project by project basis. While still maintaining a focus on products we support and products we are working towards launching, our priorities in Q4 and beyond will shift towards building generic support for applications that teams across Mozilla will develop.
We recognize that this is a highly ambitious project, and can be effectively described as completely open-ended. While true, there is much to be said for where we can get in finite time along that path.
The structure of a service generally follows the same pattern: a set of API entrypoints, some authentication, controller logic, storage, and a response. Then there’s the additional questions of deployment, monitoring and maintenance. All of these things combine to make writing an app from scratch a challenge, especially if you want to build it to scale out of the box.

What if we could make that 20% easier? That would seem to be a big win, both internally and externally. We probably have that today – use our base application and generating your entrypoints is pretty simple. Sure, you still have to write all your controller logic, and figure out your storage story, etc, but hey, 20% is a pretty good start.

What if we could make it 40% easier? Simple key-value storage APIs and a strong metrics component might do that. And so on and so on.

Why not use one of the many available frameworks out there? We could probably pick up a quick win building on one of them, and we haven’t ruled out the possibility. However, most frameworks are built to support HTML generation, and while they’re capable of creating the appropriate responses, they pull in a lot of additional functionality that we do not need or use, and if it gets in the way of our ability to scale, it’s a nonstarter. Making it easy for us to get to 30% is a great idea, as long as it doesn’t make it much harder to get to 50%.

The ultimate goal is 100%. This goal is impossible, as any computer programmer can tell you, and trying to achieve that produces the infinite horizon that makes this work seem so vast. But setting that as the goal misses the point – getting a user 75% of the way to having a stable, scalable backend application that does what they need would be an enormous game-changer in the application creation space.

The Roadmap

We’re still in the bootstrapping phase of the project, so we’re building some of the obvious pieces, and gathering feedback on the rest. Please see the wiki for the current set of features we’re looking to add to the platform.

— mconnor & telliott, on behalf of the Services team

Enabling Quotas for Firefox Sync

This generally won’t affect users, but we wanted to be open about a change that will be deployed soon for our production servers. Essentially, we’re going to be defining a per-user disk quota for Firefox Sync, with the initial limit being 25 MB of data per user. For the vast majority of users, this will be completely invisible, since the typical user uses a lot less. (I’m a very heavy browser user, and I’m at around eight megabytes of usage.) We’ve attempted to answer some of the expected questions below, but anything else can go in the comments.

Why implement quotas?

We want to keep Firefox Sync as a free service for everyone. In order to make this viable, we have to take steps to control costs and prevent abuse. Implementing a reasonable default cap on disk usage is an obvious step in that direction. We believe the initial default will be sufficient for nearly all users.

How much of my data will I be able to sync?

In general, as much as you’re already syncing. Based on our current usage statistics, this quota will be enough for more than 99.9% of our users. The average user uses about 1 MB of data, with an average of 83 bookmarks, 11 passwords, and 1500 history items. Even around the 90th percentile of users, the disk usage is under 6 MB, with around 700 bookmarks, 12000 history items, and 100 passwords.

Can I get more space?

While the specifics have yet to be determined, one of the things we’re working on is a means to allow specific users to have a higher quota. In the meantime, it is already possible to request a quota increase via the Mozilla Services Account web page. We don’t yet have a timeline for if/when these requests will be fulfilled, but we’re using those inputs to help understand why users would need more quota to inform future designs.
Alternatively, for those more technically inclined, our server code is open source and can be installed on a server of your choice. For more information on this, please see the setup instructions.

What happens if I run out of space?

When a user passes the “warning” threshold (we expect to set this to 20 MB), the server will pass this information back to the client, so users get warned before they are unable to write to the server. If a user ignores these warnings and actually hits the cap, they will be unable to write any additional data to the server, and they will see Sync errors informing them of the problem. Firefox has UI that controls what type of data to sync, and how much each type of data is using. Users will be able to disable individual sync engines and free up space, if necessary.

— mconnor, on behalf of the Services team

Firefox Sync on your Android

If you’ve just installed Firefox 4 on your Android phone, be sure to set up its must-have feature, Sync. Sync enables you to bring your bookmarks, passwords, history and even open tabs from all of your other devices. Once Sync is setup, you will no longer have to type in long URLs or remember passwords. Your Firefox will have all that and more ready for you, right at your fingertips.

If you are new to Sync, you will first need to set it up on your desktop computer running Firefox. After you have successfully set up Sync on your desktop, you can then proceed to set up Sync on your Android phone.

Firefox for Mobile Sync setup

Watch this video that takes you through the complete setup process, including setting up your phone.

To setup Sync on your computer and mobile, follow these easy instructions.

You’re done! Sync will continue working silently in the background and give you instant access to all of your Firefox data. With Sync, you can get up and go and have your data with you, right in your pocket.

If you need any help setting up Sync, head over to the Firefox Support site or ask a question on the forums.

Happy syncing!


The Firefox Sync team

Get Syncing with Firefox 4

With Firefox 4, we’re very excited to be bringing Sync as an integrated feature available right in the browser – no add-on required. Sync enables you to take your bookmarks, passwords, history and open tabs across all of your devices. If you have multiple computers, an Android phone, or an iPhone, Sync will get you up and running with your data in no time.

If you are new to Sync, watch this short video that will help you get started.

You can also follow these easy instructions to setup Sync on your computer.

Once you have successfully set up Sync, you can then add additional devices (like your work computer or your Android phone running Firefox). To do so, follow these easy instructions.

That’s it! You are now set up and ready to go. Sync works silently in the background to make sure you can safely and securely access your bookmarks, passwords, history and open tabs on all your connected devices running Firefox.

As always, we’re happy to help you set up and use Sync. Hop on over to the Firefox Support site to read the knowledgebase or ask a question on our forums.

Happy syncing!


The Firefox Sync team

Mailing List Changes

As a long-overdue part of the evolution of Weave into Mozilla Services, we are retiring a number of older Mozilla Labs lists, and creating some new lists with different aims and audiences. This means that all mozilla-labs-weave Google Groups will be closed and users directed to one of the links below.

End User Support

SUMO has been a growing part of our efforts to engage effectively with end users. We’ll be increasingly collaborating with that team to provide  better user documentation, troubleshooting help, and help forums for issues not already documented. Starting now, we’ll be directing users to SUMO for help with all end user problems and general suggestions.

The SUMO landing page for Sync is live and ready for users. We’ll be updating product page links to point to the new location ASAP.

Developer Mailing lists

For some time I’ve been watching the Thunderbird community’s tb-planning list, which was a new model for Mozilla. In general, it’s allowed that community to communicate more effectively and positively, and I think that’s a great model for us to adopt as we grow out the Services project.

Information on the new mailing list can be found on the Mozilla wiki for those interested.

Setting up Firefox Sync Just Got a Lot Easier

Firefox Sync is a built-in feature of Firefox 4 Beta that brings Firefox browsing history, boomarks, open tabs and passwords across all of your devices.

Secure *and* easy to use
We designed Firefox Sync to keep personal data secure. Until now, this meant setting up Firefox Sync was pretty involved, especially on mobile devices. Not anymore. With the latest Firefox 4 Beta release, we made some significant UI improvements to make setting up new accounts or devices for Firefox Sync easier and faster.

Sync Mobile Preferences DialogSync Easy Setup Code MobileSync Easy Setup Code Desktop



Creating a new account:
Creating a new Firefox Sync account is now streamlined, just like signing up for any web service online. You are no longer required to come up with a Secret Phrase or a Sync Key — it is automatically generated for you.

Adding new mobile devices:
For those of you who have paired a Bluetooth headset to your phone or setup your PS3/XBox to play your Netflix videos, the Sync easy setup process will look very familiar. Here’s how it works:

  1. Launch the latest Firefox 4 Beta on your mobile phone, tap on the Browser Tools button and tap on “Set up Sync”. A 12 character code will be generated.
  2. Launch Firefox 4 Beta on your desktop and go to Firefox->Preferences->Sync.
  3. Choose “Add device” and enter in the 12 character code on your mobile.

You’re done! Firefox Sync account information will synchronize with your mobile phone.

Important: Make sure your phone is connected to the Internet and you have access to Firefox Sync on your desktop.

If you are using Firefox Home on your iPhone/iPod, be sure to get the latest update (version 1.1) and read this blog post for more details on how to get the easy setup working on your iPhone/iPod.

For more information, watch this short step-by step setup video for new users.

For existing users:
You can now use the easy setup mechanism to add new devices if you already use Firefox Sync (requires the latest Firefox 4 Beta and is not available for the Firefox Sync add-on). Note that the original setup method still works if you prefer entering a username, password and Sync Key. If you are interested in all the technical details, be sure to read Sync engineer Philipp’s blog post.

As always, we appreciate your feedback.
Mobile: If you’re using Firefox on your Android or Nokia N900 go to Tools>Preferences> Beta Tester Tools and provide your input.
Desktop: Submit your feedback.


The Firefox Sync team

Firefox Sync 1.5 now available

We’re very happy to announce the availability of version 1.5 of the Firefox Sync add-on. This release has several changes that make it easier to set up Sync for first time users. We have also made some back-end changes that will require some action on your part. Please read on for the details.

Are you using the Sync add-on?

If so, you should update to version 1.5 of the add-on on all your devices. Once you update to 1.5 on one of your computers, you will need to update all of your other devices to that version as well to continue syncing.

Are you using the integrated Sync feature with Firefox 4 Beta?

If so, then you will need to do one of two things.
1. Install version 1.5 of the add-on on all your devices (you can safely disable it when you update to the next Beta release of Firefox 4) OR
2. Switch to using the nightly version of Firefox 4 (Warning: only recommended for advanced users).

If you are already using the Firefox nightly builds on desktop or mobile, you will not need to do anything.

Firefox Home users – if you haven’t already, you will need to update to the latest version (1.0.2).

Installation and setup improvements

If you are setting up Sync for the first time using the add-on on Firefox 3.5 or 3.6, you will simply be asked for an email address and password. We have removed the need for a separate username to use Sync. Existing users can either switch to using their email address or continue using their existing usernames – both will continue to work.

Also, during the installation process, the install wizard will automatically generate a Sync Key for you. The Sync Key (formerly called the secret phrase) protects your data by encrypting it on your computer before uploading it to our servers. This Key ensures that you and only you get to see your data at all times. Existing users can either switch to using an autogenerated Sync Key (you will need to update all of your devices with the new Key) or continue using their secret phrase – both will continue to work.

Backing up your Sync Key

Since Mozilla does not store your Sync Key on our servers, we strongly recommend that you make a backup copy of your Key. You can save it to a file or print it (and lock it away in your file vault). You will need this Key when you set up Sync on your other computers, mobile phone or when you set up Firefox Home.

We are working hard on making the Sync experience rock for our users. This release helps set the stage for a streamlined setup and installation experience for new users who are starting to try Sync.

As always, if you have any questions on any of this, please hop on to the Sync forums or #labs on our IRC server.