Skip to main content

What is a mobile app? (Course Introduction)

Before we get into the editor, it’s worth taking a step back to making sure we understand the answer to this question.

Sofia Maconi avatar
Written by Sofia Maconi
Updated this week

Transcript

How does YouTube still know my search history even if I smash my phone?

Well, it's the same reason that I can see my search history on both my laptop and my phone. Because an app is really two apps.

One part lives on your phone, and this holds the interface as well as all of the logic for what happens when a user taps here or swipes there.

And the other part lives on another computer somewhere else on the internet. And one of the major things that this computer does is hold all of your users’ data.

And what connects them is — well, you guessed it — the internet.

Now, this part we call the front end, because it's what your users see and have access to. And the other part we call the back end, because it lives in the back, so to speak.

And these two parts of your application are running on two completely separate computers. So your phone, as one of these computers, you might sometimes hear called the client. And this other computer, which you might hear called the server, lives in some warehouse somewhere and is dozens of times more powerful than your piddly little phone.

Now, what happens when you open up an app like YouTube on your phone and search for cat videos is that the server over here — I'll just get rid of my beautiful representation of an app — the server is going to comb through all of the data that lives inside of it, that lives on its hard drive.

And you can think about that hard drive as just a giant warehouse full of data. Right? This is what we call the database, which we're going to get into very shortly in the course.

And what it's going to do is it's going to look through that database. So it's going to look on all of its shelves in the database, and it's going to find all of the cat videos. And it's going to bundle them up, and it's going to send them through to your phone — or, as we call it, to the client — so that you, the end user, can view them.

And when you tap on one of these videos to watch it, the server — your database — will remember that too, because it has a record of you as a user. And when you tap that funny cat video, it's going to store that cat video on your user profile as the last video that you watched. It's going to add it, in other words, to your search history.

And because this record of what you, the user, have watched lives here on the server, it means that other clients — other machines — right, this is also a client — other machines like your laptop can also access this information. So you could, via your laptop, view your watch history and, perhaps even if you're feeling a little bit bored, re-watch one of those cat videos.

Now, this is also why if you lose access to the internet, then you cannot access the data from the application. Right? This connection between the back end and the front end is severed.

Now, one little caveat is that the mobile apps we build with Bubble can access some data while offline — but we're going to get to that later in the course.

The main takeaway for now is that when we build a mobile app in Bubble, you're setting up different parts of your application that are running on different computers. And that can include even a web version that your users access via web browsers like Chrome and Safari on their laptop or desktop.

And then, what you're doing when you deploy your app to the app stores is you're just providing another front end for your end users to download.

So, what can you, humble Bubble developer, do with all of this information? Well, right now, not a huge amount — but that's not the point.

This is a mental model that will make everything that we build from here on out a lot easier. You won't be caught wondering things like, "Will all this data that my users are saving slow down their phone?"

Because that data, as you now know, doesn't live on their phone. It lives on the server. And all your user's phone is ever doing is just retrieving — requesting — data from that server to display within the context of your application.

So, now that you can call yourself a developer, we better develop something.

So, I'll see you in the next section, where we're going to start building our first mobile app.

Did this answer your question?