Inspiration

This project went through many iterations throughout the event; my position as the sole member of the team was therefore helpful in keeping me flexible, yet challenging in figuring out how to nail down the major issues of effective data communication that this prompt was asking about. The particular idea that this prototype stemmed from came from me wondering how someone who did not interface with much technology in their everyday lives would want to be presented with the wide array of the sponsor (John Deere)'s APIs. To me, it seemed that there already existed sources of information that could be explored extensively yet presented on a basic level in harmony; as a result, I tried to make OpenAcres the portal to just that: vast expanses of potential data and learning.

What it does

Essentially, OpenAcres is a lightweight, straightforward web application that would allow a user to interface with a suite of APIs and feeds related to agriculture and tailored to their individual wishes. To a certain extent, one could think of it as slightly more than an aggregator for information in this field. Though I paced myself so that I could be certain that I'd have a working version rather than risk not finishing it, there is a great deal of potential for expansion of its features should I continue with this.

How I built it

In trying to figure out exactly what I wanted to make, I initially began this project using Node.js; however, given my limited timespan and unfamiliarity with it, I gradually transitioned over to a more Python-based approach to interfacing with the APIs, while using Bootstrap and various Javascript libraries for aesthetic and structural support. The structure of this application means that it doesn't need an especially arduous backend setup, so both MongoDB and simpler approaches such as SQLite proved to have merit.

Challenges I ran into

I had considered straddling multiple prompts with the same project in the beginning, but a few hours in I quickly realised that I was starting to bite off more than I could chew. Node.js was not horrible to deal with, but in struggling with learning it I was once again burdened by the fact that I would need to commit to doing something in Node early on and potentially risk having either nothing to show for it or something that I might not be proud of. I had also hoped to give myself a crash course in preparation for this event, but midterms didn't give me much time to do so.

Accomplishments that I'm proud of

Through my schoolwork and occasional side projects, I have gotten pretty well-acquainted with how Python can interact with Javascript and other languages within web frameworks. That being said, I felt that this was one of the most cohesive projects that I've ever done in terms of blending the visual capabilities of Javascript with the verbose backbone of Python. Given more time I would have made the codebase MUCH less messy, but given the timeframe and the lack of sleep and resources I'm happy with what I managed to get done.

What I learned

I didn't think that learning how to use an unfamiliar language on the fly would be easy, but this experience showed me the hard way that taking time to find good resources and budgeting your free time and abilities is vital when trying to expand your skillset like this. On top of moral lessons like this, though, I also learned a bunch about how the field I was covering; for example, that there can be a ton of costs that farmers undergo in producing their crops that many people would never see or think about. There's a fantastic opportunity for extending data science methods into this overlooked area, so while this one app may not change lives it has shown me that there is still a good deal of positive change that could be done.

What's next for OpenAcres

Several of the APIs and datasets that I managed to find over this 20-24-ish hour period had many more features and insights than I could have hoped to capture in this project. I'd be interested to see how else I could augment a system like this using data that already exists in a public sphere, both related to this farming genre as well as my other fields of interest and study.

Share this project:

Updates