According to different sources there are around 5 billion mobile devices in the world.
That number is growing every year.
Look around, today almost everyone has a mobile device such as a smartphone or a tablet.
With that number of devices, the need for mobile applications is growing.
Today, for many companies, it’s not enough to have only web applications of their products.
People want to use mobile applications instead.
There are two major mobile platforms out there: iOS and Android.
If a company decides to build a mobile application it may choose one of these platforms to start on.
More often companies want to have mobile applications on both platforms.
One way, the original way, to develop a mobile application is to use native development tools and programming languages for each platform.
To build iOS applications one can use Swift or Objective-C programming languages, for Android applications - Java or Kotlin.
So, in order to build mobile applications for both platforms, a company needs to have developers with expertise in both of these technologies.
Most often those are different people.
There are other ways to build such applications.
One can build so-called mobile web applications.
What is that? In a nutshell, the application uses a web browser behind the scene and delivers all content as a web page.
Yet another way would be to use technologies which allow building native applications by using a single tool.
One builds an application using that tool and the application is able to run on both iOS and Android devices.
React Native and Flutter are examples of those tools.
With this article, I’m going to start a series of articles about mobile development using React Native.
I would like to invite you to join my journey of learning React Native.
We are going to cover the first steps and learn the technology on our way of building applications.
Let’s get started.
I wanted to start a blog for a long time, but I was always postponing it.
A little bit more than a year ago, I’ve made a commitment to write a blog at least ones in two weeks.
In fact, I’ve ended up to publish a blog post almost every week.
Today, I would like to look back at this year and share my thoughts with you.
Software developers communicate by using different terms and metaphors.
Some of those terms and metaphors are obvious for developers, but not that obvious for managers.
To communicate well, developers and managers need to interpret those terms in the same way.
Technical debt is one of those terms.
Let’s try to understand what is a technical debt is and what it isn’t.
In the previous articles, we have different aspects of developing Alexa skills.
We learned how to pass state between intents and sessions.
Sometimes, you may run into a situation when you need to interact with external services.
It could be a service to fetch weather information, local news or, you can even set up a private service to interact with IoT devices.
Basically, anything you can interact with over HTTP.
Now, let’s learn how we can interact with external APIs from an Alexa skill.
Keeping some state within a single session of Alexa skill could play an important role of how the skill interacts with a user.
Keeping the state between sessions may bring your skill to another level.
By doing so, the skill can pick up the user from the middle of a conversation and proceed from there.
Sounds great? So let’s learn how we can achieve that.