Categories
Platforms

Game On! AR vs VR

Here at /Data we offer certainty to those that are speculating about software developers: who they are, what they are choosing to do with at work and with their hobby time, and how they are doing it.  We consider ourselves the analysts of the developer economy and often say that we help the world to understand developers…and developers to understand their world.  ARVR

google-cardboard

“Google Cardboard 3d, 360 degree video viewer” by mr.racy is licensed under CC BY 2.0

Two of the areas that we are often asked about by big businesses with skin in the game are Augmented Reality (AR) and Virtual Reality (VR). Part of my job is to brief top tier organisations on what the developer audience is focussed upon so the companies can make the best decisions. I don’t speculate — I’m not brave enough for that.  Instead, like every analyst at the company, I use our data to find trends and outliers in this emerging sector.

How do we get the data? We ask the people at the coal face, the developers. We do this twice a year through one of the largest and broadest surveys in the developer calendar. We have a set of questions about AR/VR which we update regularly to find out how the latest frameworks and hardware are faring, and which programming languages are most popular. We can tie the data back to the types of apps that developers are creating, whether they work professionally or as hobbyists, and where they are based, among other things. We write reports after analysing the data, which you can find here. The AR/VR reports are in the “Emerging” category.

In the rest of this blog post, I’m going to share a few key facts that we gathered in a recent wave of our survey (Q2 2018). We currently have another survey running and would love to include your opinions; if you share them with us, there’s the chance to win some awesome prizes. Interested? Take the survey. 

ARVR development is immature

OK, that probably came out wrong! AR/VR development is still not a mature area in that it’s hardly established in the same way as desktop or web development. We generally use the more polite term “nascent” to describe an area where most of the developers working in it are hobbyists, though often professionals in other sectors, or students. In nascent areas, we find most developers are simply trying out ideas to find out more about the basics of the technology and work out where to go with it. 

ARVR development is increasing in popularity, with over 20% of our survey respondents saying they had worked on such a project in the past 12 months. Given our estimates of the total worldwide developer population, that gives a global population of AR/VR developers of over 5M.

We see a high number of young, inexperienced developers in this area, which is another sign of a sector that hasn’t yet settled down sufficiently for businesses to build a stable ecosystem of professional developers within it. It’s a sign of churn, where developers try the technology and move on. Most AR/VR apps are developed within the games category and, where they are not, their developers are still uncertain of their audience. Among AR/VR developers, almost 2 out of 3 are not so much bothered about making revenue from their efforts, but are simply interested in gaining experience. 

Virtual reality

Hardware moves rapidly in this sector, and we find ourselves updating our question set for each survey as acquisitions and closures affect the vendor marketplace.

When it comes to VR, developers are clearly keen on sexy dedicated hardware such as Oculus. But our data reveals that the same number of VR developers work with the cheaper, smartphone-based option Google Cardboard. The hardware created by a range of third party device manufacturers, incorporating the Windows 10 Mixed Reality platform (which can also be used for VR) is also highly popular with VR developers. 

ARVR Graph

 

Augmented Reality

AR is a very different beast to VR. It’s well-suited for a smartphone platform, most famously made popular by Pokémon Go. Huge investments by Apple and Google are paying off. They are keen to get you developing on their platforms because of the massive potential within the app stores (again, see Pokémon Go for an example).

ARCore on Android and ARKit on iOS are the platforms of choice for AR development by some margin. The most popular wearable for AR is Microsoft HoloLens, as Magic Leap had yet to be launched at the time of the survey. It will be interesting to see how things have changed now that device is out of the closet. So, if you’re working on this newest of hardware, tell us about it in the survey!

AR is the simple, more accessible end of the spectrum for developers. The spectrum crosses from more sophisticated mixed reality up to full-blown virtual reality. Developers are finding that AR is a good place to start, particularly during this period where underlying technology and hardware undergoes rapid evolution and pricing levels for consumers start to wobble. Starting with AR, developers can learn how to blend virtual elements ever more seamlessly into the real world, and take their experience later into the convergence zone as virtual reality becomes a more realistic proposition for users and developers alike. It’s the gateway for many, and we are seeing more growth in AR than VR for this reason.

https://youtu.be/r87hy0bdUh8?t=85

 

What about working cross platform?

Fragmentation is real, and being able to deploy across a range of hardware is always attractive. If you’re a game developer, and even if you are not, Unity and Unreal provide sophisticated cross platform development and tools that include ARVR. They do come with a steep learning curve so we find them mostly popular with those already initiated (e.g. game devs). Other platforms such as Lens Studio, Spark AR and Sumerian are empowering AR developers, and we want to find out how popular they are becoming in the developer community. 

To get this kind of useful information, and more, we need you in the survey this time around!  We want to know what languages you are using, the hardware, the platforms, and the apps you are creating. Has the new Oculus Quest has piqued your interest and restarted the heart of VR development? Or is AR and mixed reality where it’s at? Why not take the chance to tell us? Help us tell the teams behind these products what you are deciding, so they can do their best to support you. 

