Real-Time Gaming Blog

Connected Shared Experiences: A Developer’s Guide

6 min read Joe Hanson on Jul 12, 2019
Try PubNub Today

Free up to 1MM monthly messages. No credit card required.

Subscribe to our newsletter

By submitting this form, you are agreeing to our Terms and Conditions and Privacy Policy.

In an everyone online world with high expectations, there's a driving force transforming how we build software, and how humans interact with each other.

Unicorn, and more recently, decacorn. We’ve all heard the term – companies valued at $1 billion and $10 billion respectively. Looking at these companies over the last decade, there’s a driving force behind them causing them to expand at massive scale, and in a bigger picture, reshaping the way humans interact. And that driving force is delivering online experiences to connect people to each other and allow them to interact in real time.

In fact, if you group the unicorns together, you’ll find that connected experiences have created $194 billion in valuation over the last 5 years. Stepping back, they’ve been created to disrupt industries – and they do it by creating an online experience that transforms the way you used to do things. From multiplayer gaming to group chat to on-demand food delivery to business collaboration, real-time connected experience delivered through apps and products has become a core piece of our daily lives.

What’s Causing This Change?

There are three driving forces behind the rise of connected experiences, across every industry and vertical.

Three driving forces behind connected experiences

Online Everywhere

In 2018, there were 3.3 billion smartphones spread across the globe. The cost of a connected device (system on a chip with WiFi, cellular, and a CPU), has dropped from $20 in 2014 to $0.75 in 2018, and that price continues to drop. Internet connectivity has never been more affordable; for under $5, you get unlimited LTE in India, and the plan often times even comes with a free smartphone.

People are online, and they’re online everywhere. And that always-on, ubiquitous, and affordable connectivity, combined with a powerful smartphone, has led to a change in user expectations – the second driving force behind connected experiences.

User Expectations

The Hollywood Operating System. We grew up with Hollywood movies, and for a long time, the computing we saw in those films didn’t match the computing experiences we had in real life. We had old, clunky computers with slow Internet connections and we could email one another. Meanwhile, in movies, we saw blazing-fast location tracking, powerful AI, tiny yet robust devices, and immersive gaming environments.

But today, we’ve been trained to expect a computing experience to operate on par with Hollywood. Our mobile devices, laptops, and embedded, smart devices deliver those experiences we once saw as fiction. Take a look at the last two Mission Impossible films – all the cool things they do, they’re using iPads and Surface tablets. It’s no longer sci-fi, it’s real.

Users have come to expect reliable, secure, and blazing-fast connected experiences. For collaborative, multi-user, or data-intensive apps, users anticipate it to mimic a real-life interaction. The location of a taxi on a map should reflect where it actually is. When a reading changes on an IoT sensor, that data should be updated the moment it happens. No matter how many users are in a chatroom, when one user sends a message, it should reach the recipients immediately. In a connected world, nobody has time to wait.

So with people online everywhere, and their expectations incredibly high, how do we deliver on it?

Software Infrastructure

If software is eating the world, software infrastructure is digesting it. It’s software infrastructure that’s empowering us to build these connected experiences at scale. And it’s growing more secure, more reliable, and high-performant.

Let’s take a quick look back into how we got here.

When the Web took off in the mid-90s, we built billions of dollars of value around connecting, protecting and scaling the Web. It was built entirely around request/response applications. An end-user presses a button, data is sent to a server, the server responds. The infrastructure under the hood delivered solitary online experiences. This was the way we did things until around 2010.

Connected experiences don’t work this way. Request/response doesn’t satisfy the high user expectations for an always-online world. Devices are constantly emitting and consuming data. Location-streaming, chat messages, smart device readings, immersive games – it starts with an always-on connection and streams massive amounts of data across the globe. It’s critical that data is constantly streamed and consumed at all times.

Hence, a revolution in infrastructure is driving us from traditional request/response to streaming.

Real-time Revolution

There are 25 billion devices online today, not just smartphones and laptops, but IoT sensors, smart cars, servers, and wearables as well. In moving to a streaming infrastructure, we’re looking for a way to connect these devices, deliver data bidirectionally between them, and control them. That revolution is creating a ton of new technologies, and even more acronyms: MQTT, WebSockets, long polling, CoAP, XMPP, etc.

