Error-first thinking in function design | Half Shell Studios