Grants:TPS/RashiqAhmad/Selenium Conference Bangalore 2014
This had been a submission to the Wikimedia Participation Support process, but was withdrawn or otherwise cancelled (not denied).
I'm a passionate Wikimedian that has been active in the Kiwix project for a year now. I've got introduced to the Kiwix project when I participated in the Google Code-In competition in 2013. During this year I worked on technologies to bring educational content offline so it can be distributed to people in countries with limited access to the Internet. Among those was the entire Gutenberg library and the TED talks. I'm also the lead developer of the Kiwix Android app.
The Selenium Conference is a volunteer-run, non-profit event presented by members of the Selenium Community. It's going to take place the 4th time this year. Experts of the community from all around the world will be participating in this event.
Open Source Workshop at the Selenium ConferenceEdit
Julian Harty has planned a 2 day workshop with a final closing talk on the last day of the conference with the organizers of the conference which will focus on writing automated tests for open source projects, in particular projects for the kiwix project.
- 4th September: Hands-on workshop on test automation for mobile apps, using kiwix-for-android as the app to test. The participants will learn how to write basic (or even sophisticated) automated tests for the app using one or more test automation frameworks for Android apps.
- 5th September: Teams and possibly individuals will compete to write automated tests for kiwix-for-android and/or kiwix-serve (the http web server that serves kiwix content e.g. on the Pi). This allows people who'd prefer to focus on web app testing to write tests without needing to learn how to do test automation for Android. I hope several renown 'exploratory testers' would also participate so we can compare, contrast and combine the various skills of participants to help find bugs in the apps.
- 6th September: The competition continues until shortly before Julians keynote. Julian will talk about the results as part of his keynote. Together with the conference organizers we'll pick the winners and announce the results.
I will help and assist the experts during this whole process of writing these automated tests, since I, as the maintainer of the Android app know the in and outs of the app and it'll make the whole process easier for the participants.
Goal and expected impactEdit
Kiwix has grown to a very large project in the last 8 years, but there are no automated tests written for it yet. We would like to change that by participating in the Selenium Conference. Experts from all around the world would take on the problem for the duration of the conference (and maybe, if we're lucky, even longer). At the end of the conference we expect the Kiwix Android app and the Kiwix Http Server (kiwix-serve) to be covered with tests.
I would also use the new acquired skills to maintain and extend the test coverage for the Android App.
Why is TDD such a big deal for the project?Edit
A big percentage of our apps are used by people in third world countries with limited or no access to the internet at all. These people will have no way of updating the app and therefore the app that they have installed on their Android tablets or desktops should be as bug-free as possible. We would like to ensure this by writing extensive tests for all kiwix projects.
|Registration for the conference||free|
|Flight (economy class) from Hamburg to Bangalore:||750-900€|
|Hotel accommodation (in the venue of the conference) as listed on the conference site (4500 INR + taxes (~10%) ≈ 60€ per night)||4 * 60€ = 240€ (Wednesday to Saturday)|
|Meals, transportation, other costs 25€/day||4 * 25€ = 190€|
|Total||1182€-1332€||It all depends on how the flight price will change until the review process of this application|
I am scheduled as the closing keynote speaker for the Selenium Conference in Bangalore. The event focuses on the automated testing framework called Selenium, which is the most popular test automation tool for testing web apps and web sites. Selenium is a well-established opensource project. The conference participants include many of the committers and contributors, together with many other software engineers who are keen to improve software through automated testing, using this opensource framework.
During my discussions with the conference organisers we decided on several areas where there is useful overlap between the Kiwix project and the conference where everyone involved will benefit. These include:
I will be leading a test automation workshop for mobile (smartphone) apps. We agreed to use opensource test automation tools to test a major opensource mobile app and decided on Kiwix for Android as that app.
Participants at the conference (currently around 300 have registered) will compete to write effective test automation for either Kiwix for Android or kiwix-serve (the web server). In addition some leading software testers will complement the automated tests with hands-on interactive tests.
I will help judge the results, and also present the results and my analysis during my keynote. One of the aims is to help establish data and evidence of the efficacy and value of various forms of software testing for a well-respected opensource project (Kiwix).
Both the organisers and I would love Rashiq to be at the conference. He is the main developer of the Android app and would be able to assist with all the various activities, including the workshop, the competition and also during my keynote. In addition, by having him on-site he can work with people to address bugs and make other improvements to the Kiwix for Android app very quickly so that we can iterate quickly and as importantly, actually improve Kiwix in the process :)
The conference is not-for-profit and priced (like the recent wikipedia conference in London) so it's affordable; therefore the conference doesn't have money available to pay for Rashiq to come to the conference. Therefore we'd appreciate you being able to fund his trip and participation. Please contact me with any questions. I'm currently in Chile for about a week working on other projects so may take up to 12 hours to reply.
We created Kiwix 8 years ago and our target devices were mostly PCs. For the first time, we have achieved last year to launch a port of Kiwix for a mobile OS: Android. Rashiq has been participating actively to the adventure since 8 months and has done an amazing work by fixing bugs and implementing new features.
The Selenium Conference Bangalore is a great opportunity for us:
- It push the Kiwix development because we absolutely want to release Kiwix for Android 2.0 before the conference to provide a new feature allowing to download/manage our content from Kiwix itself. This is important for our customers. This is important for the workshop attendees too to provide "complex" features to play with.
- It's a great opportunity for Rashiq (and for our team by extension) to improve our Q&A and start to build new skills in that domain. Due to a lack of resources and know-how we were not able to work much in the "testing" field until now.
- This is also one of the best opportunity we ever had to advert our software and our work and get new developers in India. India is a really interesting country for our project in many ways and is pretty much in focus.
We have had the time to discover that it's difficult to find volunteer developers who are at the same time committed to the project, talented and pragmatically take time to work on it. Rashiq has proved to be one of them and that's why I support 200% his application to the Selenium Conference Bangalore, he is without any doubt the best person of our team to attend to this event.
As one of the organisers of the Selenium Conference, we believe Rashiq's participation in the conference will really help us with the following:
- In assisting Julian during his OpenSource Mobile testing workshop
- During the bug-bash, to help the participants of the bug-bash understand the functionality of the Kiwix project
Also its a great way to acknowledge Rashiq's contribution to the Kiwix project.