Ionic is the Best MVP Solution for Your Mobile App

We use Ionic for the majority of our mobile development projects. Why? Because it is in line with our goal to help our customers get to cash fast. Ionic is in line with our philosophy that an MVP is the best way for you to tackle your custom software project.

Andrew:

Welcome back to another Bixly Tech Tuesday. I am Andrew Savala. I’m the COO at Bixly. And I’m going to be talking with Cody Beardsley, who is one of our most senior developers.

Cody:

Hello.

Andrew:

So, on today’s Tech Tuesday, we’re going to be talking about Ionic for mobile and why we use it, and when does and doesn’t make sense for your project. So Cody, what is Ionic and why do we use it?

Cody:

So in the old world of mobile development, we used to have this situation where we have Android and iOS. And in the past, if you wanted an app on both platforms, you had to develop it effectively twice. Ionic serves that little median in the middle and allows you to develop one single code base for both platforms at the same time using web technology. And depending on your skillsets of your team, that can be advantageous or maybe a little harder if you need to get web developers, but ultimately it saves you time in project development, mainly because you only have to develop one single code base.

Andrew:

Cody, what would you say some of the limitations of Ionic are?

Cody:

I think the biggest issue with Ionic is ultimately if you really want to get under the hood and use the phone’s hardware in its best, most optimized state, you’re going to run up against that pretty quickly if you’re using Ionic because ultimately all the code you’re running is inside of a browser, on top of a rendering engine, on top of the phone, there’s just so many abstraction layers ultimately that are going to prevent you from achieving that high level like GPU accelerated performance.

Cody:

But aside from that, things like Bluetooth, things like the camera, things like geolocation, all the standard features that most applications have, tend to be available on Ionic. And they’re really easy to use even quicker than native implementations. So while there’s limitations, really you get a lot of benefit out of the ease of implementation for more standard features. So the limitations are, it’s a pro and a con. The bug is a feature, so to speak.

Andrew:

Would you say that if you were going to make like a graphically intensive game, is that a scenario where Ionic wouldn’t make sense?

Cody:

Yeah, I think so. If it’s a game that you couldn’t make within a browser itself, ultimately that’s not going to work in Ionic. So if it’s something that needs to be super 3D, or let’s say it’s just a really high performance experience for the user, that’s not going to work in Ionic very well. You’re going to need to use native code.

Andrew:

So in your experience, would you say that Ionic is appropriate for most of the clients that we work with?

Cody:

Yeah, in, in most cases, anyone who’s walked in the door and wants a mobile application so far has been applicable in the use case of Ionic. So far, there’s been absolutely zero clients I’ve seen in the last several years since modern web browsers have taken off and really embraced proper GP rendering, all kinds of stuff, where there has not been… Where there’s been a case where someone couldn’t use Ionic because of some limitation they needed in their actual product. So, Andrew, what are some examples of Ionic projects that we’ve done that would be like applicable use cases within that platform?

Andrew:

So, we’ve done quite a few and they’ve been across a wide range. One of them that we did was for doing inspections for packing houses. And so the actually used a mobile app to go through and fill out inspection reports and actually rate the produce and determine whether it was the quality that they needed. So essentially the mobile app was a series of different forms and sliders, so they could establish a score for what they were doing in the inspection.

Andrew:

Another one was actually a map application for Fortnite, so that players could keep track of all the different achievements on the map. They could zoom into different areas, mark off the things that were done and just allow them to keep track of their process. So that was a very visual map-based one.

Andrew:

Another example of an Ionic app we did was actually monitoring fuel gauges on airplanes. And so the pilot could check the fuel levels of their aircraft before they even got to the aircraft so that it would be fueled up in advance so they can see the levels because there was actually a hardware component that the phone spoke with over the internet to see what those levels were. And then they could request that they got fueled up.

Andrew:

So we’ve really done a wide range of applications, all the way from more basic forms that you fill out to very visual graphic things, to even interacting with hardware. And what’s involved as far as if I want to get my app both for Android and the Apple store?

Cody:

