If you've designed a good front-end from an HCI perspective, you'll still end up with sooooo many edge cases. Human behavior is much more variable than the calls sent to an API or SQL sent to a database. (It also helps that there are syntax requirements that limit what's considered valid.)