Florian Mayer - TAB Application - 2020-09-01

Name
Florian Mayer (@Florian_May)

Organization
Department of Biodiversity, Conservation and Attractions, Western Australia

What contributions (e.g., issue triage, tech support, documentation, bug fixes) have you made to the ODK community?
On the Forum I've assisted with ODK Central sandbox invites, suggested new features, and shared a few technical wins (e.g. set up ODK Central on Azure/k8s).

On GH, I've contributed issues (mainly to ODK Build and Central), minor PRs, and likely caused many a headache for Issa and Matt. Issa holds the speed record for fixing a bug in ODK Build within 2h while I was holding an ODK workshop to my colleagues.

On transifex, I've started the German translation for ODK Central, which Dieter Menne gracefully completed.

My "claim to fame" is the R package ruODK, which is used in production at DBCA, and has seen its first community uptake.

How do you believe your contributions have benefited ODK?
ruODK connects the ODK ecosystem to R, and thus empowers users to build FOSS data analysis and dissemination pipelines in an automated and reproducible fashion. Going the extra mile through peer-review and association with the rOpenSci community has raised code quality and robustness.

During the ODK Convening 2019 I've contributed our Department's requirements and use cases (especially around longitudinal surveys).

My contributions on the forum have hopefully assisted some ODK community members.

What do you believe the top priorities for ODK are?

  1. To continue building and supporting its inclusive and international user community.
  2. To make the technically hard bits accessible to the enthusiastic non-expert user - e.g. server setup and maintenance, also survey design from idea to XForm/XLSForm, as well as analysis (e.g. worked examples in ruODK).
  3. To find/iterate on a viable funding/governance/branding model.

How will you help the ODK community accomplish those priorities?
Apart from contributing to discussions at TAB, I can contribute to the items above:

  1. Primarily through maintaining ruODK and supporting its users.
  2. Formally through contributions to documentation and informally through participation on the forum.
  3. Above my pay grade, but I wanted to recognize this as a priority for the longevity of ODK.

As a long term mutual benefit of contributing to TAB, I could contribute visibility of the requirements of ODK users in WA Government. Any implemented requirement would be a win for the local ODK users (primarily my employer and the Flatback turtle program). Being on the inside (TAB) would help me to streamline our requirements into actionable items for ODK.

How many hours a week can you commit to participating on the TSC?
2-4 hours per week ongoing, plus some extra time where needed.

What other mobile data collection projects, social good projects, or open source projects are you involved with?
My primary work involves data capture using ODK for the North West Shelf Flatback Turtle Conservation Program, or in short, to capture all turtle data in Western Australia through ODK (and the entire downstream of data warehousing, QA, reporting, dissemination).

Secondarily, I have a steady stream of DBCA colleagues soliciting my advice for mobile data capture. We typically iterate from idea to form design, parking lot data capture and building the analysis within about 2h, which can then be formalised and documented within a few days into an R package, e.g. https://dbca-wa.github.io/rOzCBI/

