In its year-end list of top apps, games, and other entertainment sold on its App Store, Apple named Pokémon Go the breakout hit of the year. During its rapid rise (and fall), the game has been called many things, from social phenomena to nuisance. We can definitely call Pokémon Go a record breaking moneymaker, as at its peak it brought in over $2 million a day.
Now that we have had a chance to catch our collective breath from the craziness that was Pokémon Go, I want to dive into one aspect of the game that wasn’t much discussed during its heyday: Sever choices.
Niantic hasn’t said how it serves up its games, but rumor has it that the company is using Google’s cloud. If they are indeed using Google’s cloud, there must be a reason, considering that Amazon’s CTO seems prepared to guarantee that his company can prevent the outages. So, did Google offer Niantic a more attractive price package?
We’ll never know, but the takeaway for the rest of us is that companies need to undertake a thorough assessment of their current and anticipated needs and evaluate what services are available, before making a cloud deal. And price is not the only consideration. Before you commit to a service, cloud or otherwise, you had better figure out the resources that you need, who is offering those services, and decide on how you can get the best value on those services.
Value in this context means uninterrupted service, flexibility, availability of resources, and all other issues unique to individual companies that need to be taken into consideration. Like for Niantic, the bottom line for all of us is the bottom line: Where do you get the best value for money?
Cloud services: A practical primer
To find the right deal, businesses need to first review and assess the services that are available. But where to begin? For many people, “cloud” is indeed a cloudy concept that does not really describe its many functions. Companies need to carefully select what services will suit them, save money and improve control over their resources and business model.
Among the basic services are:
Infrastructure as a Service (IaaS): A company’s IT infrastructure including servers, printers, desktop computers, network equipment, software, licenses, and much more. IaaS allows companies to offload as much of this as it wants or needs to, with much of the heavy data processing and mass storage on the cloud site. One important benefit of this method of IT infrastructure management is the ability to expand infinitely. When more storage is needed, a company just contacts Amazon Web Services (AWS), Google Cloud, IBM Azure, or the others, and takes on more space.
Platform as a Service (PaaS): To create products, companies need tools, and PaaS provides them in a one-stop, one-price package. There are dozens of PaaS providers with their own little twist on available services. AWS, for example, supports languages like Java, Python, Ruby, Perl and others. Users can set up their own Oracle, MySQL, or SQL databases and manager them, or they can use Amazon’s RDS service, which lets users mix and match between six different databases (Amazon Aurora, Oracle, Microsoft SQL Server, PostgreSQL, MySQL and MariaDB), and leave the administration to AWS.
Other PaaS systems provided by companies like Microsoft, IBM, Rackspace, and others have their own special offerings and advantages: Microsoft’s Azure, for example, prides itself on its openness to hosting all operating systems, while IBM provides support for customers who want to take advantage of its Watson big data/artificial intelligence services. The choices are many, so researching who is offering what is key.
Software as a Service (SaaS): Almost everyone uses SaaS to some extent today, but offerings go way beyond Gmail and Google Docs. Free/low cost SMB/enterprise level tools that do just about everything–from file storage, to e-mail to web site creation, to sales administration–are available not only from third-party providers, but on AWS, Google Cloud, etc. The varieties and types of SaaS available are just too numerous to list, but this site includes a good list of some types and comparisons between brands.
Cloud tips: What to do
Assess and Evaluate: As I mentioned earlier, you need to identify your needs before you find the cloud service to match them. There are several ready-made assessments online, like this one, which asks companies to answer questions like, “According to employees and customers, our technology meets their expectations,” “Control of our IT (governance, data access, quality, security, identity, uptime, SLAs) meets our requirements internally and meets compliance standards,” “Our backup infrastructure meets security requirements and compliance according to the expectations of our industry,” etc. The questionnaire, in a spreadsheet format, evaluates the responses and makes recommendations about a company’s cloud readiness.
You’d Better Shop Around: If any, some, or many cloud services are needed, it’s time to start shopping around for them. Which is right? Obviously there are as many answers as there are companies, but to make sense of things, checking out comparison sites, like this one, this one, this one, and many others. Once users know what’s available and what they need, they’re ready to compare prices, at a comparison engine like this one. Stories of how others handled the cloud, like this company, are also plentiful.
Cloud be not Proud? Of course, there’s always the option of staying “local,” wherein a company eschews the cloud altogether. According to some, that’s become a cheaper option than using the cloud, at least for certain companies. But for most, the cloud probably makes the most sense: it’s scalable, and if a company stays on top of usage and fees, cloud deployment could end up saving a lot of money. However, when making decisions, always keep in mind the bottom line—saving money is important, but losing out on money you could be making, like at Niantic, is worse.
Cloud 2.0: The next generation
Containers are the next big wave in cloud, and part of their charm is that they will make cloud services cheaper. A step up from virtualization – which enables running different operating systems and software on single servers – containers allow access to multiple operating systems for applications at the same time.
Today virtualization is a key component of cloud computing that allows firms to charge their customers reasonable rates. Virtual machines (VM) in the cloud allow clients to seamlessly move development from local servers to cloud servers, enabling them to save money by working locally (for most services, the clock starts ticking when a client connects to a VM) and scale up when they need more space or resources.
Containers are the next layer of the atmosphere for cloud computing, after VMs. What VMs are to hardware, containers are to operating systems — a virtual environment that shares components and libraries, allowing for almost seamless switch between systems and software as needed. Containers reduce startup time. So, where a VM takes minutes to get going, a container takes seconds, saving time (i.e., money) and resources.
Even more useful will be multi-tenant infrastructures that allow many applications to share the same server instead of running a dedicated server for each application, as containers require. A system like this would chop costs by more than half, and make management even easier. Several enterprising start-ups are working on developing systems to allow providers to offer customers the ability to set up and run distributed applications (like Elasticsearch, MongoDB, Cassandra, etc.) These multi-tenant environments will make the user experience application-centric instead of machine-centric, and again, cheaper to run and easier to manage.
Whether you need cloud services or not, things are definitely looking up. Pokémon Go on the other hand, not so much.