Matthew Prince & RedMonk's James Governor Talk Serverless
Presented by: Matthew Prince, James Governor
Originally aired on July 27, 2020 @ 12:30 PM - 1:00 PM EDT
A special conversation to kick-off Serverless Week with James Governor , Analyst & co-founder of RedMonk, and Matthew Prince , co-founder and CEO of Cloudflare.
English
Serverless
Cloudflare Workers
Transcript (Beta)
James, thanks for joining. You're in London, right? Yes, I am. I'm in strangely sunny London.
We're having a lot of good weather, and yeah, it's been pretty good. The kids seem to be taking up skateboarding.
That's new for them. Well, it's Serverless Week at Cloudflare, and we're all this week talking about the idea of serverless computing platforms and some of the things that we're thinking about.
And when we were thinking about who do we really respect and admire, I mean, I think you and the whole team at Redmonk have just had such a good view on what drives developers.
What are you excited about in the serverless space, or what are some of the trends that you're seeing?
Yeah, I mean, well, I think there are lots of dimensions to what's going on.
And so one is just that economic story that, frankly, if we think about what businesses are trying to achieve with software developers, that sort of alignment between the business and software developers is all about freeing up developers, getting them closer to the problem.
It's not, I'm sending something away to a dev team offshore or something.
It's like we have to hire people.
We need to be competing on that basis. And so then if you're investing in software developers, what should they be doing?
And sort of the serverless economy and the notion that developers can be highly productive.
And I mean, frankly, if we think about the set of things that developers should be focusing on, generally, they should be focusing on building the minimum viable product or working to improve and scale that product.
So I think that that's really one of the keys is just seeing the rapidity with which effective teams are building applications is just something that Redmonk's always going to be interested in.
I guess one of the other things is just these very different constituencies because I can look at, you know, very elite hipster devs that, you know, are definitely we're going to do the latest and greatest amazing thing.
And they're all over serverless.
I can also look at very traditional enterprises that are saying to themselves, you know, for those teams that they're not, you know, all going hog wild with Kubernetes or something, you know, how do we make them productive?
And it seems like that serverless is a really good answer for them.
So I think any time you see in a market the really advanced folks and more traditional organizations both focusing on an approach to software development, that's super interesting.
Yeah, it seems, I mean, as I've thought about, you know, these trends, it seems like what we're all compressing is sort of the time to deployment of active code.
I remember when, you know, and I was a network administrator back in college and we were like, we want to have a new, you know, this new web server.
That's because there's this new web thing that we wanted to support.
And like the time was you had to go and, you know, call gateway. I remember gateway was one of our server vendors and they would send you a server and would take months for that to come in.
And then you would plug it in and network it and then configure it.
And then, you know, maybe six months later, you have a web server that was stood up, you know, fast forward to the world of, you know, the AWSs of the world.
And now you can stand that up significantly faster, but you still have to have a team that's managing, whether it's the VMs or the containers and being a part of that.
I think that what's been amazing about, you know, the serverless platforms that are coming out is that that just time to development has gotten so much shorter.
And as a result, just so much less overhead that you have to have around the entire organization.
And that, you know, ease of use is the killer feature for any developer that's out there.
Yeah, absolutely.
Convenience. I mean, convenience is the killer app, I think is one of the ways that I've said the same thing.
It's, yeah, if you can make things easy for people, because frankly, you know, developers are a scarce resource.
There's so much competition for talent and, you know, you do want them to be able to focus on, yeah, building the application and feeling, you know, feeling enabled to just get on with things.
As you say, we don't live in a world of having to ask for permission, you know, anymore.
Yeah, it's, you know, it's been interesting when we, so we launched Workers, which is the Cloudflare serverless platform, almost exactly three years ago.
And I think when we launched it, we really thought the killer feature of it was speed and that like being at the edge and being an edge computing platform, that speed was the, you know, was the real killer feature.
And I think what I've come to realize over the last three years is that we actually kind of had the sort of Maslow's hierarchy of developers needs reversed.
There's a reason why in computer science classes, they tell you that premature optimization is the root of all kind of programming evil.
And that's kind of, that's speed and speed's awesome.
And we love speed, but there are things that are so much more important.
I think below speed is cost, which is more important than speed.
Below that is ease of use, which is more important than cost. And below that, especially in real organizations that, you know, aren't just an individual developer hacking away, but, you know, a financial institution or otherwise that, you know, the compliance and regulatory requirements, it doesn't matter what you want to use.
If your general counsel comes in and says, under no circumstance, are you using that platform that feels like that's the lower cost.
And I think once we kind of reconceptualized how developers think about the world, I think that's actually helped us make workers into a much, much richer platform over the last three years.
I mean, A, I can't believe it's already three years, even in a fast moving industry.
Yeah. Okay. It's blown us away how much it's taken off.
Yeah, no, I mean, I think that's one of the things that we always just find very interesting at RedMonk.
I mean, there are some technologies that when they do hit that point and they grow explosively and find new users, it is interesting.
And I guess, you know, certainly from a Cloudflare perspective, yeah, you're touching developers that you weren't before.
And that, I mean, that has to be pretty exciting, right?
Yeah. I mean, it's been incredibly rewarding and I think we've learned a lot.
You know, one of the things that we did internally that I think has helped us is, because, again, if you don't have a platform that is easy to use and gives the tooling that you need, then it doesn't work.
And what we were finding early on was we sort of released it to the world and developers would try it a little bit, but they wouldn't have the tooling.
And then they just sort of go away.
The real switch for us was when we started to implement what we've sort of referred to as the Bezos rule, which is that all the new features at Cloudflare needed to be built on the workers' platform.
So if you look at Cloudflare for Teams, it's all workers that's sitting underneath.
That was the first half of the rule.
And then the second half of the rule was every API or every tool that we build for ourselves, we're now going to expose to third parties.
And as a result, like, the one thing that our own developers couldn't do is they couldn't just sort of ghost us, right?
And so they would say, guys, this isn't good enough yet.
And I think that that's allowed us to really quickly innovate.
And it's why the tooling is so much better than it was, you know, when we launched just three years ago.
I mean, those are good rules, basically. They've certainly served Amazon pretty well.
I think that the principle of, you know, things will be exposed is a really good one.
Yeah. I mean, it would be expected that you would be moving quickly.
But yeah, there's a lot of engineering to be done.
And yeah, this is what we're talking about. You know, doing serverless should be about building the product, shipping more product, getting more done.
And that's true for, you know, as I say, whether it's enterprises, startups or the people building the platforms themselves.
So I've always admired you and your partners at RedMonk in terms of your ability to sort of see the world of developers in a great way.
If we're having this conversation three years from now, what are going to be the real trends in this space that drive, you know, the next three years of serverless platforms and of developers' experiences?
Yeah, that's a great question.
I mean, I think that there are, I mean, some of it we already know. So the importance of observability and what does that mean?
So the amount of rich contextual information that can be provided to a developer to enable them to troubleshoot things because they're going to be debugging in production.
I think that movement is super interesting.
We're going to see a lot more work. And obviously from a platform company perspective, that's super important.
Like, you know, what are you doing in terms of collaborations with folks like Datadog?
And how does that work out?
But I think for me, I'm really interested in just this transition up the stack.
So what does the world look like in three years? I think it looks like higher level services.
You know, we continue to be moving up the stack.
You know, hopefully in three years, we're not going to be, you know, having all of these enterprises just having this big conversation about, like, Kubernetes, the chief Kubernetes officer, with these, you know, vast platform build outs without really thinking about what are the apps that they're building and how can they be more productive?
So I think that the moving up the stack to managed services, and obviously, you know, serverless managed services is, you know, managed services at scale to zero.
That's my colleague, Rachel's definition of serverless, I think is a good one.
But I mean, we've got to start thinking about state.
So how do we have these sort of serverless model with more state? How do we have the serverless model where we're able to really start composing and saying I'm going to use Stripe for payments.
I'm going to be using Algolia. You know, I'm going to be using Auth0 for authentication.
We're really in a world of composed services.
And I think that's in three years, we will be seeing more of this composition world.
A guy called Mark Hinkle at TriggerMesh suggested calling it SmokeStack.
So it's not quite Jamstack. It's not as platform specific as that. But the idea is that it's serviceful.
You know, you're choosing these best services for the job.
Mashable, open, composable, but he comes from the Kubernetes world. So the C is obviously a K.
And then event driven. I think that event driven issue is so important.
So I think that's a really sort of nice way of thinking about it. But then I was talking to FaunaDB.
They're doing some interesting work in and around serverless as well this week.
And they're talking about client serverless. And for me, that just resonated because it is that, hang on a second, we are talking about a world of two tier.
And we had client server back in the day. And we're moving back to some similarities of patterns.
So I think in three years, I'm expecting to see the client serverless model much more widely used by developers.
Do you think as you move to that model is, you know, I think one of the things that we really believe is that serverless also has to be distributed.
That the idea of picking an availability zone and running your tasks there, I mean, that seems, I think in three years, that's going to seem incredibly antiquated.
Does that resonate to you?
Or do you think that people are going to be, you know, still very much in what is kind of the Amazon model of today?
I think the distribution is a very natural phenomenon.
And I think when networks, I mean, one interesting thing I think is that as networks centralized, they also decentralized.
So it's easy to think, oh, the Internet is centralizing into these core cloud platforms.
But at the same time, it is also becoming more distributed.
We sort of see this in the life of cities.
If you look at like, oh, everybody needs to be in London to do a startup and then suddenly Brighton becomes a more attractive place because it's near enough to London.
And you, you, you build that out. We're seeing in the States, you know, how far could San Francisco really go?
And, you know, talking to Jason Warner from GitHub the other day, and he's like, he's in Ohio now.
Why not have clusters there?
So I think networks centralized and decentralized at the same time. The only, the only question to me, I think, architecturally speaking, is absolutely the, the, the, the, there is that, that distributedness that needs to be addressed.
But, but I think, you know, if we think about convenience and compliance, certainly geopolitics doesn't seem to be becoming any less fraught, shall we say.
So, you know, they're all going to be some issues about, about managing that are to do with, you know, frankly, politics.
It turns out that the world is not flat. It's pretty damn bumpy.
It's pretty hot. And there's a lot going on geopolitically. And so data sovereignty and compliance will I think continue to be super important.
So I'm not sure what you're working on in that regard so that the, the customer has, has some control because they may demand it.
Yeah. I mean, I, so I think that it's actually that compliance aspect that is the killer app for edge computing.
Everyone's thought of speed.
Speed's a nice to have. Compliance is a must have you, you can't break the law.
And, you know, I think that as we see more countries around the world, you know, India is making a big push around this.
Germany is starting to make a big push around this to say that our citizens data has to stay in country and the processing of that data has to happen in country.
Like in order to do that, you have to have a network that is in every country.
And so the fact that, you know, a couple of weeks ago, we announced that we're now in a hundred more than a hundred countries around the world, I think actually gives us that framework.
And what I would imagine you'll see us really build out over the next three years is that tooling to say, if you're a big financial institution and you have, and you, and you are global, but you need to in each country have, you know, data sovereignty stay there, that that's a real opportunity to do that without it having to be, you know, 50 different contracts from 50 different providers and just the incredible headache from it for a developer that that inherently would create.
Oh, well, if you can help with that, that will be very good.
Cause yes, that is not, that stuff is not fun. You know, it's not sexy, but it's, but it's, it's what drives the world.
And, you know, I, I, I think that for a long time, I think a lot of us thought that, you know, the Internet was just this one, one big thing and national borders didn't, didn't matter as much.
I think that's a, that's, that's just becoming radically clear that that's a naive way of looking at the world.
And, and we're, we unfortunately are going to have to deal with that on a, on a country by country basis.
And I think we see a big part of our role as being, how do we make sure that, you know, it's not just the Facebooks and the Googles that can, that can live in a world like that.
How can we still make it at an individual developer can come up with an idea service, a global market, but still make sure that they are, they're compliant.
And, and that, that to me feels like the, the killer app of, of you know, serverless edge computing.
So, well, I mean, it's interesting you say that, cause if we think about the serverless economy and the ability to, I mean, so one of the questions is, you know, and then, you know, this is, this is not an original idea, but you know, when are we going to have the first, you know, single engineer billion dollar startup?
And, and, you know, I mean, if we look at some of the exits, I mean, you know, WhatsApp, you know, it's a small team.
If you, if you divide by their employees, you get to about, about exactly that number.
So. So, you know, somebody is going to do it and, and, you know, it's likely they're going to be serving multiple markets and that being the case.
Yeah. You know, the, the, the, it could be that that those sorts of functions are indeed extremely important.
So if you were, if you were giving our product team advice, from the perspective of developers, how would you, and, and, and they're, and they're working on, on, on our platform, what would be some of the things that you would say, gosh, these are some of the areas that, that, that you should really be focusing on.
Cause this is what, this is what we're hearing developers really care about right now.
I think it's, it's really, it's, it's got to be about developer experience.
So just absolute sort of maniacal focus on developer experience, convenience, making things easier, you know, for the developers.
I mean, let's face it. We live in a world where, you know, for a lot of folks, AWS is going to be somewhat of a default choice.
They grew up with it, you know, they, they know it. So you've got to be, you, you know, one of the things that Amazon doesn't always do well is that developer experience.
I think, you know, their serverless team is making huge progress.
It's one of the best in the company. How do we just really focus on, I think the, the, the, you know, the battle will be sort of lost or won on the basis of convenience and just being right there when the developer is building the app and just making things feel good for them and, and becoming in fact, a default option in your own right.
Yeah. I think that's, I think that's right. I mean, one of the things that we're thinking about is, you know, we have so much of the code that are the includes for a developer already sitting on the machines and in the facilities that can we make it, you know, not only give the, you know, the debugging tooling, which I think is, is, has gotten so much richer and that both the CLI and the, and, and the, and the, the GUI experience have gotten so much richer, but can we make it so that some of those things that are just real hassles for writing code, where you've got to go figure out all of these dependencies and, and pull it all together.
Can we make that just as simple as, if you deploy it on workers, we'll go figure that all out for you and make that that easier.
And it's why, you know, having someone like NPM is a, as a, as a customer that is on us and having a lot of the different libraries that people are using that they're, they're already sitting on the same machine.
So how can we make that, that it's just one simple experience where you hit build and it, and it just, and it, or just deploy and, you know, five seconds later, it's, it's live around the rest of the world.
Yeah. I mean, I think that performance thing is definitely a huge deal, but I guess it's, it's serverless week and, you know, maybe we should talk about programming languages and meeting where they are.
So, And we were, and we were talking before that you're about to release the next study of, of what developers are using as a language.
And it was fortuitous to us because this week, you know, we announced that, that workers now supports Python.
So how, how's, how's Python?
What, what is, what's sort of the state of languages? What are people developing in, in these days and how's it changing?
Okay. Well, it turns out there is a changing of the guard.
Yeah. So Python is, is now according to our methodology and obviously it has its, its, its strengths and its limitations.
I'd advise you to, you know, go and go and check it out on, on redmond.com.
You know, the programming language rankings, Python is, is a solid number two now.
So it's a very good platform choice for you in terms of supporting it.
What's driving the change.
Is that, is that a, is that a rise of Python or a fall of Java or what, what is it?
That's what is it that's, that's, that's driving that? Well, I mean, I think there's some of both, you know, cause frankly, we could point to TypeScript sort of variant of, of, of JavaScript and TypeScript is absolutely crushing it as well.
I mean, you know, we're sort of tracking that, that in its own right is, is becoming a thing, you know, obviously, you know, it's tight.
You know, that will begin to, you know, that, you know, if you're a Java developer, you might feel more comfortable with that.
I think that there, you know, one of the things is that Python is just showing this sustained trajectory.
It is a good general purpose language, but obviously the shot in the arm that it got from machine learning you know, AI and really those data driven applications just, it gave it a shot in the arm at a really important time.
And I'd say the language has gone from, from strength to strength in that regard.
So, you know, Java is, look, it is still massively widely used.
We're not calling the end of Java or anything like that, but yeah, Python is proving itself with general purpose and in these new data workloads.
And I think that has been a big part of the story. Yeah. And you know, one of the things that we always thought about it at workers was literally looking at your list of what the top languages were and just saying, can we tick off as many as possible?
Because you want to come to where developers are and support it generally not force the developers to come to where you are.
There was, you know, early on when we were thinking about workers, we were like, listen, you know, Rust is this really exciting language and there's all this stuff that we can do with it and we could build it in.
And that could be, that could be the platform. And, and I think that it was, it was really powerful that we said, yeah, we want to support some of those new things, but we also want to make sure that if somebody is comfortable writing in JavaScript, if they're comfortable writing in Python, you know, we announced the other day that we would even support COBOL.
I'm waiting for Perl personally, because when my, my lizard brain goes back to trying to write code, it's still, it's still, it's still kind of really, really hacky Perl.
Are you going to write that billion dollar startup with your Perl?
With my Perl, with my Perl code, you're like, that would be, that would be pretty, if you ever saw my Perl code, that would be, that would be a story in and of itself.
Cause it's, I was kind of a start at the top and run all the way to the bottom kind of, kind of, kind of developer.
I would say though, Rust is performing well in the rankings. I mean, the rankings, they don't move quickly.
You know, they're not, they're not noisy in terms of methodology.
I mean, sometimes some weird things happen, like a bunch of code will go to GitHub and it might, you know, there was a point at which, you know, Ruby suddenly, you know, got a huge boost because of some questions about where it was hosted.
But, but Rust has been on, on a really sustained trajectory. I would say from a, a, a, a, a qualitative perspective, one of the things I had noticed is just clearly over the last 18 months or so, Rust became a language that you could do as your job.
Previously it had been research and, you know, home projects almost.
Now, it's a really hot skill to have anyone building infrastructure software, you know, very interested in Rust.
Again, you know, I think the, the recent announcements from Microsoft, huge shot in the arm look from a security perspective.
They just had, you know, it has, it has really solid characteristics for the applications we need to build for infrastructure.
And so, yeah, people are getting paid to write Rust now and, and, you know, there are good jobs out there.
And I think sort of further to that, yes, the rankings, it, it, it continues, you know, going up a place in our rankings is kind of a big deal at least in terms of that methodology.
And yeah, Rust is, is, is performing well.
So maybe you didn't want to only support Rust, but, but, but yeah, supporting Rust is a really good idea.
Yeah, no. And we're, and we're hiring, we're hiring Rust developers like crazy with something that we, that we use a ton, a ton internally.
And it's, and it's, it's a, it's a really great, it's a really great language.
And so we've talked a little bit about compliance, which would sort of be at my base level of Maslow's hierarchy of, of developers needs.
We've talked about ease of use and how important that is.
And I mean, the real killer app of serverless is you don't need a technical operations team anymore.
You can just deploy code and it scales up and down.
And on a platform like workers, it scales, scales around the world.
You know, the next level up from that would be, would be cost.
What are you seeing in terms of trends in, in that as in, in, in, in the overall computing universes?
Are we for a while, it felt like prices were just dropping and dropping and dropping what's, what's going on, what's going on out there in the world.
And, and what, what are the trends? Well, it's, it's a great point. Again, my colleague Rachel, so she tracks infrastructure pricing.
So if we look at, you know, infrastructure for compute network and storage, you know, that was a highly competitive game and it has now stabilized economics still matter at scale.
And obviously in the world of marginal gains and large scale applications, being able to change economics, I think it is significant.
There's, there's two other ways of looking at, or at least one of the way of looking at it on the other hand, which is to your point, if I'm making developers more productive and, or I'm needing fewer, fewer operations people, what's, what's the economic benefit of that?
I mean, every FTE I save is just huge, a huge win for my development organization.
So I think there's two things, cost still matters, but, but yeah, the, the, the, that, that, that productivity story is just super important.
I think if you can do both, then, then you're in good shape. With, with workers, you know, it's been the thing that I, I've just been amazed with our team is because we shifted away from the traditional VM or container based model, which just has the inherent overhead of that to a model based on isolates, which, which is just a much more efficient model.
You know, even just the straight apples to apples pricing with, with what we announced this week, it's, it's 25% less across the board.
And if you actually run real workloads, you'll see that there's so much faster that oftentimes we're seeing that we're with real workloads.
It can be half or even less than half the price. I, I, I I'm, I'm really proud of our engineers for having built something that can be that much more efficient.
Yeah, I think that's, that's an amazing story, right? And that's, that's the advantage of being the disrupted player coming at it from a different place.
Obviously the cloud is, is absorbing more and more things. But you're coming at it from the edge and you know, there, there is a difference of engineering.
You have a different heritage in some areas you have less legacy. I mean, yeah, you should be proud of that.
It was, it was interesting when we launched it.
I think we, we thought that there is, and I still think that over time, the world is going to move to a much more simplified, understandable pricing model.
You need a PhD to really understand Amazon's pricing at any, at any sophisticated level.
And I think people get really surprised by the bills that they have.
And so we thought three years ago that if we just said, we're just going to set up a per request price, that would be simple enough.
Sometimes you do have to though, come to where, where the rest of the industry is and what developers expect.
And so that's why with workers unbound, which, which we, which we announced this week, we, we, we just lined it up straight.
So you can take any of the other serverless platforms, put our pricing next to theirs and see directly how much more competitive it is.
And that's, you know, I, again, I still think we're going to support the old pricing model as well.
And developers can choose between the two, but I think that over time, you know, you want to, you want to sort of win developer's hearts and then, and then move to what is a much more rational pricing model.
And that's been a, you know, that's been the history of computing forever.
If you go back and look at the earliest, the earliest days of web hosting, it looked like AWS.
And then it slowly became more kind of all inclusive. I think that that has to be one of the directions that, that we're headed in over, over the next, over the next little bit.
We I really appreciate you taking the time, any, any, any parting, any parting thoughts or any, anything that anything that you're going to be looking at over the next, over the next six months that you're, that you're excited about from a tech perspective.
Yeah. I think it's just this acceleration of, of transformation and, and, and the work that developers will do.
That's what I'm most interested by. Yeah. I mean, obviously the, obviously the superheroes of this crisis are going to be the medical professionals and the doctors who are taking care of the sick and, and searching for a cure, but you know, the, the, the faithful sidekick, the ant man to captain Marvel is, is definitely been, been the Internet and I'm, I'm incredibly proud of our team of developers and everyone who's, who's played a little role in helping ensure that it continues to function.