What Does Native Mean?
An introduction to the word from a technical, design and user perspective.
Welcome to Design for Native–a blog about designing native apps.
I’m Espen, a UX/UI Designer working at Agens where I’ve designed apps for both big brands like Gjensidige and startups like KNIT.
I created this blog to share with you everything I’ve learned through the years about what it takes to design a great native app experience.
But before we get ahead of ourselves, I figured it would be a good idea to start with the very basis for this blog; native—what does it actually mean?
From a technical perspective
If you ask a developer, they might use the word native as a way to describe the technology used to develop an app.
On iOS that usually means Swift and SwiftUI, on Android that’s Kotlin and Jetpack Compose. There’s also React Native which can be used for both.
The technical benefits of developing with native can be better performance, easy access to all the device’s sensors (camera, microphone, gyroscope) and handling for example push notifications.
On the opposite side of native apps there are web apps, which often try to imitate native. They may be faster to develop but offer worse performance and capabilities.
From a design perspective
Designing for native means designing for a specific platform having in mind the conventions, design language and components associated with that platform.
For iOS there are Human Interface Guidelines, for Android there’s Material design.
Because iOS and Android are inherently different operating systems, to design a true native experience for both means creating two different experiences–one native to iOS, and another native to Android.
From a user perspective
So what then does native mean for the user?
Most likely, the user doesn’t know what the word means. They don’t have to either.
What matters is how they feel using it.
Does it feel familiar and effortless, or does it feel unnatural and strange? What feels natural for an iOS user might seem unnatural for an Android user, and vice versa.
In conclusion
There are many ways to think about native, and it might mean different things to different people.
I believe there are some tools, methods and practices that will make it easier to design great native apps.
These are topics I plan to share with you on this blog going forward.
I hope you’ll stick around and find out what 👋