Page MenuHomePhabricator

GSoC-2018 Proposal: [Wikimedia Commons app] Allow users to browse Commons from app
Closed, DeclinedPublic


Name: Rostyslav Khoptiy
Freenode Nickname: ros65536
Personal Website:
Resume : PDF
Location: Portugal
Working hours: 12h00-21h00 (GMT+1)

GSoC Proposed Task: Wikimedia Commons app: Allow users to browse Commons from app

Most people nowadays use their mobile devices to access the internet and to take pictures, therefore improving the Wikimedia Commons Android application with search features should incentivize more users to upload higher quality images to the platform while making it possible to search the existing pictures using an Android device.

Mentor: @Nes
Co-Mentor: @Nicolas_Raoul

The referenced project proposal lists a possible division of the project into items, which are here referenced by their numbers.

April 23 - May 14Community Bonding: Discuss with mentors and the community the requirements of the project. Experiment with and learn the application codebase and tools used. Familliazire with and debug the scrolling list of recently featured images (task 1).
May 14 - June 11Develop a simple "minimum viable product" implementing the functionality for searching by images using the Mediawiki API and a basic UI (tasks 2, 3, 4)
June 11 - June 15GSoC 1st Evaluation. Write documentation, tests, fixing bugs, release a prototype (task 5) and discuss with the mentors the progress so far
June 15 - July 9Implement missing features from previous code phase. Add search by categories and subcategories and the corresponding UI (tasks 6, 7, 8)
July 9 - July 13GSoC 2nd Evaluation. Write documentation, fix bugs, release a prototype (task 9) and discuss with the mentors the results so far.
July 13 - Aug 6Finish any missing features, improve code, documentation and UI. Improve test coverage. Release a working build of the application. If time allows add feature to show the best images first for each category/subcategory (task 10).
Aug 6 - Aug 14GSoC final evaluation. Submit a working application with the features that could be developed unitl this point. Improve code and documentation.
Aug 14 - Aug 22Continue working on the project with the mentor's approval.

Code Hosting:
Since the original project is hosted on github I would either fork the project and develop the features on a new branch to be later merged into the main repository or I would create a new branch for the project and then merge when the code is accepted by the mentors. I could add the mentors to my fork so they can provide me insight, code-review, etc when appropriate.

I can communicate with the mentors and the community on this website and on github about the project, the features to implement, issues, etc. Further communication can be done by email or IRC.
I can also write blogposts (on my website or elsewhere) about my weekly progress if deemed necessary by the mentors/community.

About Me:
I’m currently finishing my 3rd year of a 5 year degree in “Informatics and Computing engineering” (like CS) at the Faculty of Engineering of the University of Porto (FEUP).
I'm attending classes and have exams until around the 29th of June (end of exam period), time after which I will be able to fully dedicate myself to the completion of this project since I will have no further commitments during this time period.
This project is really interesting for me since I’ve been meaning to improve my programming skills by working on a real life software project and since I have yet had little exposure to developing for open source projects this would be a great opportunity for growth and learning. I’m only applying through the GSoC program.

Relevant Experience:
I have already developed applications for the android platform, using both java with the libgdx framework (store listing) and C# with Xamarin (store listing). Both of these projects taught me how to write OO oriented code, how to make it testable, how to design UI for mobile and how to develop and deploy for the android platform. I have also had the opportunity to learn how to write documentation for my code and also how to use a unit testing framework (jUnit and Easymock for java).
While I have mostly worked on a bunch of my own hobby projects which can be found on my github, I have tried to contribute to the Visual Studio Code project by trying to fix a bug (My PR).

Event Timeline

Ros65536 renamed this task from [Wikimedia Commons app] Allow users to browse Commons from app to Proposal: [Wikimedia Commons app] Allow users to browse Commons from app.Mar 25 2018, 9:35 AM
Ros65536 updated the task description. (Show Details)
Ros65536 added a subscriber: Nicolas_Raoul.
Ros65536 renamed this task from Proposal: [Wikimedia Commons app] Allow users to browse Commons from app to GSoC-2018 Proposal: [Wikimedia Commons app] Allow users to browse Commons from app.Mar 25 2018, 10:45 AM
Ros65536 updated the task description. (Show Details)

Any microtask you performed on the Commons mobile app maybe?
Or if not, on other Wikimedia software?
Thanks! :-)

No, sorry. I have been very busy with school work to really look into it.