Screaming in the Cloud - Open Source Evangelism Before it Was Cool with Sarah Novotny
Episode Date: February 18, 2021Links:Linux Foundation: https://www.linuxfoundation.org/OpenJS Foundation: https://openjsf.org/Relying on plain-text email is a 'barrier to entry' for kernel development, says Linux Foundatio...n board member:https://www.theregister.com/2020/08/25/linux_kernel_email/Twitter: https://twitter.com/sarahnovotnyWebsite: https://sarahnovotny.com/
Transcript
Discussion (0)
Hello, and welcome to Screaming in the Cloud, with your host, cloud economist Corey Quinn.
This weekly show features conversations with people doing interesting work in the world
of cloud, thoughtful commentary on the state of the technical world, and ridiculous titles
for which Corey refuses to apologize.
This is Screaming in the Cloud. they needed, so they built one. Sounds easy enough. No one's ever tried that before, except
they're good at it. Their platform allows teams to create consistency for the entire incident
response lifecycle so that your team can focus on fighting fires faster, from alert handoff to
retrospectives and everything in between. Things like, you know, tracking, communicating, reporting,
all the stuff no one cares about. FireHydrant will automate processes for you so you can focus on resolution.
Visit firehydrant.io to get your team started today and tell them I sent you because I love
watching people wince in pain.
This episode is sponsored in part by LaunchDarkly.
Take a look at what it takes to get your code into production.
I'm going to just guess that it's awful because it's always awful. No one loves their deployment process. What if launching new features didn't require you to do a full-on code and possibly infrastructure deploy? What if you could test on a small subset of users and then roll it back immediately if results aren't what you expect? LaunchDarkly does exactly this. To learn more, visit launchdarkly.com and tell them Corey sent
you and watch for the wince. Welcome to Screaming in the Cloud. I'm Corey Quinn. I'm joined this
week by, oh boy, well, I'm joined by Sarah Novotny is probably the best way to frame it,
but describing what you do takes a bit of work. Sarah, welcome to the show.
Thank you, Corey. It's great to be
on the show. And yes, not everyone quite gets the threads that run through my career. Right. Even if
I want to completely ignore everything that you are and do, et cetera, historically, and only focus
on the current stuff, I have options to choose from. You are the open source wonk in Azure's office of the CTO.
So you are a Microsoft employee.
You are also on the boards of directors for both the Linux Foundation and Node.js.
Actually, the Node.js Foundation has now been folded into the OpenJS Foundation.
So that was a big merger between Node.js and the JSF, the JS Foundation.
Given that, honestly, my biggest challenge with JavaScript is pronouncing it, I keep biasing for
JavaScript, I am not going to dive into most of that today. So unfortunately, we only have 20
years of your expertise in the open source world and now effectively setting free and open source software strategy at Microsoft to delve into. So, you know, only that. Just a bit. My word. So at a very high level, the
open source strategy is now being driven from Microsoft's office of the CTO, apparently,
which is a nice departure from 20 years ago when it was clearly driven by their legal department.
So I've had a bunch of guests on previously from Microsoft who've talked about the new Microsoft
and the way that they're pivoting to the point where that is now kind of old news.
It's exciting. It's great.
It's seeing a level of participation that I am honestly shocked to have seen over the past decade or so.
My question for you is, and this is possibly dumb, possibly not,
why does Microsoft care about open source at all?
There's actually a really simple answer to it, and it's because customers care.
In the same way that AWS tries to put the customer perspective first,
Microsoft is always focused on the customer and how the customer is interacting. And if customers want open source to be able to run in Azure or inside or in formation with other Microsoft tools, then you need to be able to work in that composable manner.
The industry has changed in the last 20 years. You mentioned the historical aspect of this in that 20 years ago, we didn't have nearly the broad industry expertise that we do today.
And we were primarily sold vertically integrated stacks by some particular vendor that knew way more about their thing than we ever could in an organization.
And so that is changing. There are more and more opinions from the technical staff and the teams
that have grown up in infrastructure and grown up in technology. And so it's much harder to sell
a vertically integrated stack. And so if that's the case, then your customers want Microsoft
software to work with all sorts of other things. And you meet your customers where they are,
or you risk losing them. So I'm not always one to drag the compare and contrast to competition
stories here. But something that I think has been pretty clear in the open source space is there's so much whining about AWS offering a competing service to open source projects, which just so
happened to have a VC-backed company behind them, but it's unfair to point that out. Whereas Azure
does not, to my understanding, get virtually any of that pushback. And it's not because you folks
aren't offering things that are open source aligned. Why is that? We have been spending a lot of effort making sure that we are working
in the communities and then also with different companies in an ecosystem to showcase their work as well. So we have several partner run services on top of Azure that are run by the
open source company that, you know, is best known for the open source project. So for example,
we have an Azure Databricks service, we have Azure Arrow, Azure Red Hat OpenShift, which is run by Red Hat engineers. And I mean, we have
several more of these because I think there's an Elastic service and there's a bunch of services
from HashiCorp that are happening. So it is a matter of trying to work with the community as
opposed to seeing yourself as merely a beneficiary of the community.
You have to be willing to put in the work in the communities and in the projects to be able to
garner that ability to work with them to build a service. Well, to be clear, no one out there has
ever accused any of the large cloud providers of being good at naming services. So we're going to just skip past a lot of that snark. And instead, I do...
Wait, but why? You don't understand half of my internal open source escalations are around
names of things.
Oh, it's also, truth be told, and I don't want to necessarily shatter my own myth,
it is way harder to name a service well than it is to make fun of a crappy name.
So I do have some sympathy for folks, but in the interest of full disclosure, I don't want to crop
on the merit of a service very often because then you wind up with the engineers who built it
feeling really bad, whereas no one spent months and months and months naming Azure Data Box. And
if they did, maybe they should feel bad about it. So there's, I understand the
direction that this stuff goes in, but at some point you just need to call things out as being
badly named. Trust me, we do a fair number of that internally, even before some of them get out.
Oh, if anyone ever wants to leak me stuff, everyone's like, oh, what could I leak you if
I really hate my employer? The honest answer, the proposed names for services that never saw
the light of day. That's the thing I want to see. I don't want to see big customer lists or
your internal P&L. No, no, no. I want to see the names that were considered too bad to put into
public because I would have a field day with it. I bet you would. Oh, I bet you would. And that's
actually a really interesting differentiation for you to not want to mock or deride a service because of the engineers.
But the naming is still hard and there are still lots of people who work on it and think about it, but not in the way one might if, you know, say it was a firstborn child or something. Right. It's understood, I think, in marketing organizations
that naming is a series of trade-offs and compromises.
Engineering is too, but that's not broadly understood in the general market.
And it's easy to wind up taking umbrage from an engineering perspective
in a way that doesn't seem to happen when we're talking about naming, by and large.
There are always going to be exceptions, and there are times the service and or the name both absolutely suck to the point
we're saying otherwise is borderline malpractice. But it's not necessarily something that is going
to rub people the wrong way in quite the same direction. Or at least I don't get the letters
about naming that I do about insulting engineering teams.
Okay, good to know.
Perhaps that's an audience thing for you too.
Maybe there are fewer marketing people who are listening to your podcast.
Yeah, the sad thing is, is I looked up one day and discovered I'd become a marketing person myself. And now I don't recognize myself.
But speaking of not recognizing things, what is the story with Microsoft of all companies having an employee who
is also a board member for the Linux Foundation? That's one of those oil and water stories if
you've been asleep for the last decade. But first, is that in some level considered to be a conflict
of interest? It is absolutely not a conflict of interest. And in fact, I represent Microsoft on the Linux Foundation board. So I am in Microsoft's seat on that. We've had a seat on the Linux Foundation board, we Microsoft to do this, and got the Platinum membership and participated and was the first
board member for Microsoft there. When he arrived at the Linux Foundation board meeting the first
time, he actually had people clapping and super excited that Microsoft had joined. So it's a
complete shift from 20 years ago when I was living here in Seattle and would not even have considered
if a recruiter from Microsoft called
me. It's completely different now. It really is. And again, I used to be a Windows admin very
briefly and got out of it just because I couldn't stand aspects of what I had to do to run Microsoft
Stack. Went to Linux around 2006 and never went back. And looking back, everything I predicted
about hating Microsoft, oh, oh they're gonna be awful in
cloud they're going to wind up crushing linux they're like the github acquisition everyone
was extremely skeptical about it looking at it now i think that if you're still beating that
war drum you're kind of a relic i've got to say it's very clear that the things that the general
open source community feared did not come to pass, full stop.
And to be very honest with you, I really question whether any company, including Microsoft, has the kind of long game to wind up submerging the evil for 30 years.
Very few people are that good at strategy.
Or, frankly, that driven by spite. I'm one of them, but not too many others.
Okay, note to self, don't get Corey mad at me.
Exactly.
So as I look now across the open source landscape,
everyone who is doing open source projects
by and large has them living on GitHub.
It's the de facto place for things to be.
And an awful lot of folks who, unlike me,
don't have 20 years of muscle memory built up in VI are reaching for an editor.
It's going to be Microsoft Visual Studio Code.
And that's the early developer ecosystem play that really seems to be paying dividends for Microsoft across the board.
I maintain on some level when there winds up being a click the button to seamlessly deploy this thing to Azure, like, you know, Heroku used to be, but then got stalled somewhere along the way. If done right, that becomes
something transformative across the entire cloud landscape. And I like it because if nothing else,
it makes the developer experience better. It should not be hard to get started in this world
the way that it once was. Or in many cases still is. Oh, when I look at how to write code, a lot of the
intro level tutorials in a lot of places, it starts off with first, here's a chapter on learning VI.
Why? Why on earth would you subject people to that? I get it 20 years ago, but now that's not
really necessary in any meaningful way. It's the wrong direction. It feels like gatekeeping.
It is gatekeeping.
It's awful. It's making it harder for people to get into this rather than easier. First,
you have to learn some weird-ass text editor is not a viable strategy for making what you're
doing inclusive and welcoming.
Yeah, it's been really interesting to watch some of the longer standing open source projects
understand and engage with newer developers and learn from them. And then also some different
projects struggle to bring in, you know, new recruits, because they don't have the empathy
for the world being changed. Oh, yeah, I had had to suffer so other people going through it should
suffer as well. This idea, it runs counter to the philosophy of send the elevator back down.
You had to struggle and fight to get to where you are. Great. Shouldn't you want the next person
coming up to not have to do all of that? We all stand on the shoulders of giants. None of us know
how to work punch cards these days. Let's extend that philosophy. Yeah, it's interesting because you've brought up
gatekeeping in the same way you really want to have a positive sum game out of all of this work.
Because if we do work well across the clouds, and if we were ever magically to have good
interoperability between them, then you end up seeing a way that the customers are so much more
successful and the pie is big enough for all of us. This is the thing. The total addressable market
of cloud is not small. And we do not have to look at this in terms of if I gain one customer,
you lose one customer. We can entirely look at it as building the best infrastructure for the customers
who need them and then setting up the support that they need to make all of this work well together.
It's the same way that, well, I guess I can't say utilities at this point because I was going to say
it's the same way we eventually moved toward electricity as a utility. But at some point,
we see, at least in California, the electric utility
not taking care of their systems here as well as they should have. So maybe that's a bad example.
No, but there is something to be said for the idea of utilities, which is whenever I turn the
faucet on or flip a light switch, I don't sit here questioning whether it's going to work or not.
Now I have some IoT light switches, so maybe I should question that a bit more than I do.
But by and large, there's a level of dependability that is required for folks to consider something
a utility. By and large, cloud providers are getting a lot closer to that than anything
else once were. Yeah. But with utility comes regulation, and that has always been a thing
that the cloud providers have been more concerned about, broadly speaking. And, you know, regulation and oversight does make it harder to cut corners and go fast,
but it also may make for a much more stable infrastructure and a much more interoperable
and less monopolistic-looking space.
This episode is sponsored in part by our friends at New Relic. If you're like most
environments, you probably have an incredibly complicated architecture, which means that
monitoring it is going to take a dozen different tools. And then we get into the advanced stuff.
We all have been there and know that pain, or we'll learn it shortly. And New Relic wants to
change that. They've designed everything you need in one platform,
with pricing that's simple and straightforward,
and that means no more counting hosts.
You also can get one user and 100 gigabytes per month totally free.
To learn more, visit newrelic.com.
Observability made simple.
There's so much that could be done in order to make things even easier, but you need
to get the fundamentals right first. You have to not wonder if the virtual machines are going to
boot when you tell them to. You have to not wonder whether the storage is going to lose your data
due to a weird disk issue. And in a lot of ways, those problems from the early days of cloud don't
really exist in the same way. Now people are wondering what's possible when you don't have to think about that general baseline
level of work that anything needs. And instead, you can have your staff start to focus on things
that are much more aligned with the actual business problem they're trying to solve.
Yeah. Take away the effort that is commoditized. I will always need a server-ish thing that can
do compute. It could be serverless.
It could be a VM.
It could be a container.
But I will need some compute, and I will need some storage probably to put data somewhere.
And then how do you interop all of these different things across the different clouds?
And how do you do this across the different needs and use this cloud for the workloads
that they are best optimized for and that cloud for the workloads that they are best optimized for
and that cloud for the workloads that they're best optimized for.
And, you know, just basically hand empowerment back to customers to choose what's right for
them as opposed to trying to tell them that they need to buy something to fix a problem
from my company or someone else's company instead of, you know, saying, where are
you and what are you doing right now? We need to make sure this works on our systems as well as it
can. So if you want to wind up getting effectively dragged for positions that you didn't intend to
make, there are a few better ways to do that than to sit down for an interview with the register.
They're snarky, they're sarcastic. I'm a big fan of them and have been for many years, but you sort of know what you're getting
into when that happens. In August of last year, you sat down and had an interview with them,
and the headline, which I will quote verbatim, relying on plain text email is a barrier to entry
for kernel development, says Linux Foundation board member. Now, tell me more about that, please.
Because it's certainly provocative. It is provocative. There is work happening inside
the Linux community looking at ways that their workflow may have new entry points that are more
modern, as opposed to the strict model that they use currently, which is their
entire workflow is patches through diffs in email, which is super important for the high velocity
that the Linux kernel changes have, and the size and breadth of that community. And it's limiting to say, you know, this is how you need to engage with this project because not as many people today, you know, read their mail through a client that can do just straight plain text for real.
It's tough, actually. larger, longer-standing communities to reach out and look to growing new contributors and
to new leaders within that community.
And that's the only way that these projects will live on another 10 or 20 years, or they
will have to be sort of wound down and we will have to look toward the new versions, you know, the new operating
system that might happen or the new web server or container orchestration system or whatever.
If we're not managing and maintaining these open source projects and working very hard to bring in
new views, bring in new people and to set them up for succession when succession needs to happen
is incredibly important. We saw a challenge with that with the Python community when
Guido Rossum ended up saying, you know, I'm going to step down. And there had not been a good setup,
particularly for succession there. And so that community struggled for a while. They seem to be doing
better again. Yeah. There's an awful lot that companies and organizations can do to make things
easier. And once upon a time, plain text email was the way that these things...
Was the easiest way. Yeah, absolutely.
Yeah. And I was one of those militant folks when I ran large-scale email systems that,
oh, it's plain text email or it's trash. HTML, no, I want plain
text email. And guess what? We lost that fight across the board. I gave up Mutt finally. Yeah,
it's hard to get Gmail or Outlook to send plain text email only out of the box. So it's gone from
to make sure that this is something everyone can understand to now it's become a gatekeeping
shibboleth that stands in the way of a lot of people
who otherwise would love to contribute.
Because let's face it,
anyone who's reading email in something
that only speaks ASCII text,
I'm sorry, you are so far of a corner case
that it's almost a vanishing point here.
I pay attention to this
because I write a large email newsletter
and the number of people who complain about the plain text version,
I think I had two the first year and nothing since.
It just isn't a thing that realistic people are using these days.
Now, yes, you can make an argument that the deep geeks
who are Linux kernel developers should know enough to do that.
Sure.
Absolutely.
I can accept that, but why? What is the actual
upside value here? Yeah, there is no big benefit in making them spend the first, you know, hour or
three hours of whatever they're trying to do in an open source project where most of the time people
are offering their time or offering their time as you know, a tiny slice of what they do for their
day job. And they then spend a bunch of time just faffing about and trying to figure out how to get
something submitted to a mailing list without looking like they don't know what they're doing.
And I guarantee that anyone who has already had any little drag on their career, so pretty much every
underrepresented minority out there, is not going to be as comfortable trying to go to something
like a mailing list where they know that it's a hard audience and try to submit something on their
first try and get it right and or know that if they don't get it something on their first try and get it right
and or know that if they don't get it right,
that their first interaction will be a resend your patch,
can't read this kind of thing, or patch doesn't apply smoothly or something.
Yeah, and that was the obnoxious part about a lot of open source communities
back when I helped to run the Freenode IRC network.
It was incredibly off-putting to have someone go to all the effort
of building a patch, making sure that it works in there, and to fix a pain that they had all on a volunteer basis, may I point out, and then being told you didn't format your patch correctly.
Or not even being told how, just this isn't in the appropriate format, read the docs.
And it was, why am I helping you people?
You're thoroughly unpleasant, and I'd rather go somewhere else where I get more of an emotional high from helping.
Yeah.
It's actually one of the things we have found most in the Kubernetes community that's like
most responded to and most reported and most talked about is that the community is really
open and friendly and tries to encourage people and takes on a, wow, you look like you're
struggling, let me help kind of approach as
opposed to an RTFM. Yeah, it's incredibly off-putting too. At some level, that's why
people started paying more attention, to be direct, to Ubuntu than they did Debian because
the response they got from the community when they got stuck, and let's face it, everyone gets stuck
somewhere, especially in the early days, was such a worlds apart.
Go read the manual without any indication of what manual they should read.
Turns out there's a lot of documentation.
What exactly are they getting stuck on?
And people spend more time castigating folks for not asking the question properly than
they did actually trying to help people.
Sure, these are all volunteers.
No one owed anyone any particular level of support.
But Ubuntu's entire community from day one was aimed at making this accessible to people who were not experts in it.
And that alone changed the entire way that it was perceived.
And it's why an awful lot of listeners know what Ubuntu is, but we'll have to do a bit of quick Googling to understand what Debian is.
And the fact that Debian is the upstream from Ubuntu is lost on many, not everyone.
Oh, sure. But this also is turning into what the world is doing, where originally what distro I
used, what operating system I used, were big, contentious issues. Today, I don't have to care
about that. I mean, a few people do in very specific roles, and that's their entire world.
But I don't care necessarily as
things move up the stack what operating system it's using, whether it's in a container or a
serverless function. I just care that there's an API I can bounce something off of, and I get what
I want in return from that API. And it's going to continue to go beyond that down the road, I'm sure.
But this stuff has all slipped below the surface of awareness and the folks who haven't evolved
with it feel like relics to be very honest with you not in their focus uh higher up the stack i
mean just people working on these things is important but folks who are convinced that this
is all that they'll need to know where they aren't evolving their skill set it's sad to see yeah well
you touched a little bit on gatekeeping and i think we are in a very much a generational shift. And it might even be the second generational shift within tech in my career time. I'm sure there have been many more since computers began. But, you know, there's a point in every career where you kind of get to the top end of like an intermediate level tech person. And you're the one person who knows how to fix this thing and you're the you know the the go-to person and everybody sort of loves that feeling of being the hero and always being pulled
in to fix something for someone and being the only person who knows or understands it but in a world
where we're trying to empower people to use good technology to make good decisions and improve the world.
We need to make sure that we are opening technology up for everyone who is coming behind us
with more documentation, more philosophical writing, more entry points for people to start,
more ways that have guided directional paths, you know, so that people can learn more
and not do the othering that used to happen in the network engineers, not talking to the systems
engineers because network engineering is, you know, so much more critical than systems engineering
and all of the weird silos we had made. So I actually find this fascinating to watch as these generations change
that, you know, we have this full stack developer concept now and it's full stack in today's world
because full stack no longer means having to rack the hardware and actually talk to the person who
was giving you your ISDN circuit or whatever technology you were trying to connect at the time. But, you know,
from Ethernet all the way up to somebody interacting with it used to be a lot more
difficult because you'd have to have expertise as opposed to an API, as you mentioned.
So last thing I want to really talk to you about aligned with this is if you look across the
landscape, there's an awful lot
of people who are defining themselves by the technology or the stack or the project that they
work with. And I get it. I started my career as a large scale email systems administrator,
and it became pretty clear after a year of that, that there was a consolidation happening in the
email space and that this was not going to be a long-term niche that would have rendered me infinitely employable.
And my choice was either learn something else to focus on or double down and try and deny the reality of what's happening in front of me.
And it's a hard choice.
I'm not denying that at all.
But open source seems particularly tied to this. When I went on to Freenode somewhat recently and showed up at a few of the old channels I used to haunt a decade ago, a lot of the same people are still there giving the same advice
with the same tone. The only difference is, is a lot fewer people are asking the questions now.
Yeah. So from that perspective, what's the future of open source?
Oh, the future of open source still is hearty. I actually think it's a grand space ahead of us.
I do think that it is going to look very different than open source of 20 years ago.
We've had companies decide to make concerted, organized strategies.
This is the work I do. making sure that they are developing in a way and working with the communities and customers
that keep them on track to not capture our customers and keep them through lock-in.
We really want to see, and open source is a great way to allow this,
is to open up the cloud communities and the cloud infrastructures to be able to be
what the customers need, not what the companies need. And I think that focusing on the customer
is going to be and has been proven to be the growth win. Like if you can work with your
customers, get them what they need,
and then also occasionally show them a thing that they didn't know they needed,
and that they can jump forward technologically. I go back a lot to the Ford quote of,
if I asked my customers what they wanted, they would have wanted faster horses.
And so I do think that there is a lot of need for big technology companies to be looking at what the sea changes are, what the paradigm shifts are.
But I think people need to be answering and offering what their customers need while then also teasing out the future in there. But open source specifically, lots of great opportunity,
lots of great collaboration across the industry
and lots of practice
in all of the very large companies
that are trying to work in open source now.
Practice to get it right,
practice to be helpful and hopeful
and harmless in the communities
and help grow them to be the
successes that they need to be independent of any product that may need to be built.
That's, I think, a terrific place to leave it. If people want to hear more about what you have to
say, where can they find you? They can find me on Twitter, and I am just Sarah Novotny.
I have a webpage, but it mostly is for people who want bios and headshots.
Mostly Twitter.
Twitter is probably the best place to find me.
Excellent.
We'll, of course, as always, leave links in the show notes.
Thank you so much for taking the time to speak with me today.
I appreciate it.
Yeah, you're most welcome, Corey.
It's been fun.
And it's been fun to meet you for the first time.
And clearly we have to have more nerdy conversations.
Oh, yes.
I'm a treasure and a joy simultaneously.
It's true.
It's true.
It's true.
Sarah Novotny, open source wonk, Azure's office of the CTO, as well as the member of the boards
of directors at the Linux Foundation, Node.js turned OpenJS, et cetera, et cetera.
And I'm cloud economist Corey Quinn.
This is Screaming in the Cloud. If you've enjoyed this
podcast, please leave a five-star review on your podcast platform of choice. Whereas if you've
hated this podcast, please leave a five-star review on your podcast platform of choice
and a comment telling me what I got wrong, written only in ASCII text.
This has been this week's episode of Screaming in the Cloud. You can also find more Corey at Screaminginthecloud.com or wherever fine snark is sold.
This has been a HumblePod production.
Stay humble.