There is a lot of overlap with Information Architecture (IA) when it comes to state - for example breadcrumbs that show you where you are in some data form part of the IA, with your location in that data forming part of the app's current state. If this sounds a lot like communicating context to you, you're absolutely right, and you're getting it! Context, state and IA are all interrelated.Another example that falls under all three categories of context, state and IA is scrollbars, these provide you with your current location on a page, or in a document, on macOS these are hidden by default for trackpad users in the interests of minimal beautiful UIs, scrollbars appear when a scroll interaction happens, so in order to know your location in a document you must first scroll it, then look at the scroll location - this is the very definition of a UI bottleneck and is unarguably an inefficient user experience (though it makes for a lovely clean UI). This mistake becomes a criminal matter when it comes to XCode. When programming something in XCode, if one makes a change which causes an error to appear elsewhere in the document, this is indicated to you with a small red line in the scroll bar. The visibility of this error state is exceptionally important for developers and all good and proper coding environments make these indicators permanent, but you guessed it, when the scroll bar isn't visible in XCode, neither are the error bars. Oh dear.