There is a popular saying among small business people, which is "Keep it Simple, Stupid!" The simplest option is often the best, but the human mind often overcomplicates things. This is certainly true in game design, and when faced with several options it's often best to just take whatever one is simplest.
But: Simplest for Who?
I would suggest that BSW is a nice answer to KISS. Certainly, at times you need it to be simplest for yourself, the game designer. There are a million possible ways to implement things, and some of them are vastly more work-intensive and complex than others. So you need to always be thinking in terms of what something costs, though for the indie developer this is measured in blood, sweat and tears rather than $$$.
I made a mistake with VtV, which I've heard from a lot of folks. The interface is confusing. I think what happened is, I made the simplest decision from the standpoint of a developer, not the standpoint of the player. When it comes to player interaction, it needs to be simplest for them, not for you the developer. So when you're developing a user interface, make it obvious and intuitive, don't just make it easy to code. So the mistake I made with VtV (although it also shaped the game quite uniquely) was to have a lot of interactions in "text mode", i.e., you just read and click options.
If I had designed better user interfaces, I think players would have found their way around a lot better.
I was faced with this question last night, how to lock/unlock doors. Soon, and this is not obviously related, I realized that there was going to be a certain amount of looking inside of things, e.g., to see the contents of a drawer. When you know that item X is under flowerpot Y, you have a choice. You could type "search" at flowerpot Y, and have the game give you a text that you found such-and-such an item, or you could have a dialog come up that shows the contents of it. It doesn't have to be fancy, but the second option is simpler for the player. The first option is a "step removed", that is, it takes place on the language plane which is a step up from the object plane (think: in real life, it's infinitely more intuitive to pick something up than to describe picking it up).
The question then was, is it really necessary to look "inside" of things. For instance, when you look at a bookshelf, it could just give you words to click on that are the books on the shelf. Likewise, if you come to a door and want to unlock it, there could be a word "unlock" that you click on and it takes the item out of your pack. With a few decisions like this, I could eliminate the need to go "inside" of objects altogether. This was attractive, but then I realized: what's more fun?
There is a theory of fun that says it relates to hunter-gatherer instinct practicing, or something along those lines. I don't know if that's accurate, but it does just seem more fun to me that all the objects in the game could contain things. Maybe this is because "gathering" items is good practice for real life, I don't know. But it does seem quite a bit more fun, than to have a blank interaction.
Decision: to make the UI work so that you have drag-and-drop interface between your inventory and the "contents" of whatever object you care to look at.
How does it work with doors? Well, the idea is the "contents" of a door would be like, the keyhole, and when you click "unlock" it shows you the door, a picture of the keyhole (labelled as such) and your inventory. It's the same dialog, actually, and when you drag and drop your key into the keyhole, the door unlocks.
I think this is actually pretty intuitive.