The following is based on q & a with clients.
Sample size: 10 potential clients for mobile apps.
Background: Everyone wants a mobile app with good performance and features but don’t want to pay much for development. As a result I pitch hybrid apps to them and this is their observation and feedback. 8 out of 10 potential clients use Android phone and they have not used any iOS device.
Me: I have 11 years of experience in Web development and have 1 app in stores and 3 under development based on Ionic. I love this framework as I am more comfortable with web development. I puke when I see Java code, faint when I see Obj C code and get confused when I see Swift code.
Feedback: When I show the sample apps, I never tell them that they are hybrid or native. One thing everyone has said is that the apps jerk when going from one section to another section. This happens only on android and ios is very smooth. This makes them a little uncomfortable as they are used to seeing smooth transitions on their phones as the apps they use are smooth. Then they start asking questions that can we do this, can we do that etc. At the end I get very mixed reaction. They are happy that the price of development is low but not happy when they see the performance of the app. So, I tell them that for minimal viable product, use hybrid and later when you have traction and money, move to native. At this point some agree but some say that they are better off with native from start as they don’t want to go through the whole process again.
My observations: I love ionic framework. It has made the life easy for hybrid development. The major shortcoming is plugins and lack of interoperability between them. Because plugin ecosystem is served by individual developers, the 2 plugins create conflict (it mostly happens in android) and simple things like changing the keyboard button from go to search is not possible until the plugin supports. And I have not yet found a plugin developer who can develop a plugin in return for payment. There is no dedicated company or organisation also which has developed lot of plugins or has business based on plugin development. This creates a fragmented plugin ecosystem and non java or obj c devs cannot figure out the solution when they are confronted with bugs or conflicts. This breeds frustration and the devs throw out hybrid out of the window as immature tech. I really wish some company starts the business of paid plugin support.
Conclusion: I will continue to work with ionic framework but I will pitch the hybrid development as MVP to clients and hope that they don’t feel the need to move away from hybrid to native