Ensuring stability in the online courses mobile app | How we do IT #3

A mobile app that mostly works isn't good enough. Every slow load, silent crash, or unresponsive element chips away at user trust. This "How We Do It" episode from Merixstudio covers how the team monitors stability, catches regressions before release, and maintains app quality across platforms.

00:00 → 00:02

When talking about application stability,

00:02 → 00:05

we can't just ask if it works properly or not.

00:05 → 00:07

Every error, every lack of response,

00:07 → 00:10

every element that takes too long to load may affect user

00:10 → 00:13

satisfaction and consequently damage the company's reputa.

00:13 → 00:14

Reputation.

00:18 → 00:19

I'm Aleksandra,

00:19 → 00:22

Senior Content Marketing Specialist at Merixstudio and

00:22 → 00:23

this is how we do it.

00:23 → 00:27

In this series, we present you specific design and development challenges and

00:27 → 00:30

explain how we deal with them at Merixstudio.

00:30 → 00:34

Every case is based on our own experience and projects we've

00:34 → 00:35

worked on so far.

00:35 → 00:36

In today's episode,

00:36 → 00:39

we are going to take a look at an American mobile application

00:39 → 00:42

that teaches users how to manage their funds.

00:42 → 00:45

Financial literacy is a big problem, especially in the US.

00:45 → 00:49

The number of people who are unbanked or who do not have the

00:49 → 00:53

knowledge or confidence in how to manage their savings is astonishing.

00:53 → 00:56

The app in question aims to address this issue.

00:56 → 00:59

Like any other application developed at Merixstudio,

00:59 → 01:02

it must be stable and there are at least three reasons for that.

01:02 → 01:05

One, users should want to use it, obviously.

01:05 → 01:09

Two, it should cement the organization's reputation and credibility.

01:09 → 01:10

Three.

01:10 → 01:13

Employees should be able to introduce and develop it

01:13 → 01:15

without any difficulties.

01:15 → 01:18

The most important features of this application are sign up

01:18 → 01:21

for a multi stage course, participation in webinars,

01:21 → 01:25

integration of the stock market interactive elements and

01:25 → 01:26

gamification.

01:26 → 01:28

How have we ensured its stable operation?

01:28 → 01:31

What do we focus on when creating reliable applications?

01:31 → 01:34

See how we do it at Merixstudio.

01:34 → 01:37

Let me start with the things that may be problematic from

01:37 → 01:38

the stability point of view.

01:38 → 01:41

Let's begin with stable operation on the back end.

01:41 → 01:44

That's where we begin to prevent further problems,

01:44 → 01:47

but that's also where some less predictable things may happen.

01:47 → 01:48

Maybe users are reporting issues,

01:48 → 01:52

the rating is going down, or we want to release an update,

01:52 → 01:53

but we do not know what to fix.

01:53 → 01:56

These scenarios are far from perfect.

01:56 → 01:58

Then there is user experience.

01:58 → 02:01

Many factors influence users' perception of the application,

02:01 → 02:05

so we need to tailor it to the potential customers' expectations.

02:05 → 02:08

This involves determining the arrangement of elements,

02:08 → 02:11

animation times, the amount of content, and so on.

02:11 → 02:15

But mind you, user experience is not only influenced by the looks,

02:15 → 02:18

but also by the app's operation in various scenarios.

02:18 → 02:21

The final challenge is to ensure stability during

02:21 → 02:24

maintenance and further application development.

02:24 → 02:26

It's an educational platform with lessons and progress

02:26 → 02:30

records, so users expect developers to expand the course

02:30 → 02:32

library regularly.

02:32 → 02:35

Imagine the user tries to launch the application,

02:35 → 02:38

but it doesn't load because it requires an update.

02:38 → 02:40

Once the update is installed,

02:40 → 02:43

the user sees that some of their favorite features have been changed.

02:43 → 02:46

What's even worse, the application is now slower.

02:46 → 02:48

And you know what the user will do next, don't you?

02:48 → 02:50

They're on the verge of uninstallation,

02:50 → 02:53

and that's just because of a single update.

02:53 → 02:55

Now that we've discussed the challenges,

02:55 → 02:58

let's see how we can cope with them in this case.

02:58 → 03:00

Aydin, our Senior Mobile Developer,

03:00 → 03:02

has some pro tips for us.

