Anyone who's worked in technology has likely hit on the "build vs. buy" question at some point. Should you build your own custom solution to meet the exact requirements of your business? Or does it make more financial sense and save time if you use a third-party vendor?
Let's use an example. You are a tech lead at a company that delivers a platform for online learning. Your users are increasingly expecting realtime digital experiences as standard, and are asking for a chat feature for instant engagement between teachers and students, and a way to quiz lesson participants and display a leaderboard as their answers come in.
It puts your company in a scramble to add realtime use cases to its product line: you need to innovate quickly and get the features to market to defend revenue and generate new opportunities. You’ve been tasked with evaluating the technical side of a build or buy decision.
You’ve made a list of the questions you need to research if you decide to buy from a third-party vendor:
- What does the vendor offer that we cannot do for ourselves?
- Will their solution scale?
- How easy is it to integrate?
- Will it tie us to a particular technology?
- What about vendor lock-in?
- Who else is using it?
- How secure is it?
- How much will it cost?
- Why is this vendor less risky, more reliable and most likely to get us to market faster than its competitors?
You’ve evaluated a range of third-party vendors and decided to research one of the market leaders, Ably, to get answers to your questions.
What is Ably?
Ably is a platform for enterprise-ready edge messaging. With a cloud-based pub/sub messaging platform at its core, Ably underpins use cases that rely upon business-critical realtime data synchronization at global scale.
The Ably platform exists to make it easy to power and scale rich realtime digital experiences such as the following:
- Live updates and results
- GPS location tracking
- Multi-user virtual spaces
- Chat and notifications
- IoT device monitoring and control
- Live charts and dashboards
- Streaming data sources
TL;DR - Ably is a platform and supporting infrastructure for services that rely on realtime data.
Why wouldn't we build Ably ourselves?
The project management triangle ("Good, fast, cheap. Choose two") applies when you build your own. You can sidestep the triangle if you buy in from a third party and avoid developing technology that falls outside your core business knowledge.
But, you’re not sure, "Maybe we should build a solution from scratch? Couldn't we just use a WebSocket solution? Isn't there something available from one of the cloud providers (like AWS API Gateway + Lambda + SNS)?".
There’s no “just” in this discussion. It is complex and time-consuming to develop feature-complete technology for bidirectional, low-latency realtime digital synchronization. The up-front engineering costs and ongoing operational expenses will be significant.
There are several considerations such as:
- Performance: Poor latency and bandwidth concerns create uncertainty when designing, building, and scaling realtime features.
- Reliability: Designing, building, and operating your own globally-distributed fault-tolerant realtime infrastructure is complex and costly.
- Integrity: An event-driven architecture relies on a sequence of event messages. If these messages are lost or lose their order, you cannot deliver a seamless realtime digital experience. To guarantee the data integrity needed to ensure ordering and exactly-once semantics you’ll need to solve some genuinely complex engineering problems. And face some tradeoffs such as whether to sacrifice performance at scale.
- Scalability: Localized, 'good enough' infrastructure cannot scale or provide the elasticity that you need to meet global realtime requirements. Do you want the responsibility of complex and unwieldy infrastructure to deliver availability at scale?
That's what you have to look forward to if you set out to build your own realtime solution. But, if you buy a platform from a vendor like Ably, you can pass on responsibility for scale, latency, data integrity, and reliability.
Ably has fault-tolerant, highly-available, elastic global infrastructure for effortless scaling, and low complexity. Our platform is mathematically modeled around Four Pillars of Dependability. We can ensure that messages are reliably delivered at low latency over a secure, reliable, and highly available global edge network. And, there's zero DevOps overhead, so no infrastructure to provision or manage.
Justin Beriot, CTO of Urbantz, reports that the company saved "$100k+ in DevOps resources, and got to market 6 months faster" by using Ably.
TL;DR - If you build your own basic realtime capabilities, you could spend several months and a heap of money. And you'd end up burdened with the high cost of infrastructure ownership, technical debt, and ongoing demands for engineering investment.
Will Ably scale with us?
Under load, achieving availability and elasticity isn’t just traditional mechanics like failover, it’s about managing capacity. We provide a highly elastic, fault-tolerant infrastructure and a global edge network. Ably is engineered to deliver predictable performance at scale and is distributed across 15+ core routing datacenters and 205+ Edge Acceleration PoPs.
Since its inception, Ably has guaranteed the delivery of more than six trillion messages. Every day, we deliver billions of realtime messages to millions of users for thousands of companies. We are on track to power realtime digital experiences for one billion devices per month by 2023.
TL;DR - Ably is all about scale. We deliver 550bn+ messages to over 250 million devices across 80 countries each month.
How easy is it to integrate Ably?
Ably is a plug-and-play serverless platform with baked-in support for plugins and integrations for the cloud services you already use. There's a suite of managed integrations so you can build event-driven applications using your existing stack.
You can access Ably using a range of APIs. With 25+ SDKs and native support for more than six realtime protocols, getting started for any use case is fast and straightforward on any major platform across web, mobile, and IoT.
When you start using Ably, we partner with you long-term and provide support to make sure you know we have your back. We live up to promises and stick around to help.
Who else is using Ably?
Organizations of all sizes trust Ably to power synchronized digital experiences in realtime. Ably has customers in fields as diverse as:
- Automotive, Logistics & Mobility
- B2B Platforms
- eCommerce & Retail
- IoT & Connected Devices
- Sports, Media, & Audience Engagement
How secure is Ably? What about data compliance?
By default, all our client libraries use 2048 bit encryption with TLS to secure messages sent to and received from Ably. All data within the same datacenter in Ably moves around un-encrypted as it cannot be intercepted, but is always encrypted when it moves between datacenters. Ably also offers optional 256-bit AES symmetric encryption, making it impossible for Ably to inspect any data payloads moving through the system. We describe our approach to security and compliance and how we protect against denial of service attacks on our security and compliance page.
Ably is EU GDPR compliant and has a BAA agreement for an organization that needs HIPAA compliance. We have a detailed page about data protection and welcome any queries about it or related topics.
We participate in regular SOC 2 Type 2 audits of Ably’s Real-time API and Data Stream Network Services System to assess the suitability of the design of controls.
How much will it cost?
Ably is cost-effective with pay-for-what-you-use billing to keep your costs lower. Compare our self-service, business, and enterprise pricing packages side by side.
Our free plan includes 3 million messages per month and up to 100 peak connections and channels if you're curious and want to get started.
There's also the consideration of the money you save by not committing to build the solution for yourself. Ably helped Split Software slash their cloud bills by 75%.
Another of Ably's customers explains, "With the Ably solution, we were able to reduce our server costs by 10% and our admin cost to almost zero. Prototyping new features requiring communications was reduced too: the development person-hours dropped by 20%.".
Why is Ably better than its competitors?
We have a set of pages that compare Ably and its competitors; these tables should help you evaluate how we stack up against other solutions.
If you’re taking the decision to build or buy, and which third-party vendor to use, you need to answer a series of questions to make an informed decision. We’ve run through the common considerations above; you can reuse these across a range of technology decisions.
It’s sometimes said that, “the best code is … the code you don’t write”. The Ably platform abstracts the worry of managing scale, latency, data durability, integrity and storage, seamless connection recovery, device interoperability, network outages, encryption, security and authentication, throttling, and denial of service attacks, to name a few.