Skip links

Author: James Mitchell

The Art of Writing Useful Error Messages

In 2023, we shipped an internal tool at Harbor Software that had a particularly unhelpful error message: “Operation failed.” No error code. No context. No suggestion of what to do next. Within the first week, our support channel had 47 messages that were all variations

Implementing Role-Based Access Control from Scratch

Access control is one of those features that seems simple in the elevator pitch and complex in the implementation. “Users have roles, roles have permissions, check the permission before doing the thing.” That covers about 20% of the real design. The remaining 80% involves permission

Infrastructure as Code with Terraform: Lessons from Production

We migrated Harbor Software’s infrastructure to Terraform three years ago. In that time, we have managed over 400 resources across three AWS accounts, handled two major Terraform version upgrades, and recovered from exactly one state file corruption incident that cost us a full day of
Explore
Drag