Our Favourite Azure Services

SQL Server

When users and data are involved in a project, it is imperative that we are able to store this data in a secure and reliable way. Fortunately, one of Azure’s many services is the SQL Server! We use this to set up databases remotely and within a safe and powerful environment with some of the best protection from hackers, natural disasters and physical threats.

 

Another key feature of SQL Server and many of Azure’s cloud services is scalability. Not having a scalable system can cause huge problems when an app is growing in popularity because the workload generally increases with it. Features can become slow or unusable resulting bad reviews, uninstalls, lost revenue and more, all because the system is not powerful enough to handle the increased traffic. Azure allows us to solve this problem easily and in a cost-effective manner by giving us options for upgrading what we are using and even allowing us to let it scale automatically at times. All we have to do is adjust these options on their portal using a browser. Doing this in-house can be very difficult, expensive and time consuming, even if you have the resources of a large company.

 

Static Web Apps

A web app (or application) is a piece of software that is capable of running within your web browser. A static web application is typically downloaded to your machine when you first visit the site and from then on, your computer handles the rest.

 

We use Azure’s Static Web App service to host the server that provides the website . We use this because it is quick and easy to set up, we can make it scalable (problems occur when too many users try to access the website at the same time, so this is important), give it a global reach (if we want to) and set up other tools that save us time such as pipelines.

 

Pipelines, when talking about The Cloud, are essentially a set of instructions that we can run automatically. For example, when releasing an application, we may need to run some tests to make sure everything works, optimise the storage space our code takes up and then finalise the release by sending it over to the remote server so it can be accessed on the internet. Each of these steps, and more, can be automated by creating a pipeline. Ensuring no step is forgotten or done incorrectly and time is saved in performing these repetitive tasks.

 

App Services

Web and mobile applications can use Azure App Services to take care of a lot of functionality. We often need a server that can receive requests from applications over the internet and return results, so we will develop the code to do this and use App Services to run it.

A lot of work can go into building an App Service, especially as we want it at a high standard in terms of performance, security and scalability. Azure’s set up for this is an incredibly quick and cost-effective solution. This helps us focus on the key features of the products we work on, not the server it is running on.

 

Virtual Machine

A virtual machine (VM) is just like a typical computer that has an operating system and needs storage, memory and processing power. The only real difference is that it is housed within the software of a typical computer and the resources it needs are allocated by its host. Azure’s network has many powerful computers that have been set up to run these virtual machines which are available to us to use as customers.

 

Many of the other services provided by Azure are specific to certain areas of the network and will be running on a virtual machine (or many). If we are using a Windows PC and want to test a program on a Linux, we can set up a virtual machine to do this. We will also use a virtual machine when we need a server to be fully customisable.

 

DevOps

A little different to the other services here, Azure DevOps is for managing small and large projects with varying team sizes. It is essentially a web application that provides tools for storing code, managing the tasks or features needed to complete a project, setting up pipelines (as mentioned above) and more.

 

Because a DevOps project can be used by different members of the team, it’s really useful for collaboration. Developers can share code, project managers can monitor progress and distribute tasks and those with access can see what everyone else is doing, something especially useful when factoring in remote working. Without this sort of organisation, issues with time management, efficiency and general communication will occur frequently, with the consequences very much being felt in the quality of the end product. Another issue is when the team or project grows. DevOps can be used to organise an increase in project features and help new members get up to speed with less reliance on other, busy members of the team.

 

 

Facial Recognition

One of the more exciting technologies found within Azure is the facial recognition service. Thanks to years of hard work, research and heavy funding, the ability to detect a person’s face is now something that is commonplace across a wide range of devices including phones and security networks. The sort of thing you would only see in movies a few years ago is now something that is accessible with the appropriate subscription, meaning we are now able to harness this technology and put it into our client’s applications as needed.

 

This service might be used to automatically blur faces in a photo, identify if a person is wearing a face mask or just to check if a person is who they say they are.

 

It’s great to have Azure hosting this service as they have powerful computers that can do these tasks far quicker than many of the devices in the general population. As mentioned before, when using Azure there are many security benefits that come with it and, since facial data is very personal, this is incredibly important here. The only drawbacks are that an internet connection is required and a cost is involved, though these may be considered to be minor since the technology is so advanced and the cost is a fraction of what it would be if we were to build this ourselves!

 

AI

Another of the more exciting technologies within Azure is their AI service. AI (Artificial Intelligence) is essentially where computers and programs are built to solve problems and make decisions, with advanced AI learning from mistakes and continued use – similarly to how we humans do, only thousands or even millions of times more quickly.

 

An example of this is with chatbots – AI-driven computers that can respond to messages typed by humans. Though they can be unreliable and frustrating at times, they are often able to figure out what the user is saying and respond which helps to reduce pressure on human helpers. Behind the scenes, the AI powering the chatbot will often be learning from how these interactions went, allowing them to improve this service over time. Other examples include non-playable video game characters, self-driving cars and virtual assistants such as Siri, Cortana or Google Assistant.

 

Though there are some incredibly complicated uses of AI that can open up a number of potential issues, being able adjust the responsibility of humans to work with AI can save businesses considerable costs, greatly improve service and even provide solutions to problems that never seemed possible (a great video here – https://youtu.be/aR5N2Jl8k14?t=188).

 

Similarly to facial recognition, Azure provides AI that is backed by their powerful and secure resources. It also provides computers that can run custom AI programs. These can be used in our apps to provide services such as predictive search, language translations, chatbots (as mentioned above) and many more.

 

 

Azure will continue to be one of the leaders in cloud services and providing infrastructure to businesses across the world so it’s important that we keep informed in order to continue releasing high-quality products.