Does anyone have graphic design advice for designing for a product across different platforms? I know from a UX perspective, it’s important to take into consideration the different ways people interact with products on a specific platform and then applying it to your product.
This also goes for design, but at times I see products lacking consistency in design (Android will look completely different from iOS) at the expense of maintaining consistency with the platform they are being served on. For example, Google recently released Material Design so it makes sense to apply those design practices to your product to be consistent with the platform. At the same time though, if you have the same product/application being served on Apple products, it does not make sense to apply those practices necessarily because it does not fit with the platform.
So my main question which I can probably ask more clearly here: Should we be designing products to be consistent with the platform even if it is at the expense of consistency with the product? When, if ever, is it appropriate and when, if ever, is it not?
Historically (way back when you either owned a “PC” or a “Mac”) the primary reason to design to the native platform was to avoid subjecting a UI designed for one platform on the other.
30 years ago, users tended to not use multiple platforms like they do now. The platforms (compared to today) were also more limited in UI and tended to have a lot more idiosyncrasies.
Fast forward to today, however, and we have platforms galore. Windows desktops, OSX desktops, Linux desktops, Chrome desktops, Windows mobile device, iOS mobile devices, Android mobile devices, Blackberry mobile devices (yes, there’s still a couple of those). And the big change is web-based UIs. So much of our software usage is now done inside of a browser–independent of any particular native platform. And people tend to use more than one of these. The idiosyncrasies between each platform are still there, but much more subdued than back in the day.
As such, the decision to design to the native UI vs. your own custom UI is really the decision now. And that decision is much more subjective than in the past. Even desktop OSes are veering away from a one-size-fits-all UI pattern.
At the end of the day, your UI needs to work for your users first and foremost. How much that needs to depend on native UI look, feel and interaction will vary tremendously based on the project, and of the opinion of the team designing and building it.
About the only rule-of-thumb I can offer is to ask yourself if adopting a native UI makes sense for your project by default (user needs, budget, dev team, schedules, etc). If not, then it’s probably OK to not go fully native UI.