Firefox for Android Hack Week Recap

Margaret Leibovic
Mozilla Mobile Engineering
4 min readFeb 29, 2016

Last week the Firefox for Android team got together in San Francisco for a hack week. Our goal was to make progress on projects related to increasing user engagement, particularly around saving and revisiting content. And progress was made!

Rethinking Reading List

As mentioned on our mailing list, we decided to retire our current implementation of the Reading List, and replace it with a simpler way for users to save Reader View page for offline use. Andrzej spent the week focused on the main parts of this transition, including a database migration to convert old Reading List items to Bookmarks, adding the ability to bookmark Reader View items, and displaying those bookmarks as available offline in the Bookmarks panel.

Bookmarking a Reader View page will save it for offline use.

Saved Screenshots

We want to let users save more than just text for offline use. Our user research group found that screenshots are one of the most common ways people save things for later, so we decided to experiment with surfacing screenshots of web pages in the Bookmarks panel. Mike quickly built a prototype for this feature on Monday, and then spent the rest of the week building it out the Right Way.

View screenshots from your device in the Bookmarks panel.

Mike landed a URL metadata table, which gives us a place to annotate pages beyond just marking them as saved or not. In the short term, we’re planning to use this table for saved screenshots, Reader View items, and Content Notifications (see below). In the long term, we plan to sync this data, since it includes great signals that can be used for activity stream features on all your Firefox clients.

Combined History Panel

Home panels are where Firefox for Android users revisit content. Right now there are six default home panels, and it can be tedious to swipe through all of these panels to get to what you want. To reduce the number of individual home panels, we decided to combine our three history-related home panels: history, recent tabs, and synced tabs. Last week, Chenxia focused on taking a first step to include synced tabs in a new version of the history panel. This new history panel is built with a RecyclerView, instead of a ListView, which offers us much more flexibility for future improvements, and teaches us lessons we can apply to our other home panels.

Synced tabs from other devices will now appear in the history panel.

Content Notifications

In addition to helping people explicitly save and revisit content, we also want to help them discover new content they might otherwise miss. Sebastian developed a prototype to show users notifications when new content is published on websites they’ve visited before, based on updates to RSS feeds. We still need to refine the algorithms for which sites to monitor and when to show these notifications, but Sebastian has already seen a useful notification on his personal device! To avoid accidentally spamming users, we’re planning to use Switchboard for a staged roll out of this feature.

Notification about a new post to read, based on pages you’ve visited before.

I should note that although we’re working on the Push API as part of our progressive web apps initiative, this is a simple way to provide immediate value for users, without requiring websites to adopt a new technology.

Other Work

In addition to the work mentioned above, we also landed a number of other small improvements:

There’s still plenty of work to do to get these features ready to ship to users, but I’m excited by the great progress we made last week. Go team!

Go team! Not photographed: Richard Newman (the man holding the camera).

--

--

Margaret Leibovic
Mozilla Mobile Engineering

Director of Engineering at @joinleague. Previously @mozilla. I like building products and teams.