Technology
Software is a business decision before it is a technical one
Every custom system starts as a sensible idea and ends as something only one person understands. Here is how to keep that from happening.
Programming in a business context means building the applications and systems that run the operation — quoting, scheduling, invoicing, the things that eat your week.
The decision to build rather than buy is almost always made too early. Off-the-shelf software is cheaper, supported, and already debugged by thousands of other businesses. Building makes sense when the process is genuinely your competitive advantage, and almost never otherwise.
If you do build, three rules save most of the pain. Own the code and the accounts it lives in — not your developer, you. Insist that anything important can be exported. And make sure a second person can pick it up, which in practice means written documentation, not a promise of a handover.
The most expensive systems we see are not the ones that cost the most to build. They are the ones nobody dares change.