T06-L03 · Build apps · Level 3 Builder · 17-minute read, plus 3 hours of doing

The app that only works when you're in the room

Three months ago you built the group's antibody list in Base44, the prompt-to-app builder from T06-L02 · Build a Small Shared Tool From a Prompt, and Test It With a Colleague. It worked, and it grew. People now use it to ask the lab manager to reorder antibodies, and she orders from it every Tuesday and Friday. Then you go to a conference for a week. A new student signs in, sees an empty page and thinks the app is broken. Two requests for the same antibody arrive a day apart, and the group pays for two vials. The lab manager and her deputy both mark one request as ordered within the same minute. Nobody can tell which change counts, and the only person who knows how the app works is in Lisbon.

In a company it's the demo-kit list at a lab-equipment distributor. It started as a list of who has which pipette set. Now reps book kits for customer visits, and logistics ships from the bookings. Two reps book the same kit for overlapping weeks, and one customer visit goes ahead without a kit.

Neither app is badly built. Both have outgrown the head of the person who built them. You are at Level 3 Builder: colleagues depend on this app, and when it's wrong, their work is wrong. This book gives the app what it needs to run without you: roles the data enforces, screens that explain themselves, a test copy with known answers, and a note that lets someone else take over.

After this you can

  • Design two roles around what the app's table permissions can actually enforce, and test each one from its own account.
  • Give every screen a clear first-use, empty, no-match, refused and error state.
  • Keep a test copy of the app with made-up records whose right answers you know, and a test sheet a colleague reruns before every publish.
  • Stop two people from silently overwriting each other's change on the same record.
  • Write an operating note with a maintainer, a deputy and a fallback, and say where the app stops and IT takes over.

Before you start