I am active in the rOpenSci community, and was active in the CKAN community. Claim to fame: reproducible reporting using CKAN & R (https://ckan.org/2015/09/18/pyramids-pipelines-and-a-can-of-sweave-ckan-asia-pacific-meetup/)

Please share any links to public resources (e.g., resume, blog, Github) that help support your application.

3 Likes

Hi @Florian_May :turtle:
What's something we could be doing (either doing new or doing better) to make the ODK community more inclusive?

1 Like

Hi Dan,

thanks for the question!

The ODK community is already doing a fantastic job in being welcoming and inclusive. If I had to suggest options to extend the community scope and audience, I'd propose to review and discuss:

Code of Conduct

Review the ODK CoC and the ODK forum guidelines and see what could be added, e.g. from the rOpenSci CoC (the other comunity doing inclusivity really well).

Would topics like allyship and diversity be appropriate to incorporate more explicitly?

Would acknowledging traditional custodians of the land on which work was done be appropriate? It's practiced here in Australia.

Language barrier

All of ODK's communication (docs, forum, github) is in English. I've seen users struggle to precisely formulate issues they ran into (both language and technical barriers), and others mis-interpret tone (e.g. polite German ==> terse English). In every case, the patient and friendly community members clarified things quickly.

Apps

ODK Central and Collect have made great use of Transifex to add translations. Translating the other ODK apps could be taken on well by the community.

Forum

To assist users on the forum more, would a paid moderator be an option? E.g. rOpenSci employs a community moderator.

Secondly, the ODK forum could get a "translate" button for posts. There's a discourse plugin and a plethora of browser add-ons (eg. Firefox).

Docs

The biggest language gap ODK could close would be to translate the docs. That could be a paid job for professional translators and editors. What languages would add the largest user groups?

Technical barrier

ODK is doing a fantastic job in simplifying software setup, especially for stand-alone users and those who are funded and permitted to procure hosted versions.

It is absolutely not ODK's responsibility or scope to support every infrastructure in the world, but if I could throw resources at making ODK more accessible to the corporate user, I'd sponsor working deployments for ODK Central on Kubernetes and make it easier for users (more accurately, their IT departments) to choose their own db, mail, etc subsystems.

3 Likes

Hi @Florian_May,

Thanks for the detailed application.

Apart from the odk forum, your place of work, how do you share about the "R package ruODK" so as to increase its popularity?

Hi @dicksonsamwel!

Primarily, ruODK is linked from the "Analyze via OData" modal. This is where the data analysts will find it when they need it.
I'm keeping an eye out to keep the links up to date, see my PRs both on the backend and the docs.

Secondly, potential new users researching how to analyze data from ODK Central would find a reference to ruODK in the docs.
Having a seamless R integration (via ruODK as it happens) is a selling point for ODK, as seen in a recent review of electronic data capture tools for COVID response (tweet, report - mention of R on page 56).
Selling the R (and any other integration) more prominently in the ODK online presence might be a decision for TAB (I'd withhold to avoid a conflict of interest).

Thirdly, ruODK is now officially part of the rOpenSci community, and discoverable through their website. Search packages for ODK and you'll find ruODK. When I find time, I'll write an rOpenSci blog post about ruODK.

Lastly, when I am unsupervised and over-caffeinated, I occasionally tweet about ruODK under the hashtag #ruODK. There's software beer review, R haikus and of course, turtles.

In summary, ruODK is mentioned where it needs to be, but could be used as an additional selling point for ODK.

6 Likes

Hi @Florian_May,

you are doing a great job maintaining ruODK and supporting its users, and giving support to the user's forum.
Now you are wiling to spend an extra 2-4 hours a week (plus some extra time where needed).
I hope you can deal with it :slight_smile:
Don't you think this extra burden could remove time to ruODK?

I agree that Technical and Language barrier could be something to improve in general.
But I would see easy to work on the second problem.
Hiring professional translators and editor could be very expensive. We talk of at least 2-3 more languages.
Do you have any idea on where to look for funds for this?

1 Like

Hi Aurelio!

Maintaining ruODK is a necessity to keep it functional for my work. I'm doing that as part of my day job.

Serving on committees like TAB is a private pastime, done out of work hours. Also seeing that meetings will be sometime during night hours in my local timezone prevents collisions with work.
I'm fairly confident that there won't be any time resourcing issues.

As for funding for translations for non-english translations, I'd cast my net across organisations supporting development work where those languages are spoken, which also have a vertical funding structure, as to support software like ODK serving their primary intentions.

1 Like

Hi again, @Florian_May! Thanks for your application!

I must admit this is not a context that I usually picture ODK existing in. Can you say more about what you're envisioning? By "corporate", do you mean government? Or large scale NGO? Or are there medium/large corporate customers (or potential customers) of ODK that I'm not aware of?

You rightly mentioned "a viable funding/governance/branding model" in your application, and the "C" word immediately has me thinking :money_mouth_face::money_mouth_face::money_mouth_face:.

Hi @tomsmyth!

Preamble: I do not speak for my employer in an official role, and my experiences shared here serve to illustrate the points I'm making.

re "corporations":
With "corporate" I meant users working for organisations which are large enough to warrant their own IT infrastructure and their own strong opinions on IT doctrine. Availability of funding or affiliation may vary.
This might include NGOs, state and federal government departments, Universities, industry partners.

As an example, my employer is a state government department with ~2.5k employees, about 400 staff would produce data, others will analyse, and others will act on the insight generated from our data.
Being a taxpayer funded operation, we are open to audit at any moment, and focus intensely to make our decisions ethical and transparent. With everlasting budget constraints, we are very open to reducing operating cost (e.g. by using FOSS, or getting significant rebates from large vendors).
Some of our projects are partnerships with significantly better or less funded organisations.

re funding, affiliation, co-branding etc:
A reality of public service is that spending any kind of license/hosting cost causes intense scrutiny (read: slow moving, deliberate, careful, ethical decisions). There are public perception / political pitfalls to "doing the right thing" on a technical level which may only be apparent to upper management.
One approach could be an ODK business development roadshow to reach out to these organisations. (Both ends of this conversation are way above my pay grade.)

re smaller contributions:
Techies in such organisations can certainly be good FOSS citizens and contribute GH issues and PRs, and share their experiences/solutions/implementations with the ODK community.

re making accessible:
From a technical side, having our own IT means in my case that our hosting must be cloud based (a decision made by the Auditor General), must use our vendor's cloud, and must use Kubernetes (internal IT's decision; you may have seen my struggles to get ODK Central 1.0+ working on k8s).

A hard selling point: can my IT crew spin up ODK Central within a few hours on our own IT infrastructure? ODK Aggregate (pre-dating our current IT doctrine) was easy enough to deploy (vanilla Google Cloud deployment), ODK Central 0.5/0.6 was easy enough to translate to Kubernetes, but ODK Central 1.0 on k8s is a total head-scratcher (pending Enketo settings at runtime).

If it were possible to run ODK Central on k8s, and if some of the implementation details were better documented (e.g. Postgres SSL settings, mail server options), this would open up self-hosting to organisations with IT constraints like my employer.
@issa @seadowg and @LN are my helping angels at Host ODK Central Docker images on GitHub container registry and @martijnr is about to solve the last problem at https://github.com/enketo/enketo-express/pull/210

Action points:

  • Top down, BD: ODK roadshow to large organisations to unlock large scale collaborations $$.
  • Bottom up, grass roots: Expand on installation options to pull in grass roots users like me.
1 Like