Bazaar2 Monthly Report - July 2016

Added by hans over 1 year ago

July was a busy month for new partnerships and people. The partnerships spread F-Droid to more users and use cases, while building a community that relies on F-Droid and is invested in its maintenance. The new people expand the work we are currently doing: now that we are nearly complete with the large architectural changes, we are starting the big overhaul of the user experience.

  • F-Droid was chosen as the app store for new partnership deal between Copperhead and SaltDNA, a startup to build a secure messaging platform.
  • We signed a contract with Blue Jay Wireless, a small telecom in the US, to develop two new core features.
  • Carrie Winfrey joins us again to lead up the user experience work on the F-Droid client app. She previously lead the UX for the app swapping work.
  • Brennan Novak to lead up the usability research and work around the user experience for Android developers.

Objective 1 Simple multi-pronged distribution

We now have the drozer setup automated and triggering based on the fdroidserver build process. Drozer actually runs the app in an emulator and probes it for vulnerabilities. Drozer can run pre and post build for F-Droid. Depending on how you'd like to proceed with reports (if an app fails the scan, should it be allowed to be built etc?) we can switch the workflow on the fly - that's the beauty of using Docker for this. Once we get it all integrated, we can start scanning all apps distributed by To start with, the Drozer reports will be shared privately, so we can manage when found exploits get divulged. Ultimately, we aim to have this information fully public.

Blue Jay Wireless has setup their own custom app store based on the F-Droid client app and developer tools. They have hired us to develop two chunks of functionality they need, which also help us with the Bazaar2 goals of developing tools for trainers and organizations to deploy apps, as well as to get app usage data in a privacy preserving way so that F-Droid can show how popular apps are without privacy concerns. The first is end user controllable “push” install/uninstall of apps, which can be used in trainings to easily setup people’s devices. The second is an opt-in “popularity contest” that provide counts of installs, uninstalls, and install failures without linking the data to the user. The provides user generated app ratings.

Objective 2 Curation Tools for Organizations

  • DigiSoc ran a training in rural Zimbabwe where they were user-testing F-Droid app swapping to get apps to trainees in places where the internet is constrained.
  • Now that Blue Jay Wireless is funding the development of push installs and user-generated popularity data, we have shifted the design goals of these tools around what those features can provide. For example: a trainer can setup a custom collection of apps and media, then enable the push installs. She copies the collection to a portable device, like a phone or a LibraryBox. The trainees connect and accept the push install opt-in. The trainer’s apps and media are automatically installed on the trainees’ phones. The trainer can track progress by seeing if the successful install count matches the number of trainees.

Objective 3 Modern App Store with Built-in Circumvention

Data Model Overhaul

This month the focus of development was on overhauling how all of the app store data is represented in the client app’s database. In addition to adding support to media, the new data model lets F-Droid represent lots of various edge cases in a much clearer and usable way. For example, it will now handle when an app has updates available that are signed by different keys. These changes to the database are nearing completion, many of them have been merged into production, and the last few should be merged in over the coming month.

UX Overhaul

We also have been focused on the UX overhaul of the main app store experience. The UI related meetings have taken place with Carrie, Hans, Mark, and sometimes others. In addition, other regular F-Droid contributors have provided valuable feedback on the issue tracker in response to these meetings. As such, the UI design from Carrie is now approaching something which is ready to implement. It is looking like we will be able to start working on implementing this UI in August. You can join in the conversations here:

Streamlined Install Process

The new install process has been incorporated in v0.101 alpha builds, and we have been receiving feedback and bug reports from testers. This install process covers both scenarios how F-Droid is installed: as a third-party app store installed like an app, or like a built-in app store that is included in a device or Android ROM by default (for example, you can buy a device from Copperhead now with F-Droid built-in In addition to fixing bugs, we added automated tests of the install process.

Objective 4 Partner Deployments

We had more conversations with Storymaker about their needs.

Objective 5 Usability Research on In-country Developers

We have hired Brennan Novak to lead up this research and to work on developer user experience in general for this project. Brennan has worked on Mailpile, Qubes, Transparency Toolkit and more as both a UX Designer and a developer, so we think he’s uniquely qualified to do this research.