This column is written by Justin Yek, software developer, designer and co-founder at Altitude Labs. Altitude Labs is a Silicon Valley styled web design and mobile development agency that helps businesses turn ideas into reality. You can follow them on their blog.
Introducing a new column
Have an idea for an app but uncertain about the best way to develop it? Not sure which technology stack to build your app on? This week, we’re excited to unveil a column to answer all your questions about turning your killer idea into a killer app.
‘Ask the App Guru’ looks at web and mobile app development from an entrepreneurs’ point of view, with practical tips on how to get your idea into the hands of customers in the most efficient manner. For advice on web and mobile app development, send your questions, links and screenshots to [email protected]
To kick us off this week, we’ll start with one of the most common questions we get asked about app development:
“Should I build a native or hybrid mobile app?”
For the uninitiated, there are two ways to build mobile apps for app store deployment: native and hybrid. Native apps have better performance and are written in separate languages on iOS and Android platforms. Hybrid apps are written in a single language and can be deployed cross-platform, but come at a cost to performance.
In a world with no resource constraints, all apps should be native as they provide the best experience to users. From a practical standpoint, however, there are many instances where it makes perfect business sense to go hybrid.
As a rule of thumb, if your app fulfills most of the following criteria, you should go hybrid; otherwise, you should go native:
- Your product needs to be built quickly in an iterative manner
- Your product needs an iOS and Android version
- Your product does not involve heavy animations
- Your development team is comfortable with Javascript
If you are developing a new product, your goal is to create a viable product in the shortest time span to prove traction, get funded and grow your user base. Building your app in a single language (i.e. hybrid) will be more efficient than with a team of Android and iOS developers. It will enable your team to make more feature iterations within a given time.
Unless you are building a game or animation heavy app, the performance shortfall of a hybrid app will not be the factor that makes or breaks your app. This is especially true if your hybrid app is built with performance in mind.
Furthermore, if your app requires a server, you have the option of keeping your entire software stack in Javascript. This gives your business advantages in hiring and the flexibility to allocate and utilize resources compared to running a team with three types of developers: Objective-C, Java and your server side language.
Based on a Telerik survey of 3,500 mobile developers in November 2013, more and more developers are opting for a HTML5 or hybrid approach to mobile development. In many cases, the time and efficiency savings of building a hybrid app outweigh the performance shortfalls. Nevertheless, there are still a significant number of use cases where it makes sense to stick with native platforms for performance reasons.
Altitude Labs is a Hong Kong-based web and mobile development agency that applies Silicon Valley methods to building high quality products.
For advice on web and mobile app development, send your questions, links and screenshots to [email protected].
Altitude Labs on Startbase.HK: Altitude Labs
Justin Yek on Startbase.HK: Justin Yek