Unfortunately for us, with all these introductions comes confusion. You start with an acronym, and soon after you have a giant core infrastructure to build, manage, and you might only be solving the problem right now, not six months from now.

How to Not Build Connected Experiences

The appeal of black box vendors, ie., “we provide the best chat solution,” “we provide the best mapping solution,” “we provide the best dashboard solution,” is appealing at first. You start embedding black box solutions into your app, and you’ve got the functionality up-and-running quickly. Great!

How to not build connected experiences

However, the more black box services you add, the more dedicated connections you have. And that number can quickly grow. With that, there are a number of considerations that come with it:

  • Are the services compatible with one another?
  • Are they draining battery or consuming bandwidth at different rates.
  • Are you locked into that vendor?
  • Can you bring your data into your backend for analysis, processing, and storage?

Now you’ve got a mishmosh of technologies powering your app. But this is how it’s always been – we find new, better ways to build software. Remember how we used to build websites? It took almost a decade to determine the components we needed to build a scalable web app – LAMP, MySQL, Angular, React, etc. The same thing happened with mobile apps. And now we’re required to deliver scalable connected experiences. So what are the components?

Core Components of a Connected Experience

High-speed Messaging/Signaling

You need a low-cost, highly-reliable data delivery infrastructure that’s secure and compliant. It must be able to keep an open connection to any number of devices and send messages at high-speed back and forth. This lets you send things like:

    • Chat messages
    • Device control
    • Location data
    • Pricing updates
    • Dispatch requests
    • Trivia sync
    • Player movement

Computing ‘on-the-Fly’

On-the-fly computing saves precious time, bandwidth and resources for both the client and the server. The last thing you want to do is stick all that business logic deep in your severs, and definitely, don’t want to do do it with a black box solution. You want to be able to add business logic when and where you need to.

    • Chat moderation
    • Spam detection
    • Language translation
    • Business logic
    • Geofencing/geohashing
    • Alerts and notifications


Presence provides real-time state of a user at a given time, and recognizes when users are added or removed. It’s a lesser-known, but vital part of a connected experience. Presence powers real-time features like:

    • Users online
    • Device detection
    • Live leaderboards
    • Audience counters
    • Typing indicators
    • Battery detection

Cloud Gateways

The ability to hook in other best-in-class microservices and APIs provide both the flexibility in integrations and the potential for innovation beyond black box solutions.

    • Mobile push notifications
    • SMS
    • Transactional email
    • Analytics
    • Machine learning/AI
    • Mapping APIs

Looking Forward

This is the most scalable, most reliable, and most secure way to build the connected experiences of today and tomorrow. Rather than being locked into a number of black box solutions, it provides the freedom to build any type of real-time feature and combine best-in-class solutions.

It took 10 years to figure web. We just figured out mobile. And now we’re figuring out connected experiences. And these connected experiences are creating compelling opportunities for new types of businesses. Having completely turned industries like taxis, exercise equipment, and meal delivery on their heads, nobody knows what connected experiences will revolutionize next.

But one thing is clear: connected experiences are eating the world, and tomorrow’s business leaders will be the ones embracing them and powering past the competition.

To explore connected experiences more, including concepts and technologies, check out our CEO Todd Greene’s talk from RISE 2019 in Hong Kong:

More from PubNub

Top Trends to Engage Your App Users
InsightsSep 27, 20224 min read

Top Trends to Engage Your App Users

Take a look at the top trends that are the most effective in attracting customers and reducing churn, and how you can incorporate...

PubNub Staff

PubNub Staff

Comparing Game Engines: Unity vs Unreal vs the Rest
Real-Time Gaming BlogSep 21, 20225 min read

Comparing Game Engines: Unity vs Unreal vs the Rest

Comparing the major game engines: Unity vs Unreal Engine vs Corona SDK vs GameMaker Studio, including the benefits and cons of...

PubNub Staff

PubNub Staff

Python Socket Programming: Client, Server and Peer Libraries
BuildSep 21, 20226 min read

Python Socket Programming: Client, Server and Peer Libraries

Sockets (aka socket programming) enable programs to send and receive data, bi-directionally, at any given moment. This tutorial...

PubNub Staff

PubNub Staff