Enter the world of server-driven mobile development

Alexander Kondov
Appzio
Published in
4 min readOct 17, 2017

--

It’s widely known that users generally prefer a native application over browsing your mobile website. The total count of apps in Google’s Play store and Apple’s App store is more than 5 million. It’s strange though, that the process of mobile development is still calling for optimization.

But what exactly is the problem with mobile development? You would imagine that with all the interest in apps these days the barrier to entry must not be that high. However, as soon as you start researching you will see that developing a stable native application can be quite a lengthy and expensive process.

When you start developing your application you will want it to get as much exposure as possible — therefore launching it on the two biggest mobile platforms at the moment. But despite the fact that traditional mobile development is slow, constructing an app for both platforms will cost you twice the resources.

The challenges of mobile development

People who come from a web development background are used to “write once — run everywhere” but mobile development doesn’t work like that. Why is that? Due to the fact that the two leading mobile operating systems use different programming environments we cannot reuse code from one to the other. Leading to developing two applications that look the same and have the same business logic twice.

For this, you will need to sustain two teams of developers and synchronize the building process between them. You will also need some sort of a backend developed so you can store user data. And we are yet to talk about marketing, management and the app maintenance process after you have launched.

This is an issue that many companies, small and large, are actively trying to solve. Startups are looking to get into the Stores fast and iterate quickly. Larger companies on the other hand need to sustain expensive teams of mobile developers. This is the reason why even tech giants such as Facebook and Airbnb are investing in alternatives that would allow faster development and better code reusability.

The JavaScript solutions

One approach to solving the puzzle of faster mobile development is through technologies such as JavaScript or C#. The aim of those tools is to appeal to the wider audience of web developers and take advantage of the already established communities. Some of them can really improve your mobile development process, but there are a couple of things to take into consideration.

The main problem with those technologies is their steep learning curve. In order to create an application with them you will need your team to sink some time into researching the technology. And as you can guess this can be an even bigger problem if your team is not working with the same stack at the moment.

Another thing to consider is scalability. Unless you know the platform inside out you can easily cause performance issues — something that kills the native feel of the application. Not all of those tools scale well and the production of a larger app can easily go out of hand.

The Appzio approach

We wanted to make native development accessible to an even broader audience of developers so we had to take a different approach. As we mentioned earlier, every complex app needs to have a backend implemented. So why not take full advantage of that? Our tool utilizes the already existing technological stack by allowing your backend developers to also work on your mobile application.

Appzio unlocks the door to server-driven mobile development. This is an approach in which the behavior of your app is controlled entirely from the backend. How does this work? You use Appzio’s native app engines for iOS and Android as a base for your app. Then it will be able to communicate with the server which will send to it instructions about what components it should render and how they should behave.

Why server driven? With some of the other unorthodox technologies you may not get an app with the feel that users expect. Apps created with Appzio give users the full native experience with snappy and responsive UI.

The two major benefits of this approach are the speed and cost of development. By allowing you to achieve with one person what you usually need a whole team, you can produce a launch ready application in a third of the time that you would usually need — cutting development time from months to weeks.

Another great benefit is code reusability. The application engines are fully responsible of the way the UI is rendered, thus almost 100% code reusability is ensured.

Updates couldn’t be easier with Appzio. You can change the app’s look, feel and logic only by updating your backend. So next time your user opens his favorite application he will see all the new things that you have implemented.

You are also not locked in a single language — we are currently in the process of making the platform available for the most popular server-side languages out there.

Ready to build your new app?

Try Appzio for free

--

--

Alexander Kondov
Appzio

I write about programming, philosophy, and the things in between.