Category Archives: Mobile

What mobile strategy is best: Native or Hybrid?

So: What is best? A native app or a hybrid app? And if you build a hybrid app, what’s the best framework to use?

As with most interesting questions, it turns out that the answer is “it depends”. I often get questions like “isn’t Xamarin (or Cordova) better than build a native app”. Weeeell, it’s not as simple as that.

Here’s a few ideas that I’ve found myself repeating lately:

  • Are you building something that should be available to a large audience where you also want a (mobile friendly) web site? Then Cordova is probably worth a look. Actually, if you get the Progressive Apps parts right, you may want to use Cordova for iOS and a “pure” web app for Android. If you’re building something for an event (like a conference!), mobile web should probably be a strong consideration. People don’t like to download an app that they will only use for a specific period.
  • Are you building an app to internal users in the company where you can control what device they use? Then you may want to consider targeting a single native platform (either iOS – if you don’t think companies should pay taxes – or Android – if you feel that mobile devices can never be too inconsistent). CSS + JavaScript has a lot of sharp edges and adding a layer of abstraction on top of a programming model also adds a layer of obfuscation. If you can get away with targeting just one platform, then go native!
  • Also, if you want to go for absolute top-of-the-class, you probably want to build (two) native apps. Anything that wasn’t build with the native SDKs will probably feel a little foreign and weird on the device. At the very least, hybrid frameworks usually trails a bit behind the newest platform developments. This means two code bases, two copies of every bug and quite possible two teams (or 2 + a backend team). You pay for style!
  • If you want something that doesn’t have to be spit-and-polish perfect but that should still feel well integrated with the respective devices and you don’t want to invest in two separate code bases, then Xamarin or NativeScript may be a good bet.
  • Finally, you always want to consider the skillsets of the team at hand. If you want something native-looking and have a bunch of JavaScript developers, NativeScript and ReactNative are your friends. If you have a bunch of C# developers, then go for Xamarin.

As a mobile developer, there’s always more stuff you should learn. This is why I co-founded the Mobile Era conference which happens in Oslo November 3rd-4th, where we will have talks on Android, iOS, ReactNative, Ionic 2, as well as IoT, beacons, mobile databases and much more. Tickets are soon sold out at mobileera.rocks

Posted in Communities, English, Mobile, Software Development | Leave a comment

Welcome to the Mobile Era

(Looks like I’m back in the conference organization game again! After a few years of lots of travel and then a few years of lots of family responsibilities, this year I co-funded the Mobile Era conference. It looks like it will be a blast!)

If your experience is anything like mine, most of the interesting projects around you are having a larger mobile component this year than last year. I think this trend will continue. It can be a mobile-first website or a custom internal app for a company that wants their workers to be more effective when they are in the field. It can be an app to engage your customers or an intelligent sensor or “thing”.

We now have the technology to move lots of applications that used to be tied to a workstation over to a mobile device and in so doing unshackle people from their desks.

But this leads to a new challenge for developers: If you were an “enterprise developer”, you’re used to large data volumes, complex domain models and integration with various systems in various degrees of disrepair. If you were an “apps developer”, you were used to multiple device configuration, designing for small surfaces, and APIs with various peculiarities. Now the need has come for people who combine those skills.

With this in mind, it dawned to me almost a year ago that there is no good event in Norway that addresses this challenge. I wondered if anyone else was thinking like me, so I send an email to a few people with “if you think this is cool, I’m meeting a couple of people at Espresso House next Monday to see where we want to go. Please forward.” I was pretty amazed by the turnout (I’m the guy hiding in the back):

Mobile Era team

When we compared notes, many of us had almost identical ideas about what we thought a Mobile conference could mean. In the front and center of the picture, you can see Maxim Salnikov who came up with the name that embodied everything we had in mind. Thus the Mobile Era conference was born.

After a long and winding road, Mobile Era is only a month away. We have an amazing program with deeply technical subjects like the Realm Mobile database, Mobile DevOps, the new Awareness API in Android, performance tuning in Swift, ionic 2 features, React Native, Firebase, IoT. If you wanted to catch up on what’s happening all over the Mobile space, now is your chance!

When I look at my own preferences, I see that I more and more often leave the computer behind and use my mobile instead. I do code review on my mobile, I watch tech talks on my mobile (as well as tv), I receive production logs on my mobile, I deploy the next version of my software on my mobile.

In the Mobile Era, I expect my users to demand as much from the software I write.

PS: The early bird closed last week, but if you write a comment on this blog post, I’ll email you a special discount code which is valid for another week or so.

Posted in English, Mobile, Non-technical, Technology | 1 Comment