Ultimately you’re going to have to go through the review process. That’s really the biggest thing is that the review process between Android and Apple tends to be more or less difficult depending on which one you want to go with and there’s no getting around that. But that’s no different than if you developed the actual platforms independently of each other using native code. It’s just part of the process. So when it comes to release time, you just submit the same application to both stores, goes through review process. The stores will yell at you if necessary and you’ll get through eventually. And that’s how it works.

Andrew:

Yeah. Some of the things we’ve seen with going through the stores is, largely you have one code base, but there are little tweaks and things like special considerations you have to do for Android versus iOS. But like you touched on at the beginning, at least you’re not having two completely separate code bases. Largely, one code base.

Cody:

Yeah, you still gain the actual… The benefit of only having to work on a single code base with one team instead of two teams of specialists. So ultimately it’s still going to be faster in the long run, even though there’s still going to be slight little issues you’re going to find between the rendering of different platforms on Android and iOS.

Andrew:

And ultimately you’re not having to have one iOS developer, pay them to build the app and then find a Java developer to build the app for Android.

Cody:

Yeah.

Andrew:

So why did Bixly decide to go with Ionic?

Cody:

Well, in the beginning, we’re primarily a web development company. So that means that everyone on staff has been trained and used multiple web platforms, primarily in Python, Django, we have Angular, we have Node, we have all that stuff that we normally worked with. And that crosses over really nicely within the Ionic platform because its primary front end framework is angular. It has other capabilities like view and react nowadays as well that allows all the skills of the people we had to easily crossover into using that. So, if let’s say you’re a company that’s previously been a web development company you want to make mobile apps, ionic is the answer. There’s a few other answers out there too, but Ionic’s the big one. In my opinion, it’s the best one.

Andrew:

If I know that I want to build a mobile application because that’s my immediate need, but down the road, I anticipate building a web application with similar functionality. Does building it in Ionic offer any advantage as far as reusability since Ionic’s already using HTML and JavaScript and that sort of thing?

Cody:

Yeah, there’s definite ways to repurpose an Ionic app’s internal code to be like a standard web application. There’s always going to be considerations because Ionic has its own packages that are specifically in use on the mobile platforms specifically. So beyond that, though, that you can repurpose it and go beyond and try to make a web application, you can even make a desktop application using Electron nowadays too using the same code base. There will be exceptions you will have to account for them, but it’s all possible. So Andrew, how does using Ionic actually help our clients get to their minimum viable product, otherwise known as an MVP?

Andrew:

Sure. So an MVP is the most minimum feature set for your application that will actually allow you to get feedback from your users. And we have some other videos going into greater depth on that. But the idea is to get this application in front of users quickly so you can determine if it’s a good fit for them. And ultimately, nowhere to build out from there.

Andrew:

Probably the biggest benefit when it comes to using Ionic to build your MVP is that it allows you to build once for both the Apple store and for Android. That way, we’re not having to have two separate code bases that we’re maintaining, which of course, cost twice as much. And it takes twice as long in most cases. If not, more. This is very reusable in the case that it helps both scenarios. Also, because it’s using web based technology, it can be developed fairly rapidly, so it allows you to get to market sooner and get that MVP product in front of your users so you can start gathering that early feedback from them.

Cody:

Another aspect of Ionic that’s really valuable is that even though you can use it to develop a proper minimum viable product or MVP, you don’t have to use it as simply a stop gap. It’s not just something that’s going to get you to that point. It can be 100% built out to be an enterprise grade application. And it’s in use on a lot of large companies. We’re talking Fortune 500 companies. In either case, it can be used all the way up to 100% production development and a profitable project.

Andrew:

Thank you for joining us on this Bixly Tech Tuesday where we covered Ionic and how it makes sense to use it for your mobile application for cross-platform development. Cody, if they’d like to get a hold of us to learn more about if Ionic is a good fit for their mobile project, what’s the best way for them to do that.

Cody:

You’d go on our website, bixly.com and there’s a contact form waiting for you to get ahold of us. And we’ll be happy to talk to you about any of your needs. Also, like, comment and subscribe.

Originally published at https://blog.bixly.com on January 20, 2021.

Python/JS developers ready to work with you! California-based software development.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store