Pulumi CEO and co-founder Joe Duffy and his team could have created a new programming language to help developers deploy their applications to multicloud environments — but they did not.
“The tech nerd in me would love to go creating a new language,” Duffy, who was previously a long-time Microsoft software engineer and tool developer, said during a live interview with TNS founder and Editor-in-Chief Alex Williams, for this latest edition of The New Stack Makers podcast. “I’ve done that a few times before, but it didn’t seem appropriate.”
Instead, the Pulumi cloud native development platform allows developers to use the programming language of their choice for containers, Lambdas and infrastructure on the cloud.
Wednesday, the company released its Cloud Native SDK for Kubernetes, which enables Kubernetes resource configuration using common programming languages. Kubernetes already has easily readable YAML files which can be stored alongside code in Git to describe the state of the system you want to achieve. But YAML isn’t as easily accessible to developers. Pulumi is taking Kubernetes’ declarative model to the next level offering “configuration-as-code” more comfortably to developers, while also continuing to support the existing Helm and YAML-based configuration.
“We figured out a way where you can just write some code in your favorite language and that was sort of a major breakthrough,” Duffy said. “[It was] the initial line in the sand that we drew when we said, ‘we are going to just embrace languages that people know … and make them work.’ I think, for now, existing languages are doing just fine.”
One of the stand-out benefits in the industry today is reflected in a developer-driven era of computing with an emphasis on application-oriented environments. While DevOps has existed for a few years, the “Dev” component in the equation has often been neglected in favor of “Ops” teams as organizations offloaded many of their development tasks to virtualized tools and environments.
“I think we’re starting to see what the last mile looks like where ‘Ops’ is becoming more ‘Dev’ and now ‘Dev’ is becoming more Ops, right?” Duffy said.
In today’s development-oriented context, Kubernetes has emerged as this “missing kernel object model of the cloud,” Duffy said.
“Kubernetes is something that a lot more application developers were thinking about and it’s because of its parallels with operating systems,” Duffy said. “Again, it’s probably because of my background working on the Windows team and it’s part of my time at Microsoft.”
Before the emergence of Kubernetes, developers often lacked the bandwidth to manage the inner workings of how cloud orchestrators, schedulers and other cloud-related functions worked, Duffy said. “The container really is a unit of granularity that makes sense for a developer building a modern distributed application. And frankly, the other shift that’s happening is every application these days is a cloud application and that means every application is a distributed application,” Duffy said. “The number of client-side, client-only applications being built are things like tools, but actual applications that end users use are almost all cloud applications these days so that has also then a big change over the last decade.”
Pulumi developers remain active in adding power to the platform. Recently, for example, the firm introduced new parallelism features to the mix. “It’s an interesting point when you look at the Infrastructure as Code (IaC), space which is essentially what Pulumi is. We’re saying it’s cloud made of IaC,” Duffy said. “It’s a uniquely different problem space than designing an ordinary language or execution environment because with IaC, you actually want to be able to do versioning of your cloud resources. You want to be able to say, ‘Hey, I’ve got these pods and containers or databases or network structures.’”
While Pulumi offers a Software as a Service (SaaS) product for on-premises and multi-cloud applications, the company’s namesake platform is free and open source. “Everything is packaged so it’s really easy to build your own stuff and share with the ecosystem,” Duffy said. “We have a SaaS product that over time will evolve into more server enterprise offerings, but right now it’s free to use. And so, yeah, just walk up, download it and give it a try.”
In This Edition:
3:19: Based upon your experience in being one of the first engineers working on the .NET platform, what is the approach you’re taking with Pulumi? What’s missing out there to close the gap and help resolve issues for cloud native developers?
8:13: How did you approach developing the Pulumi service?
14:06: Exploring parallelism and the capabilities of Pulumi.
17:29: How Pulumi is using serverless frameworks such as Azure and Google Cloud Platform.
21:40: What are your thoughts on front end and back end technologies and workflows in a larger context?
26:49: Tell us more about policy. How is it distinctive in Pulumi?
Feature image via Pixabay.