03:02 → 03:06

So Aydin, what can we do to ensure stability on the back end?

03:07 → 03:10

First of all, we keep our code clean and simple.

03:10 → 03:12

So everything is readable and maintainable.

03:12 → 03:16

Thanks to that, we quickly make necessary changes and handle problems

03:16 → 03:17

that users encounter.

03:17 → 03:20

Analytics and error reporting tools also shorten the time

03:20 → 03:23

spent on inspecting and fixing these problems.

03:23 → 03:26

Such tools provide technical details about errors, crashes,

03:26 → 03:28

timeouts, or various other metrics.

03:28 → 03:30

Just by going through these reports,

03:30 → 03:33

we easily know the sources of problems and save up the

03:33 → 03:34

valuable development time.

03:34 → 03:37

Another important thing is the backward compatibility.

03:37 → 03:41

There is literally no app that doesn't need regular updates.

03:41 → 03:44

Those updates could be for maintenance, cosmetic changes,

03:44 → 03:46

new features, you name it.

03:46 → 03:47

So at this point,

03:47 → 03:50

we must also think about the old users with various other

03:50 → 03:51

versions of our application,

03:51 → 03:54

because some versions of the application may refer to old

03:54 → 03:57

endpoints of the API, store an outdated data structure,

03:57 → 04:00

or contain outdated implementations.

04:00 → 04:03

So there has to be a safe way to handle this.

04:05 → 04:08

So the lack of backward compatibility can negatively

04:08 → 04:10

affect the user experience.

04:10 → 04:14

What other steps can we take to enhance user satisfaction?

04:14 → 04:18

First, we ensure the smooth operation by wisely managing the phone's resources.

04:18 → 04:20

There are tons of different devices with different

04:20 → 04:23

processing power, amount of memory, screen sizes, and so on.

04:23 → 04:25

Regardless of these differences,

04:25 → 04:28

the application shouldn't cause overheating, skip frames,

04:28 → 04:30

or greedily use battery.

04:30 → 04:34

Also, cached content shouldn't take as much space when videos are streamed.

04:34 → 04:37

Of course, users are free to download the content if they need to.

04:37 → 04:41

Another cool thing we've done in this project is conducting

04:41 → 04:43

tests to check when the application takes longer to

04:43 → 04:46

load or which animations last too long or too short.

04:46 → 04:49

After fixing bugs and adjusting the animations,

04:49 → 04:52

we can proceed to ensure they are at high frame rates,

04:52 → 04:56

so that the app doesn't feel slow on certain devices.

04:58 → 05:00

Moving on to the last solution,

05:00 → 05:03

how to ensure stable operation during the maintenance phase?

05:03 → 05:05

During the application's lifetime,

05:05 → 05:08

users will often do things that we haven't even imagined.

05:08 → 05:10

That's why we are tracking metrics that allow us to spot

05:10 → 05:13

errors and identify areas for improvement.

05:13 → 05:16

The error reporting I mentioned earlier also plays a role here.

05:16 → 05:19

At the end, all this information we collect from various analytics and

05:19 → 05:22

error reporting tools help us create these subsequent fixes.

05:22 → 05:25

Staying on the topic, version history also helps.

05:25 → 05:29

It creates a safety net for undoing the changes that aren't optimal.

05:29 → 05:32

Sometimes, these are just cosmetic changes that users do not like.

05:32 → 05:35

Sometimes, it's a minor bug that crept in with an update.

05:35 → 05:38

Regardless of the reason, we can roll it back quickly.

05:38 → 05:41

Lastly, we divide updates into optional and essential.

05:41 → 05:44

Optional updates aren't required immediately and

05:44 → 05:47

usually contain minor changes that won't affect the operation of the app.

05:47 → 05:51

However, the essential updates contain important changes that are most

05:51 → 05:53

likely to be breaking things.

05:53 → 05:56

At this point, user is kindly asked to update the app,

05:56 → 05:58

otherwise, application won't start.

05:58 → 06:02

Thanks, Aydin, for your pro tips for increasing application stability.

06:02 → 06:04

As you can see, the topic is wide,

06:04 → 06:08

but I hope this video will help you keep your application stable.

06:08 → 06:10

Thanks for tuning in,

06:10 → 06:14

and don't forget to check out more of our mobile development related content.

Let's connect and build together