App development success

Greetings all,

I’m writing with an update and good news on app development in ODK-X. Left to my own devices, I struggled to learn enough about ODK-X to get very far in developing an app for our forest ecology research project. Fortunately, I was able to recruit two students from the Computer Science program at our university to work on the app for their year-long senior capstone project. I’m happy to report that the students developed an app that meets every one of our original objectives.

They began the project using ODK-X Survey, but soon found Survey somewhat constraining for what we wanted to do, so they transitioned the project to ODK-X Tables. This gave them, in their words, “the flexibility to run Android WebViews with custom JavaScript libraries which interface with the app’s database." The students added: "All user interactions take place in ODK-X Tables through html, css and JavaScript views. Database fields are still defined in Excel spreadsheets which get converted to JavaScript Object Notation.”

Our research involves repeat censuses of trees in permanent plots. The new app includes a main menu for selecting the plot from a drop-down list, which effectively loads the previous measurement data into memory. When a tree’s tag number is entered in the app’s measurement form, various fields are populated with the prior data (e.g., species, previous diameter, etc.). If a tree has died since the previous measurement, the app cascades to a tree mortality form. Other forms can be selected for recording new trees, as well as general information about the plot or site. Additional functions in the app include the following:
• real-time data checks, validations, and constraints;
• pop-up warnings when an observation conflicts with the prior measurement or the logic of our protocol;
• drop-down menus for categorical fields and commonly recorded comments;
• ability to edit and re-submit records;
• checking that a tree tag number is valid (i.e., that it exists in the data for that plot);
• generating a list of trees that were missed after the first pass through the plot.

If we didn’t have to cancel our 2020 field season because of Covid-19, the app would be in full-time use now. However, we hope to at least conduct some field-testing this summer to iron out any kinks in the system.

Many thanks to the student team, and of course to the ODK-X development team!


Thanks @RJP for sharing this case study! Great to hear about what you and your students were able to do and hope you get to the field soon!