Crops V2.0

Crops V2.0 has been designed to better align the way LiteFarm displays, documents, and persists crops with the way farmers think about crops. We’ve also done a tremendous amount of data collection to try and pre-populate as much information as possible about crops so that we’re suggesting values to farmers rather than asking them to pull a number from thin air. Given the huge number of varietals and climates on Earth, this will never be 100% “done”, but it’ll give users an anchor to work from.

LiteFarm comes pre-loaded with about 320 different crop types. Crop types are things like apples, wheat, and bananas. For all of these crop types, we’ll have many, many data points such as:

  • an image

  • Family, genus, etc.

  • annual vs. perennial

  • estimated yield and estimated value per yield

  • nutritional values (e.g. calories, vitamin content, etc.)

  • planting method (e.g. row vs. broadcast vs. container, etc.)

  • crop calendar (e.g. seeding date, days to transplant, days to harvest, etc.)

  • crop group (e.g. cereals, leguminous crops, etc.)

 

This list of crops with pre-populated data is our crop catalogue. The first time a user logs into LiteFarm and sees their catalogue, they will see all these crops and be able to add them to their farm. All users accessing LiteFarm have this same shared crop types list.

Once a farmer chooses a catalogue crop and decides to add it to their farm, we reach our first transition. These chosen crops (shown below as “On your farm”) are no longer shared amongst all LiteFarm users. Instead, the chosen crop type is now owned by the farm where it has been added. This is the case for everything below as well. A quick note to add that users can also create their own custom crop types. In this case, the custom crop type will inherit all the attributes of the crop group (e.g. cereal, legume, etc.) the farmer chooses as its' basis.

Conceptually speaking, a chosen crop is just a container. When a user selects a catalogue crop they want to add to their farm they are required to enter a varietal name as part of that process. The varietal created is then placed within the chosen crop container for ease of organization. It’s the first varietal of that crop type, but it need not be the last. Below is an example of a farm that is growing many different varietals of the chosen crop type apple.

Data-wise, varietals inherit their attributes from the crop type and have their own data attributes as well. Information captured at the varietal level includes:

  • Varietal name

  • Supplier

  • Organic and other compliance information (since this is often tied to the supplier)

The unique key for a varietal can be thought of as the crop type, varietal name, and supplier.

The last concept we need to discuss when introducing Crops V2.0 is the idea of a crop management plan. Crop management plans are specific management plans that outline all the activities performed on a specific varietal at a specific location on the farm over a specific timeframe. Therefor, the unique key for a management plan is the varietal, location, seed and final harvest date. Crop management plans are very granular and conceptually define the “what” and “when” of growing a varietal. Specifically, farmers will define (or accept LiteFarm’s recommendations for) the following when creating a crop management plan:

  • Whether it’s directly sown or transplanted

  • (seeding and transplant) location

  • Seeding date, days to germination, and days to harvest

  • Planting method and area for growing

  • Amount of seed needed

  • Estimated yield

Once a farmer creates a crop management plan , LiteFarm will automatically generate a series of tasks to make sure that the activities laid out in the plan take place at the right time. These tasks serve as the connection between the plan and the execution in LiteFarm.

Management plans also serve as a record from season-to-season and year-to-year about what worked well and what didn’t. Since a management plan uniquely identifiers a varietal (which includes the supplier and crop type) as well as the actions throughout the season, farmer’s can look back at past crop management plans to try to recreate good seasons or to avoid past mistakes. For this reason, farmers are able to rate their past plans and mark them as either completed or abandoned.

Summary

Term

Definition

Term

Definition

Catalogue crop / crop type

The 320 or so crops such as apples, celery, and potatoes that are pre-loaded in LiteFarm that a farmer can choose to plant on their farms.

Custom crop type

A user created crop type.

Chosen crop type

A crop type from the crop catalogue that the user has indicated they want to grow on their farm

Varietal

A specific variety of crop from a particular supplier. Contains some certification information.

Crop management plan

The plan for growing a specific varietal. Outlines the “what” and “when” of growing a varietal. Can be referred to after the management plan is finished.

 

Architecturally speaking…

 

Crops types are largely unchanged. The only exception being that you cannot instantiate a crop in Crops V2.0 - there must always be a varietal. Custom crops are just user made versions of a crop where the underlying data is inherited from the average of their crop group.

The idea of a chosen crop is likely just the addition of a flag on the crop table for whether it’s “at this farm”.

Varietals are a different idea in that they are not the same as a crop anymore. Instead, they now live inside the chosen crop container and have their own attributes, primarily related to the supplier and certification information.

Crop management plans are a very similar idea to that of fieldCrops. Generally, they are both the instance of a varietal at a specific location over a specific time frame. In general, this time frame is from its seeding to its harvest - though there are exceptions to this rule. For example, a crop management plan can also generate a “Field work” task which would take place before seeding.  

In fact, we probably won’t need to create a new table, rather just refactor a bit. However, the big difference is that a crop management plan contains a lot more information about how the varietal is planted. It will also generate tasks (the replacement for logs) in an anticipated sequence based on the attributes of the crop management plan. There are also some other major architectural differences:

  1. Crop management plans do NOT expire automatically the way fieldCrops did. Instead, the “harvest date” on the crop management plan is roughly understood to be the first harvest for the varietal. The management plan must manually be marked as either “Completed” or “Abandoned” by a non farm worker. When updating this status, the user will provide a date for this transition which will serve as the end date of the plan for the purpose of filtering.

  2. We’re introducing two new crop management plan statuses to replace the fieldCrop status of “Expired”. For plans that have completely successfully, the user will mark them (see above) as “Completed”. For those that are halted at some point in the season (think drought, floods, or contamination for example) the plan will be marked as “Abandoned”. In both cases they will provide a date and rating (1 - 5 stars) when updating the plan status. For the purposes of our filter category, both of these statuses will show as “Past” if this date is before the filter date.