In today’s T-Suite Podcast, we are celebrating a special occasion. The team at Nimbella, a fast-growing startup offering a serverless computing platform, has announced its latest product, Nimbella Commander for Slack. We also talk about the state of stateful applications in serverless platforms. There’s a lot to unpack here, so let’s get started.
If you follow this podcast, then you know I have a fascination with APIs and serverless computing. The latter, being the focus of today’s podcast. In previous conversations with other guests, we talked about the proliferation of serverless applications, which are essentially small bits of code functions (one might say APIs) that run independently of each other to perform specific tasks.
However, previous podcasts never really got into the challenges of implementing serverless architectures, with one of the most important being state. Whether you are a seasoned software engineer or someone that gets by clicking links on web pages, you know what state is.
A stateful application remembers who you are and presents relevant information based on that knowledge. If Amazon.com were not a stateful application, then you would log in, click on a product, and then have to login again to add the product to your cart. Without state, you would then click on your cart to log in again. And then, when you clicked the checkout button, login yet again. By the time you were ready to make the purchase, Amazon probably would not know what you wanted in the first place and once again force you to log in.
So state is important, and that is why serverless computing, and specifically small serverless functions that are not necessarily compiled into one big application, are still in their infancy. Nimbella is changing that with its stateful serverless platform that allows any developer to write small functions that can retain the user’s state. For example, imagine a stock trading app. As a developer, you might build one big software application that displays the stock you own, along with a chart of your earnings, and another chart with current tending stocks. In a serverless environment, an element on the page is a small function with its own code, one to display the chart, one with the trending stocks, and so on. Without state, an application would not know it is you and just dump all the stocks in the market onto one screen. Without state, each function cannot be run occasionally to provide you updates without developers writing lots of plumbing code to make sure it only sends the valid data based on your login.
The Nimbella team wants more people to create these stateful serverless applications, so they decided to build some apps themselves, the first of which is Nimbella Commander. Their platform allows technology-minded people with basic developer skills to create their own Slack commands. You can create an entire app or call APIs. For example, let’s say you are using Salesforce (your CRM), and you want to compare your regional sales data with revenue earned in SAP (your financial system). You can build that directly inside Slack using Nimbella Commander and then turn it into a command anyone can use. For example, you might be in Slack and type “/salesrevenuereport” and up pops the data. Even better, if you are chatting with a group of people, you can run that same command, so everyone sees the data at the same time. With that command in place, anyone can use it with no coding skills required. That is just one example, of course, but it is exciting, and it is helping to make a stateful serverless platform ubiquitous.