Have your say. Take the survey. 

Categories
Platforms

Choosing the right Containers-as-a-Service (CaaS) – or not

The emergence of cloud native development and containers has redefined how software is developed. But not all organizations have the resources or expertise to set up the required infrastructure to support a containerized application. Luckily, cloud vendors offer Containers-as-a-Service to help developers to capitalize on the benefits of cloud native development. 

All three leading cloud providers have CaaS products but choosing the right one can be a challenge. While everyone has different requirements, it is always beneficial to understand what solutions others are using and why, to help inform decisions. 

Based on research from /Data’s recent Developer Economics survey, we have discovered that there are a few factors that drive developers to choose one CaaS over another: 

  • familiarity with tools and languages
  • integration with other systems
  • support and documentation 
  • ease and speed of development. 

While there were other reasons for developers to consider when adopting a platform, the percentage of developers that considered these four factors important is noticeably different across the three leaders. Some of the other sixteen factors that are tracked in the research  include:

  • pricing
  • community
  • learning curve
  • suitability and feature set
  • performance 
  • scalability

graph-Reasons-for

Not all CaaS platforms are selected for the same reasons though. Developers that chose AWS Elastic Container Service were more likely to choose it because of its integration with other systems. This is a reason to choose AWS ECS for 34% of developers using it, compared to 29% and 28% for Azure and Google. Amazon not only has a vast array of tools and services, they also have a robust partner network. The options are so great they have their own service marketplace and have even released a Cloud Map service to help developers discover and manage it all. 

Developers tend to favor Google Container Engine (GCE) because it is easy to use and well documented. Forty five percent of GCE developers chose it in part because of the support and documentation and 36% because of ease and speed of development. We tend to find that developers are consistently happy with the support and documentation that Google provides to their developer community. This satisfaction is an important reason for Google Container Engine users to choose the platform. 

For Azure Container Service, developers like the fact that they can use the tools and languages that they are familiar with. Azure developers are 7 and 12 percentage points more likely to choose Azure Container Service for this reason than Amazon and Google respectively. Our research shows that Microsoft developers are relatively brand loyal so Azure has made it easy for developers to use Microsoft tools for container development and management. Azure has enabled developers to develop using Docker containers and Visual Studio, tools to deploy code to Azure Container Service with a simple command. They have also made it possible to deploy Docker containers to Windows Servers. Finally integration with Active Directory enables loyal Microsoft developers to use existing authentication policies and technologies .

At the end of the day, most developers are looking for a platform that is easy to use and fits with their current strategy and infrastructure, whether it is though integrations, support, or the ability to use the tools that they are comfortable with. 

Containers: Is it really a choice of either or?

While each solution has unique benefits, our analysis also found that many developers were using more than one leading CaaS and in some cases three. Seven percent of developers using a CaaS were using all three of the leading platforms while 46% were using two.

graph-developers-use

Our data verifies what you may already suspect based on your own experiences: more than half of backend developers are pursuing a multi cloud strategy, choosing not to commit to a single provider. 

There are a number of benefits to a multi-cloud solution that are driving this trend. IT organizations can avoid vendor lockin if teams develop for a multi cloud environment. This approach forces developers to build without relying on vendor specific services, reducing switching costs. Multi-cloud approaches also enables organizations to optimize their infrastructure. Developers and operations pro’s can leverage the strengths of each cloud depending on the requirements of various workloads and applications. Greater resilience is also a key benefit to consider. This is especially important in denial of service attacks where compute resources can be overwhelmed with fake requests. With a backup cloud ready and waiting, workloads can just shift to the backup cloud.

The choice of either one CaaS or the other will become even less relevant in the future as leading vendors are all standardizing on Kubernetes. Amazon and Azure are promoting Kubenetes-specific CaaS offerings to focus more on Kubernetes as the underlying orchestration engine. Azure is actually migrating all its users to the Kubernetes service. With Kubernetes the standard orchestration engine, migrating apps and container across cloud providers becomes much easier.

We are also seeing Amazon and Azure working to make it more convenient to develop using containers and Kubernetes. Both firms are offering clusterless or serverless Kubernetes services such as Fargate from AWS and Azure Container Instance. These solutions enable developers to just deploy containers without having to worry about servers or clusters. This approach will make it easier for developers but the additional level of abstraction also reduces flexibility and increases switching costs. 

Amazon’s open sourcing of Firecracker, the micro VM that supports the serverless platform Lambda and Fargate, will be another interesting development to watch. This may prove to be Amazon’s response to Kubernetes but for the serverless market. While still a ways off this could lead to a serverless ecosystem that is just as flexible as the container landscape.

What do you think?

Do you feel strongly about the container solution you are using? 

Or perhaps you feel poorly about certain other containers. 

Let us know about it and have your voice heard by taking the Developer Economics survey.