← All explainers Your farm · 7 min read
Famu · Milestones

Planned
against actual

Every farm runs on a handful of dates somebody is aiming for. Famu has always recorded what happened. Until now it had nowhere to write down what was meant to happen, so it could never tell you that you were falling behind.

An observation Tasselling · seen 19 May

True, and useful, and silent about the only question that matters in May: is that early or late? The plan was in your head, so the record cannot say.

A milestone Day 60 → hit day 64

Two dates, the one you planned and the one it happened. The gap between them, 4 days late, is the thing you get. Line up a season of them and you can see where the time went.

0 Four things that sound alike

First: what a milestone is not

Famu already had three features that sound close. Each answers a different question.

Growth stage What phase is it in now? An observation. “Tasselling, seen 19 May”
Schedule What does the agro-vet’s programme say to apply, and when? “Spray on the 24th”
Task Who has to do what job? “Juma: weed plot 3 by Friday”
Milestone What outcome am I aiming for, by when, and did I hit it? “Tasselling by day 60 → hit day 64, 4 days late”

A milestone can sit on a planting, a batch, an animal, or the whole farm. The whole farm is for the targets that belong to no one crop or animal: a borehole finished, a licence renewed.

1 Before the season · templates

Write the plan once, in days

Nobody should type the same six milestones every season.

A template does not hold dates. It holds days from the start: from sowing or transplant for a planting, from placement for a flock, from birth for an animal. Tasselling is day 60 whichever month you sow in. Apply it to a record and Famu turns every day into a date.

Every farm starts with a few written for Ugandan conditions, and you can edit them or save any record’s milestones as a new one. Pick a template and move the start date below.

Milestones from a template
Sown

    Move the start and every date moves with it. In the app, changing a planting’s start date offers exactly this: Move 6 milestones too? Only milestones still to come move. One you typed a date for yourself stays where you put it.

    2 During the season · /milestones

    Then the season happens

    Each milestone says one thing: how it is doing, measured in days.

    Here is the maize plan from above, on the day tasselling was finally seen. Germination came on the day; tasselling came four days late. Drag today along the season and tap Achieved or Missed on the rest.

    Maize, plot 2 · sown Tap anything
    Today is
    0Overdue
    0Due this week
    —On time this season

      Late stays late

      An achieved milestone is measured against its own planned date, never today. Hit 4 days late in May, still 4 days late in December. A milestone still to come is the one measured against today.

      Missed counts. Cancelled doesn’t.

      Missed means it did not happen, and it counts against the on-time rate. Leaving it out would flatter the number exactly when the farm is falling behind. Cancelled means it no longer applies, so it drops out of every count.

      Overdue is judged too

      The on-time rate is this season’s milestones hit early or on the day, out of every one achieved, missed or overdue. A plan nobody marks does not get to look perfect by saying nothing.

      3 Records you already keep

      Your records already know

      Most milestones are reached in a log somebody filled in anyway.

      The first egg log is point of lay. A weigh-in that crosses 2 kg is the 2 kg milestone. A flowering stage update is the flowering milestone. So when your own records show a milestone happened, Famu says Looks reached on the day it happened, with the evidence it read. You tap, or you don’t.

      Egg log · layers14 eggs collected on 21 July, the first log with eggs in it
      Point of lay · looks reached on 21 Jul
      Mark achievedDismiss
      Weigh-in · broilersThe day’s average across the birds weighed, 2,040 g, on day 34
      2 kg average weight · looks reached on day 34
      Mark achievedDismiss
      Harvests · beansBags logged over three pickings until the running total passed the target
      Yield target · looks reached on the day it crossed
      Mark achievedDismiss

      A suggestion is a button, never a write

      Famu never marks anything achieved by itself. An estimate must not overwrite what a farmer typed, and a guess must not become a record without a person saying yes.

      The date is the evidence’s, not today’s

      Accept a suggestion a week later and the milestone is still achieved on the day the eggs were logged. That is the whole point: the gap has to be the real one.

      Careful about what counts

      A zero-egg log is not point of lay. Crates are not bags. A percentage is not a weight. Anything dated before the flock arrived is ignored. And each record is read with your own permissions, so nobody is shown evidence they could not open.

      Dismissed means “not now”

      A dismissed suggestion stays away until something new is recorded about it, and then it comes back, still offering the earliest date that qualifies.

      And the other way round

      Mark a crop milestone tied to a growth stage achieved, and Famu logs that stage on the planting for you, dated the day it was achieved, so the stage badge keeps up. If the stage is already logged, your own date is kept and nothing is written.

      Reopen the milestone and the stage Famu wrote goes with it. A stage you logged yourself always stays. It is on by default, and you can turn it off for the whole farm in Settings → Farm or for one planting under Edit Details.

      4 Without opening the page

      It comes to find you

      A plan you have to remember to check is a plan you forget.

      Reminders, twice

      Three days before a milestone is due, and again once it is late: on the bell and in the email digest. Home shows the next few under Upcoming milestones.

      On your own Google Calendar

      Each person can connect their own calendar. A milestone becomes an all-day event with a reminder at 5pm the day before, and it follows the record: move the date and the event moves, mark it achieved and it says so, cancel it and it comes off. What you remove comes off only your calendar, never a teammate’s.

      In the report and the assistant

      A planting’s or flock’s report carries its milestones planned against actual, and the assistant can answer “what’s overdue?” from the same numbers you see.

      ! Worth saying out loud

      A milestone is only as good as the day it is marked

      If nobody marks them, everything goes red

      Milestones only earn their keep if someone marks them. A season of plans nobody closes reads as a season of overdue milestones, which is honest but useless.

      That is why so much of this is built to take the typing away: templates so the plan costs one tap, suggestions so the logs you already keep do the marking, and a worker allowed to mark a milestone achieved from the field without being able to add or delete them. If farms still do not mark them, that is worth finding out early.

      Earns its keep for

      • Crops on a season clock: sowing to tasselling to harvest before the rains
      • Broilers sold by a weight and a date
      • Layers you need at point of lay by a certain week
      • Heifers, gilts and does on the way to a first calving, litter or kidding
      • Farm projects with a deadline: a borehole, a new house, a renewal

      Does little for

      • Day-to-day jobs, which are tasks
      • A treatment programme from the agro-vet, which is a schedule
      • A farm that never records stages, weights or eggs, which gets no suggestions

      The badges and the on-time rate on this page follow the same rules as app/src/lib/milestones.js: dates as calendar days with no time zone, “due soon” as within seven days, an achieved milestone measured against its own planned date, and missed and overdue milestones counted against the on-time rate.

      The template offsets are the starter templates every farm begins with.

      The steps, one page each

      This explains how it works. These say exactly what to tap.

      Try it on your own farm.

      Everything this page walks through works on your own records from the first day. Create your farm, add today's entries, and see how milestones work for yourself.

      Set up your farm in minutes — from any phone.

      Keep reading

      All 30 explainers →