When we design applications to be used in the new world of cross channeling, we need to take into account a lot of different factors. Not only do we need to address in which environment the app is used. Desktop applications are often used in a user focused mode, while mobile applications are used in motion, in short time frames and possibly performing tasks in a non consistent mode.
Looking inside out its easy to think that a desktop app and a mobile app should be consistent in behavior and design. The more Application centric the design is, the easier it is for the user to find their way and perform actions.
Looking outside in, the opposite is true. Using a desktop app on Apple, Windows and Linux computers should follow conventions on each OS. The same goes for mobile devices where an Android app is different from an iOS app etc.
I've always lectured the latter method that following OS convention is always right (games excluded). Like this comment from yesterday:
"... in my book Unified Design is App centric and breaks convention on devices. Instead User centered design is the way to go. Users know their devices, but not your app. That's why Snapchat is so hard to learn."
Posting it got me thinking. What if this is wrong? Could application consistency be preferred over OS convention?