OATS + OpenTEAM Hackathon

Hey folks!

I wanted to follow-up on various discussions going on within the OATS group and as mentioned during the last few openTEAM calls, about the upcoming hackathon/work session that that we’re hosting at the OATS conference on March 26 & 27, 2020 in Rosemont, IL (near Chicago airport).

The goal of the OATS hackathon is to foster interoperability among our technologies by taking some time to try out each other’s tools and APIs, and do some quick prototyping before diving into a more involved work package.

I invite members of openTEAM, the OATS group, and OATS affiliates to post an idea that you’d like to work on during the hackathon as a way to kickstart discussion and team formation! (Much like we did for the GOAT:Hack at USDA ARS)

Some suggestions:

  1. Post an integration you’re already working on and would like to catalyze during the hackathon (thinking back to the work packages.
  2. Propose a concept you’d like to work on that requires participation of multiple groups (e.g., sending machine data via ISOBlue to FarmOS)
  3. Post your interest in prototyping a specific tool (e.g., I’d like to try out Trellis in X context using Y type of data).
  4. …Something else you’re interested in accomplishing with folks from OATS?

Hopefully this provides a useful mechanism to move, as @gbathree says, from “Mud to Bricks” :slight_smile:

Please note, if you’re planning on attending, you will need to register via the link that @dornawcox and @dbuckmas sent to the openTEAM list

2 Likes

My two top topics that relate to us and OATS would be:

  1. Trying to get Trellis tracking data using our Research Farm Roadmap toolchain this year (collect data using Our Sci App, push to farmOS, send to Quick Carbon to model, receive result back in farmOS).

  2. Getting the Plant Data Service up and running for items we’re already building ontology lists for this year as part of the Research Farm Roadmap (@DanT can lay those out). Basically at a minimum it’s a gitlab repo where we all age to put our lists, and ideally it’s structured to allow for forking + contributions to build a comparable core of ontological components.

What say ye?

Thanks for kick-starting the conversation @sudokita! We’re looking forward to OATSCON in March: I think it’s should be a fun couple of days coding with others who enjoy code and ag :).

We were batting around some ideas last week for what to code on, and we’re very interested to get some OpenTEAM input here. One of the ideas we had was around what’s typically the “core” ag data for commercial farmers: yield maps. We’ve got a handy API indexing scheme (we call it “Graph-structured, OADA-delievered, Geohash-indexed, Time-indexed” or “GOGT”) for harvest data, and it would be great to start on the universal importer: i.e. a CSV export from software X (we can start with Ag Leader SMS using my farm’s yield data), drop into a webpage and have it pushed to your OADA instance, then its available to sync or query from other software. Also, we’d like to connect it up to at least one industry API if we can get a sandbox for one by then.

Any interest in yield data, or ideas for other uses of it within OpenTEAM projects?

Hey @aultac, our family farm has a pretty well populated Granular instance with machine data attached on quite a large number of fields (average field size 30ish acres). I could ask about getting access for those in the hackathon as some real world data from another industry API (no guarantees but probably). I don’t know if this is useful but it’s sometimes hard to find test cases so just throwing it out there.

2 Likes

@gbathree That sounds great to me! I don’t use Granular myself: do you know if they have an API? How do you go about getting data back out of Granular once it’s in?

@gbathree for #1, what data in particular would you have in mind? I think what you’re proposing is for some situation where someone would be recording data with Our Sci, choose to save it at their Trellis instance, and farmOS has registered for a “watch” on those endpoints ahead of time so when Our Sci puts data their, farmOS gets notified by streaming the data to it. Is the “send to Quick Carbon to model, receive result back in farmOS” already working, or would Quick Carbon need to save it’s result back to Trellis which would then also stream to farmOS?

There are 2 other hackathon ideas we came up with while brainstorming and were hoping you guys might be interested in helping us flush out if they are of interest.

Hackathon idea #1 was the yield data I posted earlier in this thread.

Idea #2 was machine data from ISOBlue to Trellis to <insert OpenTEAM tools of choice>. Since “machine data” is meaningless, we’d need to figure out which machine data in particular is of interest. We have a decent set of pre-recorded ISOBUS traces that we can replay live during the hackathon. We also have an extensive, multi-year set of GPS tracks for semi trucks, grain carts, and combines during wheat harvest in Colorado that we can use as well. At minimum, it would be pretty easy to use GPS location streams as a simple “machine data stream”, and add one of the easy public ISOBUS data types like fuel consumption or engine speed.

Hackathon Idea #3: We should have the first working demo of Oblivious Smart Contracts to show at the conference, and we thought a cool hackathon topic might be to illustrate the idea of a farmer’s private data being able to automatically result in a private automated certification that was used somewhere. One thought was to get @sudokita’s cover crops data (was that #2 in @gbathree’s post above?) up in Trellis and create some dummy cover crop planting records to represent a farmer’s private data. Task would then be to write an Oblivious Smart Contract (@serviopalacios will be on this team to help with this) that would pull the farmer’s data, lookup the expected amount of nitrogen sequestered based on location and seeding rate (or some other metric), and create a signed certification stating the total amount of nitrogen with a hash of the original data, but leaving the private data private. Then this certification could perhaps be pushed to something like Regen network or just a demo Hyperledger Fabric instance to trigger a payment of some kind to the farmer? Final demo could be something like pushing a button to represent “done planting”, use @serviopalacios’s Broker to run the OSC and generate the PAC, then see the resulting payment for the farmer in some way.

Any of those interesting to you guys? I think we’ve talked about OurSci and FarmOS thus far, any other OpenTEAM tools interested in something here?

I’m looking forward to this, it should be a fun time!

Hey @aultac sorry about the slow response.

So… in terms of #1, yes, you got it. Basically we want Trellis to ‘watch’ the transfers and note their times + some hash or related information regarding what was transferred. We do not yet have the QC component in place yet, but we may (@kanedan29 asking you here) be able to hack something to at least try it out.

I’m pretty open to what our Granular instance could be used for. It’s quite information rich at least for this current year. Testing an oblivious smart contract would be interesting. I’d like to also do the same with a farmOS instance if that’s possible. We have some pretty complete instances from partners last year or we could talk to @mstenta for ones outside of our farmer groups.

If you’re interested in using the granular instance, I need to talk to my brother about adding an account and making sure he’s ok with it. Do you want me to do that?

Hey all! I’ll be headed to OATSCON to hack on farmOS :slight_smile:

Topics I’m interested in:

  • @aultac’s idea #2 being ISOBlue -> farmOS (perhaps a primary focus)
  • @aultac’s idea #1 of importing yield data to farmOS
  • farmOS integration with Trellis
    • facilitate @gbathree’s idea #1 of Research Farm Roadmap toolchain
    • considerations for farmOS vs farmOS Aggregator??
    • explore other use cases for integration with Trellis
    • start designing a generalized implementation with Trellis
  • Hacking with farmOS Aggregator
  • Explore Granular in general…
    • What can we learn from it?
    • potentially export & import to farmOS?

Let me know any thoughts on the above! This will be fun!

1 Like

+1 for import / export for Granular --> farmOS, and maybe that’d be generalizable to other platforms as well (if someone else has another platform, it’d be cool to just see the export data types that come out of them).

1 Like

Excited to come to OATSCON!

I’m interested in the Granular stuff and the isoBlue stuff and really would like to learn more about Oblivious Smart Contract.

Personally a project I am interested in is that I want a isoBlue type thing that has the ability to collect info from other ports / data sources. Basically a robust iot device for listening and perhaps control maybe centered around usb.

So anything hardware adjacent I know very little at this point and would be great to hack in that space at the event. :+1: