Hey! This is the Daily Overpass! My name is Eric and I make apps! Now today, I'm
going to talk about why we are moving away from the ionic framework.
Okay, so the other day, I had two questions come in on two separate videos,
which I responded to and the answer was very similar. And I nearly didn't
answer them because they were questions that I think I've touched on before in
past videos. But then, as I was thinking about it, things had changed a little bit
especially my feelings around hybrid frameworks and the ionic
framework in particular. So, the first one came in on on episode 270 from Mr. Net
Tune, said, "Hey Eric, what do you use to code your apps?" I was gonna be
very flippant and say a computer, but I thought, you know, dad joke! So, I didn't
go with that one. And then also, on episode 266 Ms. Media 360 said, "I want
to make Android apps. What's the best platform for beginners?" So, I told
this in the beginning, if you want to be completely safe, go Native. But
Native takes a long time. You'd code to separate app bases but you
don't have to worry going forward. In the past and I talked about
different things, if you're doing games, we'd always do Corona. We do Corona SDK.
I'm a big fan of that framework but it seems like to me, it seems like a lot of
the excitement about that platform was gone off. Like even books
there hasn't been any books written lately on it that I've seen.
Everything, all the big major publications of it we're back in like
2012-14. iI just seems like it's kind of fading away that
might be completely wrong. And you might not find that - you might be a Corona
developer, I know it's actually a vibrant community but not in my opinion.
To me, it just seems to be kind of fading away a little bit. So, I'm starting to
look more towards Unity there on the app side. On the business app side, I am a big
fan of the ionic framework. I've talked about this many times before, a lot of
our client stuff is done on Ionic. I like using Javascript, I like using the
Cordova plugins and everything like that. And a lot of things we've done, we've
done in ionic. A lot of the client stuff. We use ionic 1 and ionic 2 and
it's just the platform keeps getting better and better and better.
I'm a huge fan, however, a few months ago, if you watch the channel, you know, we
talked a lot about the changes in the Apple guidelines. First of all,
there was Apple 4.3 about spamming the store which was there for ages, but they
really started to crack down on it especially it's mainly punishing
developers with lots of apps and I think it's just, you know, I think it's
just lazy reviewers who don't want to review stuff. So, they're starting to push
back on that and then there was the guideline 4.2.6. I
think with 4.2.6 or 4.2.9, I forget which
one it is, but it's the one that says, anything this wizard generated will get
rejected. And that was - there was a huge outcry on that. There
was a change.org petition and Apple has softened their language on that since
then, because it affected a lot of people. People using GoodBarber and peopie
and business apps and all this kind of stuff. And I was actually
free and clear of that. i didn't have anything like that although we were
working on a similar product ages ago like a VYZWYG kind of build your app
type of thing. Until I realized, we didn't have the - just too much client we're
coming in, didn't have the time or the resources to keep up with it. So we just
don't let it fall by the wayside and this. But the scary thing about that was
that Apple started rejecting apps not because of the quality of the app, but
because of how they were made. That was one of the reasons there was a big
outcry now. It didn't affect me at all. But it did make me think about a lot of
things, mainly that Apple has no problems with ignoring a huge amount of their - of
their users and their developers and just pushing them aside no matter how
many people are using that framework. And just say, "Sorry, we're not going to
support it anymore." It just - I just thought, it was crazy. But if you ever
follow Apple, you know they did the same thing with flash developers when the -
when all the flash developers back when the iPhone/iPad came out saying,
"When are you gonna support flash?" And they said, "We ain't never gonna support
flash." It doesn't matter how often it's used on the web. You're just gonna
have to move to something else and then flash developers, they went through a
very hard time and I don't know if any exist still, but you know, it's just
Apple has some balls. Sorry if - I'm sorry if it's rude.
I don't know best if it's rude to you. They will - they will completely push it aside
a group of people. Now, back to Ionic. Ionic is fine. Cordova is fine. All of
those type things, they're all fine. But it made
me think, what if at some point. they reject that? Even this morning I
was reading an article. I think was Philip Kraus, the guy who does a Fast
Lane. He put it up about how much of security by a security liability using
web views and apps are, because it bypasses a lot of different things. And
there's some people are saying we shouldn't be, you know, Cordova apps
and Ionic apps shouldn't be allowed. I mean, it's a very small group of people
but it started to make me think what if Apple just does an about-face on that?
So, the whole thing - so for those of you who don't know what I'm talking about,
Ionic and Cordova, they're web-based framework. So, everything, they have all -
they can have all the functionality of a regular app because they have plugins.
But it still sits inside like a little web browser within the application that
you have total control of. And it doesn't necessarily get download from the web
but it runs locally and so you have CSS and HTML and it looks just like a Native
application. Some people complain that it's a little bit more laggy. They're
always improving on that and you can code it in a certain way that you get
rid of the lag. But it's just there. But it's still running in a web view
and that's kind of - what kind of defines it. You're seeing a lot of other
frameworks that are coming out lately that are not necessarily native
components. But they are compiling into native code. I mentioned it before, the
last few projects and so this is after that 4.2.6 thing, to let
you know where I'm going with this. And you might disagree with this. We started
to move towards React Native and to form new projects. Now, we still use Ionic for
the legacy stuff. I'm not gonna rewrite anything, I'm not gonna
rewrite anything unless we absolutely have to. So, if somebody comes back with
like a little enhancement, we're still keep an eye on it going, still keeping
those skills and everything. But we're starting to move more towards React
Native. Although, I've mentioned before, I'm not - my problem with React Native is
that Facebook is in charge of it and Facebook pull the rug out from
underneath beyond parse. And that's just one of those things that kind of -
you know, kind of thing. There's also the NativeScript which is done by Telerik
I think, which does actually interfaces
with native components and everything like that. But you know, I don't see a
huge community there. Then just this week, I started looking at Flutter.io
which is done by Google and that looks like it might have a bit of thing.
So, there's a lot of things moving it, but Flutter IO uses Dart as a language.
I don't know anybody who's a Dart developer and I'm thinking should we
learn Dart? Is it worth investing in that? But you know, and so if
you're just getting started in software and you learned Dart and that
thing really takes off, you'll be set. You can just charge whatever you want. So anyway,
this is one of the reasons I am NOT against the ionic framework.
I love the ionic framework. I've been to ionic framework meetups of London.
If you're following everything they do, I watch their
videos and everything like that, but my fear from a business point of view is
that Apple calls the shots, right? And you have to - you have to anticipate
what happens if Apple pulls the rug out from underneath us the way they
did with wizard-generated things a few months ago, and then we'd all be screwed.
So anyway, that's just my thinking on the topic. Let me know what you, guys, think. By
the way, if you're just starting out and you want to do something that's safe or
something safe for your clients, you could go Native. But you're talking about
having to you know two different code bases, you know, Swift or Objective-C on
this side, Java Android on this side, right? So you have
higher cost, you have higher everything else and it's better to have that. I
prefer to use a cross - a cross-platform framework not necessarily a hybrid one,
buta cross-platform, because we can give like a flat low price to our clients.
And for both platforms, we stay competitive that way and a more
fun to work with in my opinion. So anyway, let me know what you, guys, think. Do
you completely disagree with me on that? Is ionic - am I being harsh with Ionic?
Hey, personal web apps take off, that's gonna be game changer. Everything's gonna
change there. But so, anyway, let me know what you, guys, think. That's it for today.
I'll talk to you, guys, tomorrow.