Page MenuHomePhabricator

Community bonding report
Closed, ResolvedPublic

Description

Detailed plan agreed with mentors

Done - no changes to the detailed plan at https://phabricator.wikimedia.org/T115101 at the present moment

Phabricator project created

Done - https://phabricator.wikimedia.org/tag/commons-app-android-upload/

Meetings with mentors started

Done - last meeting was at 2am UTC, 20th Nov on Google Hangouts. We discussed:

  • Getting used to the codebase for the app (especially the categorization package)
  • Communication plan (see below)
  • Potential APIs for Phase 1: Wikidata API, Commons API, and searching for existing pictures with those coordinates. Plan to test these APIs to see which one fits our needs best.
  • It was suggested that I announce my project on various mailing lists and try to recruit testers
  • Emulators and testing

Bonding period report

Work done

  • Set up project board and learned about project and task organization
  • Set up and used Google Hangouts
  • Installed Intel HAXM and enabled virtualization in BIOS in order to use the x86 emulator for Android (which is VERY much faster than arm - thanks for the tip Niedzielski!!)
  • Announced project on wikitech-l, mobile-l, commons-l, and wikivoyage-l as well as at the Commons village pump, Wikivoyage travellers' pub, and Commons Mobile App discussion
  • Started posting in Google discussion group for this app
  • (In progress) Familiarize self with categorization package code
  • (In progress) Read up on Wikidata API, Commons API, and how to search for existing Commons pictures with certain coordinates in preparation for Week 1's task
  • Filled GitHub wiki with use cases that we can test APIs with for Phase 1
  • Found out how to set up project with Android Studio (was previously using IntelliJ). Edited README file of project to include Android Studio setup

Lessons learnt

  • It is good practice to use fragments for Android app development even if you aren't necessarily creating more than one type of layout at first, as it provides a good foundation for future additions/changes
  • A good way to get used to a new codebase is the Android hierarchy viewer in Android Device Monitor (tree view), and using breakpoints for debugging
  • It's good to test releases on at least two Android versions: (1) the target version, in our case API 17, and (2) the latest version, currently API 23
  • Commit (and release) early and often
  • I can collapse (and expand) blocks of code in the IDE - very useful for reading a very long class!

Problems faced and solutions found

  • My mic was breaking up sometimes during the last Google Hangout, which must have been pretty disruptive. Will fix that prior to the next Hangout.
  • Attempted to use UML support plugin in IntelliJ IDEA to generate UML diagram of project. Found out that Community Edition does not have that plugin. Applied for free Open Source license for Ultimate Edition, waiting for their decision.
  • Switched to using Android Studio at mentors' recommendation. Initially had trouble importing the project, but eventually found out that the issue was that my installation of Android Studio had the Maven integration plugin disabled by default. Project works fine with Android Studio after enabling that plugin.

Changes to the original plan

  • No changes so far

Minimum Viable Product

(Phase 1, release planned for week before midterm evaluation)
App should display suggestions for categories that are geographically nearby when the user uploads a photo - https://phabricator.wikimedia.org/T119163

Communication Plan

Event Timeline

josephine_l claimed this task.
josephine_l raised the priority of this task from to Medium.
josephine_l updated the task description. (Show Details)
josephine_l set Security to None.

Err, sorry about the initial task that was sent out - I was using someone else's task source for the formatting and accidentally saved the task with part of his work still in it.

josephine_l renamed this task from Community bonding report (work in progress) to Community bonding report.Nov 30 2015, 6:34 AM
josephine_l updated the task description. (Show Details)

Hi @josephine_l, I think the bonding period is well over now. You can mark this task as resolved and continue adding new developments to your daily/weekly report task. Thanks!

Ah, whoops, didn't know I could start filling in the daily reports before the official start date. Will do, thanks! :)