Our Insights

The latest insights and analysis from the Quad Team to help you innovate your enterprise cloud challenges.

SaaS, open source, and serverless - Time to wake up!

A winning combination to build and scale new businesses
Sep 2022

Speed and scalability are critical

When building new businesses, with the accelerating pace of change creating a winner-take-all dynamic in many markets. Most digital-first start-ups have rapidly gained a lasting competitive advantage by incorporating new technologies that enable them to innovate and scale quickly.

Specifically, a trifecta of technology approaches has emerged, providing a formidable arsenal for companies looking to launch new businesses more quickly, securely, and effectively at lower costs:

Software-as-a-Service (SaaS)

Software as a service (SaaS), which allows companies to consume all software services they need without having to create the software themselves

Serverless Architecture

Serverless architecture, which enables companies to focus on writing code rather than running it

Open-source Code

Open-source code, which gives businesses access to existing, free-to-use software libraries that can easily be integrated into a company’s own code

Each of these can offer significant benefits. But the real breakthrough is in combining all three, flexibly combining services (such as a login) from a third-party SaaS provider and integrating them with other third-party services (such as recruiting management services) and company-specific functions (such as salary calculations) in a fully serverless architecture. This tech fusion enables companies to radically simplify and accelerate the development process for both launching and scaling new businesses.

For companies looking to launch new businesses, the core principle of combining these approaches is to both maximize the value of what already exists and reduce the burdens of development and maintenance. Other benefits are also emerging. As companies develop greater expertise at using serverless and build up their architecture capabilities, they are able to take greater advantage of the cyberservices offered by cloud service providers (CSPs)—although they will always need to take practical steps to manage their individual risk.

Companies seeking to build new businesses, however, too often misunderstand the full extent of the benefits of SaaS, serverless, and open source, or they implement them ineffectively. In many cases, that’s because they believe their own legacy systems and approaches offer a more reliable foundation for launching a new business. Unfortunately, these companies soon learn that this approach not only brings with it the inefficiencies tied to legacy systems but also limits their ability to think ambitiously and creatively enough to architect the applications needed to completely enable the new business.

To make SaaS, serverless, and open source work for new businesses, incumbent companies must completely rethink their IT strategy, redesign processes, embed new approaches and mindsets, redesign security, and attract a new type of talent. The benefits of serverless in reduced time to market alone, for example, more than outweigh the challenges of making the transition. Leaders who can manage these five tasks in tandem will gain the organizational capabilities to better support business building and jump-start growth.

Next-gen APIs - Joining the dots!

Jun 2022

Choose an optimized model for your future-enabled platforms

The world has been a largely RESTful place over the last decade. But as we head decisively into the realms of Machine Learning models that power the application of complex AI subsystems and IoT edge devices, the exchange of consistent, malleable data across the networks becomes the nerve center for success.

The emergence of GraphQL over the last few years as a substitute to REST and the legacy SOAP has largely gone unnoticed apart from in some tech circles. GraphQL has a number of positives over today’s de-facto REST, including

Being language agnostics specification which you can implement in Python, Go, Node.js or even .Net/C#!

The ability to structure data as a vast array of nodes and edges which assists in mapping complex use cases.

Another feature that GraphQL offers that makes it special is Subscriptions which opens the door to asynchronous messaging.

GraphQL is very flexible in defining the structure of the data that’s returned when making a query against the API. Unlike REST, in which the caller has no control over the structure of the returned dataset, GraphQL allows you to define the structure of the returned data explicitly in the query itself. 

However, there are limitations here: GraphQL is powerful, but it’s not perfect. Synchronous and asynchronous activities are distinct. In fact, when you look under the covers, you’ll see that there are actually two servers in play in a typical GraphQL API. There’s the synchronous HTTP server and also an asynchronous subscription server. Is the separation a showstopper? Not really. But is there a technology that combines both synchronicity and asynchronicity seamlessly into a programming framework?

Which leads us to gRPC. This emerging format from Google is an implementation of the humble Remote Procedure Call (RPC). 

Like GraphQL, gRPC is a specification but unlike REST and GraphQL which use text-based data (i.e. bulky) formats, gRPC uses the Protocol Buffers binary (i.e. compact) format. The benefits of gRPC are important in a number of use cases:

  • Implement in a supported language of your choice
  • Protocol Buffers encodes data to binary format as the means of data exchange thereby increasing performance significantly over the bulky text-based data formats used by REST and GraphQL
  • It supports bidirectional, asynchronous data exchange. This is because gRPC is based on the HTTP/2 protocol which supports any number of requests and responses over a single connection. 
  • Returning data in streams is particularly beneficial when you’re working with time-sensitive data, such as autonomous vehicles or stock exchange activity. Also remember, streaming is bidirectional. 
  • Such bidirectional streaming capabilities that are provided by HTTP/2 allow gRPC to be used in situations where REST or GraphQL can’t even be considered.

However, there are certain constraints of gRPC too including

  • Using Protocol Buffers requires that both the client and server in a gRPC data exchange have access to the same schema definition which makes it ideal for inter-service data exchange on the backend. 
  • Version control becomes important. Under REST or GraphQL, you can add a new attribute(s) to a resource (REST) or type (GraphQL) without running much risk of breaking the existing code. However, making such additions in gRPC can have a detrimental impact. Thus, updates to the .proto file need to be carefully coordinated.
  • Another challenge is that HTTP/2 does not have universal support for public-facing client-server interactions on the Internet.  Therefore, gRPC is best suited to situations where developers control both client and server data exchange activities. Typically such boundaries exist on the backend. Hence, the prominence of gRPC as a backend technology.

With Quad, anyone can become Super-tech!


     Copyright © 2022 Quad