Software development untethered from the practical realities of the customer / user is what drives people insane. When developers are required to interact with the customer on a regular basis , the freewheeling effects described in this article are damped massively. The potential for insanity goes off the charts when the development team is siloed away in solitary confinement and the only interactions with the client…
For 2 larger projects I'm on, I'm both the developer and a user: on a regular basis I use the software myself. And not just for one-off tests. I really use it the way other users use it. This has provided rather deep and interesting insights in software development for these particular products and in general. Or in OP's lingo: not a lot of potential for insanity at all. Because any new idea immediately gets regarded…
Your approach to developing software goes a long way to producing software that users appreciate. OTOH users may have no opinion about software sufficiently intuitive to use that it fails to bring attention to itself. Such transparency is an outcome developers should be proud to achieve.