Insightful article thanks !
Also if you can use space to create metaphore that will help users understand the structure of the app, it is not the only way around.
Metaphores also brings constraints from a system to another system that would otherwise be free of those. Wouldn’t you like, in real life, to be able to instantly transport yourself from a place to another ? To travel through time ? To be in several places at the same time ?
Breaking the rules sometimes brings more possibilities, makes it possible to optimize userflows in a way that is much greater than the benefits of keeping a metaphore intact.
I guess in the end it depends on which on the level of mastery of the user you are working for.