@slimekat For just under a year, I worked on a tool called "the data pump" whose UI was designed by a math Ph.D. He used LessTif to do it. In 2004.
If you wanted to quit the program, and you had outstanding changes, the dialog window that it popped up asked "LOSE UNSAVED CHANGES?" It had a radio selector for yes and no, and an "execute" button. To save, you had to select the "no" radio selector and click "execute." Closing the window, picking yes, or making no selection quit without saving.
@slimekat On the back end, his database was two fields: ID and DATA. DATA was an import of whatever Data::Dumper spat out, which prevented us from upgrading our OS because Dumper's serializing algorithms aren't consistent from version to version; they warn as much in their software. I suggested we should upgrade to Data::Serializer, perhaps, for compatibility. I got told maybe I should just stick to operating the tool, not trying to be a developer.
programmers bad
@slimekat This was the same software that provided an inline text area to let people write their own sort algorithms for doing complex data sorting. It accepted arbitrary perl code and made no attempt to detaint its input, which it ran as root, because the program ran as root on its hosts. When I asked him what his defense was against "for find unlink," his response was to tell my boss I wasn't a team player.
Good times.