Dear Ruby community 

I am a scientist at Penn State and the United Nations. We have a Platform 
called PlantVillage that is a public good with a backend built on RoR with 
various apps farmers use around the world to get help. The reason these 
farmers (e.g. in Kenya) would use the tool is that they dont have access to 
human experts who can help them know the problems in their field 
(pests/climate change stress). You can read our blogs here 
https://plantvillage.psu.edu/blogposts

I wrote back in 2018 to this group to ask about getting your help. Many of 
you were very keen on helping. THANKS!! 

I didnt follow up as I am not a coder. I pay a team in India to do this.  
So, it was just easier to keep with them. I didnt even know where to start 
in sharing the code on GitHub. 

Now in recent weeks Ruby experts at Penn State (who built ScholarSphere 
https://github.com/psu-stewardship/scholarsphere) have looked at our code 
and it is very bad! Rubocop showing errors off the charts and no 
tests/commit. 

It needs your help and we are actively trying to make sure we dont have any 
privacy issues so we can open source it. 

I am reaching out now as we have an extremely urgent situation though. You 
may have seen the news about Locust swarms in East Africa? They are the 
worse in 75 years

According to the UN, 19 million people are in immediate danger. They are at 
Level 3 (crisis). Since we can expect hotter, drier weather in some 
affected regions in the coming months (low crop outcome) the addition of 
locusts in potentially a famine. 

Here is an article today https://www.bbc.com/news/world-africa-51501832 The 
video is informative 

They are mostly in Kenya where control is possible. But we need lots of 
people out there with phone use our app and reporting sitings. Currently, 
they use WhatsApp but since that is private we cannot get the GPS 
coordinates of the locations. 

The Indian team I employ built an app. But I am sure it has problems and if 
we have thousands of users it could fail. 


Here is the apk file of the app 
https://drive.google.com/file/d/1nAvTolDEz48mPLtIPO6abumW6KQAM-00/view?usp=sharing

It is super simple: It must do two things 


1) Allow users to upload images/videos from which United Nations Staff can 
determine the location and stage of locust swarms

2) Enable app users to have a free-ranging chat function. There should be 
two chat channels: general (any users of apps) and admin (just select). 


One of the problems we have is the code base for the locust app is tied to 
the rest of out platform and apps. So, there are security issues if user 
names and passwords etc. 

Your coding skills could save lives here: that is not an exaggeration! If 
you can help that would be wonderful. I am very new at this so dont know 
your culture but am willing to learn. We have thousands of agriculture 
experts and farmers working with us. We could have thousands of coders like 
you. So, if you can be patient and help me build this we can create a 
community using the skills you all have helping the poorest people on our 
planet cope with stresses like locusts and climate change. 

Fair warning! If you jump in the code won't be pretty and documented. I can 
incentivize you with some swag :) 

I am trying to hire Ruby people at Penn State so will have an advert soon. 


Thanks so much for any help 

david 


On Nov 13, 2018, at 11:22 AM, David Hughes <davidpet...@gmail.com> wrote:

Hi all
I am a scientist at Penn State University and the United Nations Food and 
Agricultural Organisation. I work to help poor farmers in Africa and 
elsewhere grow more food by combatting pests and diseases.  There are two 
ways we do this: an Android app that runs TensorFlow object detection 
offline inside the food without a web connection (see here 
<https://www.youtube.com/watch?v=NlpS-DhayQA>). The other way is through an 
Open Access library on content called PlantVillage with a QA forum. This 
platform is 6 years old and had around 8 million visitors with around 
80-100k new month.  https://plantvillage.psu.edu/  The platform is RoR

All of this is a public good, aimed at helping poor farmers who typically 
earn a few dollars/day. I am spending a lot of money on developers (in 
India) and  I raise money with grant writing etc. I am having issues around 
quality and cannot afford the necessary QA. 

I was wondering if I open sourced the site would your community be 
interested in helping? We work directly with farmers and through the United 
Nations. It really can be a very impactful project 

My goal is an AI-driven platform that is the number 1 resource in the world 
for smallholder farmers around the world. All ad free and without haresting 
their data to sell 

I would love to hear your views on whether open sourcing would be a good 
idea and would people  join in?

Thanks 

David 



David,

Before you opensource the project, you will want to have a Senior RoR 
developer comb through to make sure the authentication credentials that 
should be private have been removed from the source code. These could be 
API keys, database passwords e.t.c. Even if it's removed from the current 
version of the source code this information is available in the git 
repository history, which is just a normal function of version control 
systems... they allow you to go back into the past. So if you just click 
the button and open source the project as-is you can open yourself to 
several security risks. Perhaps the idea will be to cleanup secret info 
from the app then port the files into a fresh git repo which of won't 
contain the history. You will also need to ensure that for new code 
development security errors like this are avoided. Same applies to the 
android app if you want to opensource that.

Essentially my point is that to be successful at running an opensource 
project in any language you need Sr software developers that are committed 
to being gatekeepers of the code, else things can go downhill pretty 
quickly. You might consider paying 1 or 2 trusted people to take on this 
role. Additionally to get code contributions from developers you will need 
to do some type of "marketing" to generate interest. Developers will not 
just contribute code and keep contributing simply because the software is 
opensource.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/56baa782-6880-42ca-9540-a5fe604e8d63%40googlegroups.com.

Reply via email to