Spreadsheets lie about edge cases
Union scheduling has exceptions: seniority, port-specific caps, agency eligibility. Spreadsheets hide those rules in cell comments and one person's memory.
Model the rule, not the row
We moved rules into code: each claim runs through a pipeline that checks eligibility, hours, and conflicts. The UI shows why a claim failed — not #REF!.
Ops buy-in
Coordinators kept a read-only export for the first month. Trust moved to the dashboard when the export matched the sheet — every time.
Takeaway
If your scheduler is a person plus Excel, you're already paying for custom software. You're just paying in overtime.