UkHackathon2017

From Kiwix
Jump to navigation Jump to search

Mini Hackathon for Kiwix Android

A mini-hackathon was hosted by Julian Harty. Dates: 14th and 15th December 2017.

Goals

To address various problems related to the Kiwix Android apps, improve the automated testing and the diagnostic logging. We will also explore whether to add a global exception handler to the app and improve the error reporting to users.

  • Effective Logging: to improve testing and troubleshooting. Revise logging in the app to report relevant data that may help with diagnostics, particularly for recent problems including crashes, access to zim files, etc.
  • Better automated testing: to increase our confidence in the product and make the automated builds and testing more trustworthy and useful. This will include creating additional Mock Objects: Implement the mocks needed for tests that use network operations e.g. download tests. Also, be great to improve the testing of key functionality including searching and results.
  • Global Error Handling: Review the initial spike that includes a global error handler and triage whether to use it, do something similar instead, or not bother.
  • Better error detection and error handling in the app: so fewer problems / errors cause the app to crash in use.
  • Optional Diagnostic Reporting: Explore approaches and methods to collect diagnostic information related to problems users have been reporting. These could be integrated into custom releases of our apps e.g. available on demand. They could be incorporated into one or more mini "diagnostic apps" which we might release as distinct apps. The data transmission and storage would ideally use an automated, established mechanism, rather than creating our own.
  • Ensure our Android apps can be built by Kiwix-Build.

[Good] Practices

Based on our review of the hackathon in Lyon we would prefer to complete smaller concrete tasks rather than open long-running exploratory code branches (many remaining open and untouched since Lyon). Therefore we'd like to commit changes and merge them on a daily basis where practical, and all changes within a week of the hackathon completing.

Participants

  • Elad (visiting from Israel)
  • Isaac (visiting from London/Warrington)
  • Joe (visiting from a couple of miles away)
  • Julian

Results

We were able to make progress and improvements in various aspects of the kiwix-android project. This included creating a proof-of-concept global error handler and reporting feature. We're awaiting feedback from other members of the Kiwix team.

We also created the new https://github.com/kiwix/testfiles repository, raised bugs and fixed things in several related repos, and documented how to create a local download server for testing.

We also integrated the new JNI video changes into the Android app.

Costs

Minimal for the Kiwix foundation.

Venue

Julian's home.