Kodi Magadia
← Notes

When the right answer is to start over

July 6, 2026

The ROQSON case note mentions, in one sentence, that we dropped ERPNext mid-project and built the system from the ground up. That sentence took eight months to earn.

The original plan was reasonable. ERPNext is a mature open-source ERP, and our analysis said it would recover about 30% of the value ROQSON was losing to fragmented operations. Pairing it with a custom analytics layer pushed the projection to 36%. The charter we signed in October 2025 was for exactly that: configure ERPNext, build the analytics on its API, train the staff, go live in January.

Then the staff actually used it. In training sessions in February 2026, people who ran the business every day could not complete basic tasks without help. Editing a submitted customer record meant canceling the original, creating an amended copy under a new document ID, and resubmitting it. That is defensible database design and a terrible Tuesday afternoon. The confusion repeated in every module, and it was worst in trips and delivery, where ROQSON's actual dispatch workflow would not fit the platform's model at all.

We explored the standard escape hatch: a custom Frappe application layered on top. It turned out to be roughly as much work as building the whole system ourselves, and it still would not have fixed the interface the staff kept getting lost in.

So in March 2026, with the panel defense already on the calendar, we brought the numbers to our sponsor and asked to change scope. He endorsed it. The pivot cost us about six extra weeks of development and displaced the phases we had planned after it, which is a polite way of saying the last stretch was not fun. The updated charter was signed that April, the same month the system was demonstrated, validated on live data, and accepted.

The lesson I keep is not "off-the-shelf bad, custom good." ERPNext is good software; it was the wrong fit, and we found that out later than we should have. The lesson is that technology selection is a hypothesis, not a decision. A short proof of concept against the two or three workflows most likely to break, in our case trip tickets and deliveries, would have surfaced the mismatch months earlier and made the pivot cheap. We instead validated the platform against the org chart and the module list, which it passed, because brochures always pass.

Sunk cost made the decision feel expensive. It was the cheapest thing we did all year.


next · The McDonald's had a tracking device