[Instructor] In this lesson,
we're going to talk about mobile device synchronization
and how you can synchronize data
from your various applications across devices
or into the cloud.
But before we do that,
let's first talk about the two main OS' out there
for mobile devices.
These are Android and iOS.
When you're dealing with mobile operating systems
and tablets and smartphones today,
there really are only two dominant players in this market.
The first is the Android operating system.
Android has taken a lot of market share
because it offers an open-source code base
instead of a closed-source or proprietary code base.
Android has been sponsored and developed by Google.
It has a very large distribution
of the operating system code,
and is widely available on smartphones and tablets,
as well as other smart devices
like network streaming TV set top boxes,
and a myriad of other internet of things devices.
Because of the open-source nature
of the Android code base
that makes up this operating system,
each manufacturer of a tablet or smartphone
can actually change the way
the operating system looks and feels
before implementing that on their devices.
For example, if you look at an Amazon Kindle Fire tablet,
they don't look anything
like a normal Android tablet,
but underneath them they're actually running
the Android operating system,
but they've done a customized interface on top of it.
Because that operating system is open-source,
manufactures can save considerable time and money
by not having to reinvent their own operating system
for their tablet devices or smartphones,
and instead they can use Android as their baseline.
Now, the other dominant mobile operating system is iOS.
iOS was developed by Apple
for use on their iPhones and iPads,
but these days iOS is only used on iPhone,
and the iPadOS, which is a variation of this,
is used for their iPads.
Now this operating system,
which we're going to collectively call iOS,
relies on closed-source code
that was developed and sponsored by Apple.
Because of the proprietary
and closed nature of this operating system,
the only people who can use it are Apple,
because they own the intellectual property for it,
and they only have licensed it for use
on Apple hardware at this point.
Now when I talk about open versus closed-source,
this is an important distinction
when we talk about software.
When we talk about a system that is denoted as open-source,
it means that the software and its original source code
are freely available
for any developer who wants to download it,
modify it, and redistribute this code base.
This allows manufacturers to utilize the code
without having to pay a large licensing fee
to the original software manufacturer.
Additionally, they can modify the operating system or code
to do whatever it is they wish with it,
whether that's putting it on a smartphone, a tablet,
or another smart device.
Open-source software allows them to have a lot of creativity
in the manufacturing of their devices,
as well as the ability to have other people working
to help create more applications
for the operating system that they're using.
This is one of the reasons
that the Android operating system
has grown so fast in popularity with manufacturers
because they have a lower cost of services
by using this open-source platform
as their code base for their operating system.
Now conversely, Apple's iOS falls under the category
of closed-source.
When you use closed-source software,
you're usually going to be doing this with proprietary software
and this computer software is licensed
under the exclusive legal right of the copyright holder,
in this case Apple,
and they can license that to other people
to use under their terms and conditions.
Now, the licensee who is going to license his software
will be restricted from other uses,
so they're not allowed to modify it, share it,
study it, redistribute it, or reverse-engineer the code.
When you're dealing with closed-source software,
all you're getting is the product,
you don't get to see how it was actually created
or the actual software code underlying it.
I like to think about open versus closed software this way,
let's say that you want to have a pie for dessert tonight,
if you go to your local bakery to buy a pie,
they're not going to give you the recipe,
this is like closed-source software.
You're going to pay for a pie,
you can eat the pie, you can enjoy the pie,
but you're not going to know how they made the pie.
Now on the other hand,
let's pretend you went to the grocery store
and they only had apple pies,
but you wanted a blueberry pie.
Well, too bad that store only sells apple pies
so you're going to have to eat that apple pie
for dessert tonight instead of blueberry.
This is because you have no method
to change the recipe of the pie,
because you don't know how that pie was made.
Now let's compare this to going over
to your friend's house and getting a pie from them.
Now this might be more like an open-source solution,
your friend, instead of giving you the apple pie,
they might give you the recipe to make the pie yourself.
This is what happens
with the open-source software community.
You can have the end product
by simply downloading the Android operating system
and use it as it exists,
or in this case, you can go to your friend's house
and take an apple pie they've made for you,
or you can actually download the source code
and remodify it for your own use.
In the apple pie example,
you got the recipe from your friend
and you changed out the apples for blueberries
so you can make the pie that you actually want to eat.
This is the beauty of open-source,
creativity and change can be included,
whereas with closed-source or proprietary software,
they can't.
Now we've just finished a discussion
of open-source versus closed-source,
and while that's all valid,
the end user rarely is going to be involved
in developing the operating system or the code itself,
instead, that end user simply wants to be able to buy,
download, and use applications on their device.
To get applications if you're using an Android device,
you can get them from a couple of different places.
First place is the official marketplace,
known as the Google Play Store.
This is by far the most widely used
and easiest place to get new applications.
But with Android,
because we're dealing with an open-source operating system,
you're not actually limited
to just the Google Play official store,
and instead, you can actually get your software
or applications from a variety of different sources.
For example, you can go to the Amazon Appstore,
GetJar, SlideME,
or numerous other third party application stores
to download software onto your smartphone or tablet,
if you're running the Android operating system.
Apple on the other hand
prefers to use a walled garden approach,
and this means you can only get apps directly from Apple.
Now this doesn't mean Apple's the only developer,
but it means you can only get get apps from their app store
which is called the App Store.
Now, the App Store is an application on your iOS device
that allows you to access a store,
purchase, and download applications.
Under the Apple terms of service,
you're not allowed to download an application
from anywhere else in the world,
you can only do it from the App Store.
Your iOS device will not allow outside applications
to be installed on that device
without first jail breaking that device,
and since Apple Software is closed-source,
the end user is required to accept the terms of service
prior to being able to use the device,
so they are now locked into the App Store
when they want to download software.
Now in both the Google Play Store and the Apple App Store,
you're going to find applications
from lots of different developers.
Anyone can make an application for this software,
but they have to get it approved and published
into the app store for you to be able to download it
and install it on your mobile device.
To create an application for an iOS device,
you're going to use the programming language Swift,
and use Apple's Xcode,
which is an integrated development environment
to create the code that creates that application.
On the other hand, if you want to create an app for Android,
you're going to be writing this
in the Java programming language,
and you'll be using Android Studio
as the integrated development environment,
and this can operate on Linux, Windows
and macOS systems.
Now once your applications are installed on a device,
you need a way to synchronize the data
that's being held by those applications
across multiple devices, including laptops, desktops,
smartphones, and tablets.
Now one of the easiest ways to synchronize your data
across multiple devices
is to use a shared account across a cloud based network.
There are three main providers in this area,
Microsoft, Google, and Apple.
Microsoft uses a product known as Microsoft 365,
this gives you the ability to have
office productivity software,
as well as a large amount of storage space
in the cloud under what is known as OneDrive.
Users of Microsoft 365 will normally get
an email account associated with it
using the generic domain of outlook.com,
or by having a registered third party domain
such as your own company's domain name
if your company uses 365 at the enterprise level,
for example,
if I decide to use Microsoft 365 for my company,
we would then have email addresses
of @diontraining.com,
and it would be hosted and provided by the Microsoft servers
using the 365 service.
The second option we have is using Google Workspaces
provided by Google.
Now Google Workspaces requires a Google account,
meaning a Gmail account,
or having an enterprise account with Google
and your own domain.
My company actually uses Google Workspace
for all of our productivity software.
This gives us the ability to have Google Docs,
Sheets, Slides, and Google Drive for cloud based storage,
as well as providing email for all of our team members
at Dion Training.
When you email us at deontraining.com,
it's actually going through a Google server,
and they're the ones who are hosting our email for us
as part of Google Workspace.
And the third option we have is Apple's option,
this is known as iCloud.
Now if you get an Apple account with iCloud,
your email is going to be @icloud.com, or @me.com.
This is a free service that anybody can sign up for,
and there is a free storage level tier on iCloud
when you sign up for this,
and this service works exceptionally well
if you're using an iPhone or an iPad as your mobile device.
Now in addition to the free level,
there is a paid tier you can have with iCloud as well
that gives you additional storage capacity in the cloud.
Now when you configure your device,
you're going to choose which
of these three services you're going to use,
or some other option out there,
and this will allow you to sync up information and data
from your devices to other devices
across multiple mobile devices
and your desktops and laptops
using these cloud based services.