The Changelog: Software Development, Open Source - Visualizing the spread of Coronavirus (Interview)
Episode Date: April 13, 2020Harry Stevens is a Graphics Reporter at The Washington Post and the author of "Why outbreaks like coronavirus spread exponentially, and how to 'flatten the curve'" — the most popular post in The Was...hington Post's online history. We cover the necessary details of this global pandemic, the journalist, coding, and design skills required to be a graphics reporter, the backstory on visualizing this outbreak, why Harry chooses R over Python, advice for aspiring graphics reporters, and how all of this came together at the perfect time in history to give Harry a chance to catch lightning in a bottle.
Transcript
Discussion (0)
This post you've written, why outbreaks like coronavirus spread exponentially and how to flatten the curve, was the most read post in the Washington Post online history.
I mean, that's massive.
That's huge.
It's crazy.
I mean, it's kind of like catching lightning in a bottle a little bit.
Definitely couldn't have anticipated that it would do so well.
And if I published it a week later, maybe it wouldn't have.
You know, it was just kind of like the right time.
Being With Your Change log is provided by Fastly. Learn more at Fastly.com. We move fast and fix things here at Changelog because of Rollbar. Check them out at Rollbar.com and we're hosted
on Linode cloud servers. Head to Linode.com slash Changelog.
This episode is brought to you by DigitalOcean.
DigitalOcean's developer cloud makes it simple to launch in the cloud and scale up as you grow. They have an intuitive control panel, predictable pricing, team accounts, worldwide availability with a 99.99 uptime SLA, and 24-7, 365 world-class support to back that up.
DigitalOcean makes it easy to deploy, scale, store, secure,
and monitor your cloud environments. Head to do.co slash changelog to get started with a $100 credit.
Again, do.co slash changelog. Welcome back, everyone. This is the ChangeLog, a podcast
featuring the hackers, the leaders, and the innovators in the world of software.
I'm Adam Stachowiak, Editor-in-Chief here at ChangeLog.
On today's show, I went solo to talk with Harry Stevens about visualizing outbreaks like coronavirus.
Harry is a graphics reporter at the Washington Post, and he designs data visualizations to report the news to the world. We cover the necessary details of this global pandemic,
the journalist's coding and design skills required to be a graphics reporter,
the backstory on visualizing this outbreak,
why Harry chooses R over Python,
advice for aspiring graphics reporters,
and how all this came together at the perfect time in history
to give Harry a chance to catch lightning in a bottle.
So your post obviously caught my eye a few weeks back. Why outbreaks like the coronavirus spread exponentially and how to flatten the curve. Now, flatten the curve has become this big term that
everyone is pushing. Obviously, you're a graphics journalist, but I have no idea what it takes to do that job.
So kind of fill us in to what type of reporter you are.
Sure. So it's a very multidisciplinary type of job. And so people who do it tend to not be able
to do everything, but everybody who does it can do a few different things. So first of all, you need to be able to be a reporter,
which means you need to be able to find out what a news story is.
Like you need to understand how to frame a story
and how to make people interested in what's happening.
You need to be able to find sources and interview them.
So all of that sort of basic stuff that reporters do.
Then in addition to that,
you need to be able to write a story. You need to be able to design graphics for that story. So
you need to have studied information design and you need to, I mean, not in a school setting,
but you need to have an awareness of what makes a good chart or what makes a good visual.
And then in a lot of cases, you need to know how to code because so much of what we do now, you know, is online. And so it takes advantage of
the fact that the web is an interactive medium. And so a lot of what we do is interactive and
therefore built with code. And it used to be that if you did this job, you know, 20, 30 years ago,
you needed to be able to draw. And now I think most of us can't draw but uh but we can code so that's
kind of the new skill set the new pencil yeah yeah exactly the new paintbrush a lot of people
i work with can also draw which is they're just very very multi-talented people very cool it's
interesting because this is an article that you've written, obviously, but it's also a coronavirus simulator.
So it's sort of like software, I suppose, embedded as an article.
I don't know how to describe it, but I mean, like, it's just interesting that it's not just simply an article.
Yeah. take advantage of the fact that, like I said, like the web is an interactive medium in order to
explain something about the world in a way that couldn't be done just with text. So yeah,
like in this case, so I just thought that it would be interesting to look at these balls
bouncing around on the browser screen. So I incorporated that element. You know, I knew
that it would not be possible to simulate like the actual COVID-19.
In fact, I had spoken to a woman named Lauren Gardner, who's like a, I don't know what the actual, she's like a computational epidemiologist or something at Johns Hopkins University.
And she was describing to me the method by which they produce their forecasts for COVID-19, the actual COVID-19
in the real world.
And she was like, look, I got a team of PhDs here.
We're all really good at math.
And we run our simulation on a computer overnight because it's so computationally expensive.
It has to take into account such a wide variety of factors and complexities about the real world.
And even then, when we get our results back, there's a huge range of uncertainty because there's so much about COVID-19 that we still don't know.
We don't know necessarily its transmission rate or its fatality rate.
We can't forecast what governments are going to do with regard to their policies to shut it down.
And so any kind of forecast you get with COVID-19, it's going to have huge uncertainty bands. And again, this is like from people who do
this all the time and are professionals. So it's something that's clearly far beyond my ability to
do. And in fact, so I had this idea that wouldn't it be cool if we could kind of make COVID-19
simulators in the browser and allow readers to tweak the parameters
and see how different decisions might change the likely forecast. And in fact, the New York Times
has since produced just such an article. And it was a great article that you should check out.
Yeah.
But even then, I think that it represents the forecast with a kind of precision that's not
actually there because, and they do give caveats that like,
there's a lot of uncertainty here. But anyway, so for me, I was just like, there's no way that
I'm going to be able to do something like that. And so that's what really pushed me towards doing
this fake disease called, that I called simulitis that spreads through.
Great name.
Yeah.
Naming it so hard.
That's a great name.
Thank you.
Better than COVID-19, I think.
Yeah.
But so anyway, so I just thought, you know, make a simple simulation, just have these
dots, you know, bouncing around in a room.
But even then, I think what worked, it kind of worked as a metaphor for not for forecasting COVID-19,
but for showing how network effects worked and showing how individual behavior can disrupt those
network effects, which I think is really what people were struggling to understand. You know,
it's like, you know, everybody's feeling kind of hopeless and anxious about what's going on.
And they don't really feel like there's anything that they can do to, you know,
improve the situation. And so I think just by seeing these simple simulations where, hey,
if we stop some of these dots from moving around, suddenly the infection rate declines dramatically,
gives people a sense of like, oh, like that's all I got to do is just basically nothing. And suddenly I'm contributing to the solution. Yeah. It really depends on your audience, right?
Like if you were trying to be a scientifically extremely accurate variation of truly how COVID-19 is spreading, that's a different story.
I think what you're trying to do, to me at least, it seemed like what you're trying to do is communicate and influence.
Not that it is inaccurate, but you weren't striving for accuracy to the way COVID-19
truly spreads. Yeah. I mean, one, because I couldn't do it. And two, like you said,
because the audience didn't really need that. I think that the real key to it was like,
so network effects have this property of exponential growth. Whereas as something starts to spread, you know,
first there's one and then two and then four and eight and 16, 32 and 64. And, you know,
you see that exponential growth curve. And this is the case of things spreading through any network.
So it could be a meme on social media, or, you know, it could be like an idea. In fact,
I don't know if you ever listened to the podcast Hardcore History, but the host Dan Carlin sometimes talks about Marxism as this intellectual contagion, this idea of spreading through society.
That's just his perspective.
But anyway, so the language of disease is often kind of intermingled with this idea of network effects.
And so I just think that it's kind of a tricky idea to visualize
like this exponential growth through a network. But then when you see it, like when you see those
bouncing balls and you see the curve going up, it just becomes immediately clear what it is
that people are talking about when they say exponential growth. So anytime that you have
the opportunity to take something that's hard to understand with words, but easy to understand with graphics, that's sort of the ground that I like to plow when it comes to the job that I have.
That is, in essence, what a meme is, right?
It's an oversimplification of a very complex idea, right?
Yeah.
Complex to convey.
Yeah, and I think that's one of the reasons that they spread so easily. Yeah. Plus, right? Yeah. Complex to convey. Yeah. And I think that's one of the reasons
that they spread so easily. Yeah. Plus they're funny. Yeah. Sometimes. Yeah. I mean, sometimes
they're false and sometimes they, you know, are unnecessarily reductive or they simplify the world
too much, but they can also be really effective at communicating. Yeah. Where did you begin? I
suppose then with, with something like this. So if you if you're, you know, in the URL, it's Corona Simulator. So it's
definitely intending to be some sort of simulator. It's in the graphics section, obviously. So you're
obviously trying to visually convey an idea. Where did you begin, I suppose, with the idea
of this post? Was it you solo? Give us the full story. Yeah, well, that's interesting that you noticed the URL because that is how our URLs
on the graphics side get assigned based on our GitHub repository. So the GitHub repo that I made
at the very beginning was called like Coronavirus Simulator. So I knew that it was going to be some
kind of simulator. I didn't know exactly what it was going to be. But so basically the
idea for the story came from an edit meeting that we were having about two weeks before the story
was published. So I was in a room with like a couple editors and a few other graphics reporters
just on the graphics team. And we were talking about, you know, how are we going to push our
coverage forward of this emerging coronavirus situation?
Because we'd already had all these trackers up on our website.
And I think you see every news organization has these trackers up where we're using data that's like a little bit squishy because, you know,
we know that there's underreporting of cases because of testing and stuff,
because of testing and because a lot of people who have this
disease are asymptomatic or they don't feel that sick and they're not going to get tested even if
there's a test available so and then that varies depending on the country so trying to compare
countries is kind of hard and so anyway it's like for a data reporter it's kind of a nightmare
because of this this data set is like it's all we have and everybody's using it but it's not the best data set and so anyway so we're just talking about
ways that like we can we can do other things other than using all these case numbers that may or may
not actually represent reality and so i mentioned that i'd, this was like a year ago before this, I'd been working on some experiments with collision detection.
And not like, like sometimes on the weekends, I just kind of like to code just for fun, like or make graphics, not with any story in mind, but just because, you know, I find it fun and interesting.
And so I had been doing these experiments with like, what happens if you have two circles moving around at random angles and then they collide with each other? Like how to detect whether they've collided and then what would their behavior be after the collision? Like, and I was like, hey, look, we have these balls bouncing off of each other.
What would happen if I made one of them sick and then they could transfer a disease to each other and we could just show the state of the simulation over time?
So we store data about every tick of the simulation, how many are sick and how many are healthy.
And then we could show a chart of that.
So I kind of described the idea as it was in my head.
And the editors were like, yeah, sure.
That sounds like it could be interesting.
And I went back to my desk and worked on it for a couple of days.
And there were a few bugs in my original code.
And I ironed out the bugs.
And also the original code didn't have any concept of sick or healthy.
And, you know, it was just balls bouncing off of each other
and it didn't store data about the simulation over time.
So I added that.
Yeah.
And then, you know, once I got that working
on my computer screen, I went back to my editors
and I was like, hey, you know,
I think this could be a pretty powerful tool
to explain how things spread through a network.
And then over the course of the next
week and a half or so, we refined it and edited it and cut things out and sort of settled on the
final four simulations that we showed with like the free-for-all and the quarantine that kind of
doesn't work out and the social distancing. So, you know, I'm lucky to work on a pretty big
graphics team with a lot of editors with a lot of experience so
you know the original design wasn't nearly as like clean but uh i showed a lot of versions and
you know people said what they thought worked and what didn't work and then so
little by little we would kind of refine it to that final the final graphic that you saw
yeah i think it's uh you did a great job.
You and the team did a great job.
I mean, because it impressed me from a visual standpoint,
less like, oh, this is cool code.
At first I was like, wow, okay.
So, you know, you have this obvious free-for-all,
that's how the world works anyways.
Like the typical normal world sans virus,
no threat is the free-for-all.
And then this idea of attempted quarantine means that,
you know, as you explain your article, like people or a government or some sort of authority
will attempt to push a quarantine, but somehow, some way the quarantine is broken or thwarted.
And then you can kind of see the effects and your visuals very much describe that.
Then obviously, you know, we started to hear this brand new phrase in the world,
social distancing, right? Like what's interesting more so about that is if you go back and watch
the movie Contagion, that word, that phrase was said in that movie. So it's almost like
foresight warning. It's crazy. Oh, that's cool. I haven't seen the movie, but I should watch it.
If you have trigger warnings, just go with a grain of salt because it is very similar, obviously embellished to a version of what we are facing today.
Because that – the illness in there, I believe it was EMV.
Geez, I'm forgetting it right now.
It doesn't matter.
That one there is far more quickly deadly.
So it's interesting, I suppose, the biological physics involved for the spread.
But the point was that you start to see social distancing and you mentioned moderate distancing and even how that's ineffective, that you really need this extreme, this extensive distancing.
And you're able to easily condense that idea in four graphics that are every new page refresh is a new simulation so that's to me
it's genius because i can't imagine how many people it influenced and that's one part i want
to cover with you is just like you know are is there measurable ways to track the influence
of what you've written here to saved lives sure you can't get it down to an actual save life but
you can to some degree,
maybe you can call your friends at John Hopkins and do some math or something like that. But
point is, you know, it influenced me. I immediately showed it to my wife. I'm like,
listen, we're doing the right things here. We're not crazy. Harry says we're not crazy.
His graphics say we're not crazy. So there you go.
Well, thanks, man. I mean, yeah, if it saved one life, that's enough. That's crazy. I think a lot
of people who get into journalism probably have some kind of like idealistic streak. And then
a lot of times, you know, you realize that it's not so easy to, you know, write the story that
topples the government or whatever, know changes the this corrupt system or you
know makes the world better you know it almost never happens so if this uh did do that then
that's extremely uh satisfying to think about i mean it's definitely spread much much farther
than i could have ever anticipated or hoped for and weird places too like i saw somebody shared
with me the venezuelan dictator nich Nicholas Maduro sharing it on state TV.
That's weird.
So that's something I made that the Venezuelan dictator sharing,
because we translated it to Spanish too.
So it was like,
we translated also to Japanese and then this Japanese soccer star,
I think his name is Kaiseki Honda shared the Japanese version.
And then it's so that a lot of people were reading it in japanese um and we got requests from like random readers were like
you know i i can read english but my parents can't so can i translate this into turkish or whatever
and so we ended up getting like pro bono translations it really struck a chord with
people i guess they just really wanted to you know share it with everybody so that yeah like we ended up getting like pro bono translations. It really struck a chord with people, I guess.
They just really wanted to, you know, share it with everybody so that, yeah, like you said,
you know, it's like, you know, we're doing the right thing. I mean, I think what's so weird
about this social distancing thing is that like, you kind of feel like we're a society under siege
right now. We're dealing with this threat that's so far beyond anything that we've ever dealt with
before. And when that happens, it's like, you kind of want to leap into action, you know, like you want to do something to make, I don't know, make the world better.
And yet what we're being told repeatedly is that actually, no, you're supposed to do nothing at all.
It's like so counterintuitive.
Way counterintuitive.
It's almost like, what?
Really?
Yeah. Thankfully, we have your visuals to show us that but i mean that's what i'm trying to say here like you know the immediate
action is like some sort of action some sort of doing whether it's panic which has happened
obviously you know in some sort of version of preparing for you or your family or anything
like and how do you even prepare for this like, there's really no way to truly prepare because there's just so much unknown.
I did do a little Googling real quick and I found out the virus name in the movie Contagion was
called MEV1. So just had to close the loop on that because I like closed loops, but MEV1 was
the fictitious variation of, I suppose, a version of what we're dealing with today.
It's, you know, one core thing that you just mentioned too is the translations into different languages.
13 languages by my count.
Based on what you said, it sounded like there was a lot of voluntary operation there, like people were offering to translate it.
Yeah, not all of them were voluntary, but a lot of them were, which was really cool.
Yeah.
In fact, we ended up having
to stop so like we got a few more translation requests we had to say like you know thank you
so like we somebody just did the translation in polish uh and i was just emailing with them saying
like we can't do any just because it takes time unfortunately like we can't just like plug it into
a content management system and then publish a story. Like first we have to vet it, you know, so we have to get somebody else to read through the translation.
And then we have to.
For accuracy, yeah.
Yeah.
And then we have to like program it all up again.
So like all the codes there, but we have to change certain things.
And so anyway, like because, you know, words in different languages take up more space in pixels.
So sometimes we have to change a couple of things.
So it's not as simple as just like,
oh, we have the translation, we can publish it.
And like, so it was taking up the time of other reporters
who really needed to get back
to covering this enormous story.
So we had to even turn some of the translations down.
But yeah, I mean, it was definitely like really cool
to see people wanting to share it so badly
that they were willing to put in their own time
to translate it.
So my wife is Bengali. And so her parents are, I mean, she's bilingual, but her parents are like professor. Her mother is a professor of comparative literature. So she
regularly translates things from English to Bengali and other languages too. So she helped
us out with the Bengali translation. So it was pretty cool. We got like a little, there's a
family affair. Yeah. Let's talk about trusting the We got like a little, it was a family affair.
Yeah.
Let's talk about trusting the data because you mentioned a lot of math being done by John Hopkins University.
They have a center for systems.
I guess they're doing a lot of different stuff.
We had actually covered, you mentioned Laura Gardner, the visualization, the dashboard that's famous now. It's really interesting because the screenshot that I took to cover that back on the 6th of March,
I mean, these are staggering, staggering numbers
when you think about it, but on March 6th,
that graphic or that dashboard said 101,583 confirmed cases.
And then now today it's 911,308 confirmed cases.
That same date, March 6th was 3,400-ish deaths.
Now today, March, I mean, we're recording this today, April 1st.
It doesn't say March 31st, but it's not anymore.
April 1st, 45,371 deaths.
Yeah, I mean, that's the exponential growth thing.
It's just crazy. And yeah, it's hard
to fathom, but this thing is just, it's so contagious. That's something that I was reading
about MERS last night. There was an outbreak in like, I don't know, 2012. Middle East respiratory
syndrome. Exactly. Yeah. So that one was like way more lethal. I think it killed like 30% of
everybody who got it, but it was not nearly as
contagious. You had to actually spend a lot of intimate time with people to get that. Yeah,
you had to be really close to them, you know, a lot of time with them deadly, but not quite as
easily caught contagious. Yeah. So this thing seems to somehow have struck the perfect, I mean, perfect lethal balance in terms of, you know, it's not so lethal that it just like immediately kills its host. And also like the fact that it can travel and be contagious in a person before they even know they have it. It just seems like it was designed to infect everywhere in the world. And of course, it has done that.
But it's like, you know, almost a perfect storm of attributes that you would expect to just become a terrible nightmare.
So you have something that's so contagious, or as you mentioned, this original idea of several – I guess now it's about four weeks or so back now where you started to early visualize this thing.
You were charged with influencing people in a visual way to say something this contagious can spread this quickly.
And you had the four different axes, I guess, where you've got the different variations of how it's spreading.
You've got free-for-all, attempted quarantine, moderate distancing, and then it's extensive distancing.
You know, if I'm reading this and I'm thinking from an author standpoint, from a reporter
standpoint, you are sort of saying, hey, the more extensive your distancing is, the more safer we
all are. And this idea of flattening the curve. Yeah, it's, I mean, so I'm not like a disease expert or anything like that.
So this is just like from my casual reading, but it does just seem like this thing was
designed to spread everywhere.
Like you really couldn't have come up with, I mean, I'm, you know, I get there's, I guess
it could be more contagious or it could be more lethal and gee, wouldn't that be worse?
But this thing is just, just about as bad as you can imagine.
But yeah, I mean, so this idea of flattening the curve also, I think, is an interesting
visual concept that doesn't really work unless you can see a chart of it.
And actually, the same time that I was making the simulations, it was also the week where a bunch of these flatting the curve graphics had been shared on
social media and like I'd seen them on Twitter. So those graphics that I think are ubiquitous by
now, but where you see like, you know, what would happen if no measures are taken to reduce the
spread of the disease and you have that curve
and just run away exponential growth yeah and then you know they say uh well if we enforce
certain measures to make the transmission rate less like you know we shut down public events and
we ask people to stay at home then we can you, you know, sort of lower that curve such that, you know,
basically like you just want to keep that curve low enough so that the hospital capacity is big
enough to deal with all the sick people. So, you know, even if you have the same number of total
sick people at the end of this thing, at any given time, you don't want to have more sick people than
the capacity of hospitals
to treat them, which is sort of this crucial idea of flattening the curve. So the simulations that
I made, they all run for the same amount of time. It's all like 1500 ticks of your browser or
whatever. And so I think that if you let them run for as much time as it took for either everybody
to, for basically for the virus to disappear,
right? So no one's sick anymore. I think you'd find that almost no matter what strategy you
adopted that you're going to get, you know, almost everybody getting sick. And again,
like this simulitis is not COVID-19. So simulitis is way more contagious even than COVID-19,
right? Anytime that two people come in contact or one of them is sick, the other one gets sick.
So fortunately, COVID-19 is not like that.
Not everybody's going to get it.
But even if a large slice of the population gets it, we just don't want us all to get it at the same time.
Even if it's still around next year and people are still getting it, we just don't want there to be so many people that the hospitals can't keep up with the number of sick
people. That's the key thing. In this new world of remote first, more and more teams are looking
to build video into their apps. Everything from media publications, education and learning platforms,
to communities and social platforms. If you're trying to build video into your app, you're
probably deciding between having full control by building yourself or faster dev cycles with an
out-of-the-box platform. Well, Mux gives you the best of both worlds by doing for video what Stripe
has done for payments. In a world of complicated encoding,
streaming, multiplexing, and compression, Mux simplifies all things video to an easy-to-use
API to make beautifully scalable video possible for every development team. Mux lets you easily
build video into your product with full control over design and user experience. Videos delivered
through Mux are automatically optimized to deliver the best viewing experience.
And you don't have to deal with the complaints
about rebuffering or videos not playing.
Get started at get.mux.com slash changelog.
They're giving our listeners a $50 credit to play with.
That's over an hour's worth of video content
that you can upload and play with
and check out all their features,
including just-in-time publishing,
watermarking, thumbnails, and GIFs.
To get the credit, just mention Changelog when you sign up
or send an email to help at mux.com,
and they'll add the credit to your account.
Again, get.mux.com slash changelog.
Let's talk about the visualization process i suppose after the visualization after the
visualization right so when you go to the top of the post that you've written you sort of have
this quadrant of each different distinct type and i just think it's kind of interesting i'm curious
if this was your idea or how this came about where you would – I guess they kind of become icons to some degree, and they wipe into – the timeline is spread for each graphic.
I'm trying to visually describe this so the listeners can get – can grow out this.
But if you go to the link in the show notes, you'll kind of get that much more easily.
But basically each icon represents the simulation for each different version, so free all and all the different ones we've got here they sort of wipe in each of them
this is interesting because it's like this is the time it takes and here's an easy visualization of
that curve you mentioned flattening the curve and you can see in that first one free for all where
the curve is highly spiked you know so many people have it all at once, whereas the extensive distancing one in the bottom right,
the curve is flattened.
And you can see that while, as you mentioned,
simulitis is more contagious than COVID-19,
everyone over the timeline may eventually get the disease,
but the curve is stretched over the timeline
better than sort of all at once.
Yeah, and I think that's one of the virtues of
the graphics in the article is that like, they're really simple and pretty much everybody has seen a
area chart before, you know, where you have the change over time represented as these different
areas of different colors. And so what it's doing is like, it's leveraging the knowledge that people
already have of this chart type. So you immediately get it.
You don't have to learn a new chart type or something to try to understand what's going on.
So there's nothing at all complicated.
And in fact, one of the things you learn when you're first learning how to make charts is that you should always, always label your axes.
Label your x-axis, label your y-axis, let people know what the units are.
But in this case, I could defy that advice, like the X axis, like, you know, it's time, right? And like, I kind of use the metaphor of a loading bar. Like it doesn't represent days or months or anything. There's no mapping between how long
it takes a simulation to run and how long something might happen in real life. So it's like
the simplest possible chart you could imagine. And even like the vertical axis, which represents the
number of cases out of the whole population is also not labeled and it doesn't need to be labeled
because like
it's just so simple and obvious what it means and i think for a lot of people who design graphics
like and i'm i'm just as susceptible to this as anybody but we often want to create new visual
forms you know like experiment with how can you encode data and with a different mark or different
you know can i make some kind of crazy looking thing with different connections and stuff like that?
And it's fun to try to do that sometimes.
But when you do that, you're asking your reader to learn a whole new visual language before they can even start to understand the content of your graphic.
Right. So they have to understand the form before they understand the content.
So one of the virtues of using these really simple graphics that everybody knows is that
they can immediately just start to understand the content of it rather than having to try to learn a
whole new visual language. So like the only other charts besides those area charts is like there's
one chart at the very beginning that just has like a going straight up just to explain what exponential curves are and then there's like these little tables right that are
at the top left of every one of the simulations and those tables have like three rows and two
columns like it's the simplest thing in the world right everybody can read that like i said there's
no challenge to learn how to read it before you can start to understand what the content is
the whole thought process that goes into designing these visualizations to me, in many cases,
is a lot like the way you would design an application or a website's user experience,
right?
The idea of keep it simple, right?
Sometimes you add silly or stupid on the end of that.
We're not going to do that here, but just keep it simple, right?
It's a common thing.
That's why Steve Krug wrote, don't make me think, right? A lot of the same methodologies. Have you
read that book by any chance? I haven't, but it sounds like something I'd really be interested in.
I'm writing it down right now. I would recommend it. It's really focused on, I would say like
search and information. And a lot of cases, this is the things you're dealing with too, but
a lot of that same principles overlap here. It's like the more simple you can keep
the thing you're trying to communicate. That's why memes in many cases are very simple too.
In many cases, they're just very simple, but contain complex meaning.
And that's what you're trying to do here. So I'm just curious, what are some of the things you do
that are prior to even designing? Do you sort of like start with the audience,
what you're trying to communicate? What are some of the early steps you go into visualizing
these things? Not just this one in particular, but anytime you're working on this kind of stuff.
There's this great talk that you can see on YouTube by Mike Bostock, who's the creator of
D3JS, which is probably the most popular library, JavaScript library for
making charts. And the talk is called Design as a Search Problem. And he talks about the way that
you create data visualization designs. And the sort of point of the talk is that it's a really
iterative process. So you don't know if something is going to work until you see it a lot of the times. And
you can kind of like, you can picture what it's going to look like and you can describe it, but
until you see it on your computer screen or on, see, even on a piece of paper, it doesn't usually
work because you need to have the real data. So until you see it on your computer screen,
you don't know whether something works or not. And then also like, so what I do a lot is I'll
make something, you know,
and it'll take me a few days. I'll be looking at it all day while I'm making it. And so to me,
there's no challenge in understanding what it is. So what a crucial step in every design process is,
is to show people and show somebody else, show it. Yeah. You got to show somebody else. And
in fact, you should show a wide variety of people because so like I work on the graphics team, is one of the best audiences for my charts because
a lot of times she'll look at something and she'll just be like, I don't get that.
It doesn't work for me. And she won't even necessarily be able to say why,
but that's really useful feedback. Like if something doesn't work for somebody,
it means it doesn't work. Like it's not their fault for not being able to understand it. It's
your responsibility as the designer to make something that's clear enough. And that doesn't necessarily mean that something needs to be stupid or unnecessarily simple, but it just
means that you have to eliminate whatever unnecessary complexity is there so that you're
communicating the idea that you want to communicate as efficiently as possible.
So like with this graphic, for example, one of the early design ideas that I had was that it would be like what we call scrolly telling.
So the thing changes as you scroll through the story.
Oh, yeah.
I thought that'd be pretty cool, you know, like to have the simulations advance as you scroll or something. And anyway, so I showed it to people who I work with and they're like, oh, it doesn't work what i wanted it to do but but it's like well it's
not giving the effect that you want so you got to delete that code and start over and so you know
that's that's just how it is your process seems to use paper to some degree but you're saying
you really need the data component because you can't tell if the visualization is going to work
yeah and even then so it sounds a lot like you kind of go right into,
maybe spend a little bit of time in concepting,
maybe with pencil and paper or some sort of visual to get an idea.
But it sounds like the faster you get to some sort of working code, the better.
Yeah, definitely.
And it's like really a trial and error kind of deal.
If I do sketch something out, so I have a notebook next to my desk
and it's like a really narrow reporter's notebook.
And that's the best notebook for sketching out graphics that are going to go on the internet.
Because like a lot of times you'll have this idea for some really cool graphic, maybe like
a network diagram with all these nodes connecting to each other.
And then you realize like, oh my God, more than half of my readers are going to be seeing
this on a phone.
And there's no way that like this is going to work. So if I ever sketch something out,
it's on a really narrow notebook, just to be like, is this going to fit into 400
pixels? Because if it's not, I can just throw it out right now.
Luckily for this post for you, you got the full page width
and then some. So you got the full width of your words even.
So you weren't limited to just a column. You got as much as your text got,
your graphics got, maybe even more so.
We went wider than the graphics actually,
at least on desktop.
So if you load that on your phone though,
it scales really nicely into the size of a phone.
It's just down one column.
And it works just as well on your phone
as it would on your desktop.
Let's talk about tooling a little bit then.
So if it's getting into the data, you've got a team,
you've got to share data, you've got to share and collaborate.
What are some of the toolings you all use to,
one, iterate on your own to just be creative,
but then two, to share and collaborate?
It's different for everybody.
I mean, depending on what tools you like to use,
it's not like you have to write in JavaScript or you have to use R to do your data analysis or whatever.
So there's a lot of freedom with regard to that.
We use GitHub for version control, just like about everybody does.
There you go.
So that helps us, you know, all work on a project together at the same time. In terms of developing interactive graphics for the
web, JavaScript, I can say pretty unequivocally, is the way to go. It's the best language for that
just because it compiles in your browser, so you don't need a server. And it just makes things a
lot faster. And so as a result, a lot of tools have been built in the JavaScript environment,
like D3 and other things
to make it easy to make interactive charts on the web. So I think a lot of us use D3. For data
analysis, though, there's a wide variety of tools, because JavaScript right now is not that good at
big data analysis. I mean, one of the big problems with JavaScript is that data is usually represented
as JSON. And JSON is a pretty inefficient format for data because like if you think of a JSON object, every column name is going
to be repeated in every row. And so like the same data set represented as JSON is going to be like
half the size as a CSV. So that's just one problem. And also like browsers have memory restrictions
and things like that. So, and that's going to be changing over time. And also like browsers have memory restrictions and things like that.
So, and that's going to be changing over time.
And I hope that at some point JavaScript is just as agile as any other programming language
for doing data analysis.
But so as a result, I think the two big ones that people use, at least on my team, are
Python and R.
And it's kind of a funny like breakdown.
I mean, some people are able to use both, but
usually it's like you're a Python person or you're an R person. I'm personally an R person.
And it's not because I think R is a better language. I don't. I've written a little bit
of Python and I think it's really wonderful and elegant. The reason I use R is because of R
Studio. I'm a really visual type of person, and the design of the RStudio
coding environment is really good. Just the way it's laid out, it's laid out into four sections.
So you have your graphics down at the bottom right, you have your console at the bottom left,
you have your program that you're running at the top left, and then you're right, you can see
top right, you can see all of the variables and data that you have stored so it's just like visually it's a really nice way
to think about a program whereas a jupyter notebook i don't like as much because it's just
like it's a big long list of things and sometimes it's confusing the order in which things evaluate
so even though python might be a better language, like I don't
really like R as a language, but I just like the environment in which I can write R. If somebody
wrote an R studio for Python, I'd love to switch over.
What up, nerds? I got some pretty awesome news to share with you. Pluralsight is totally free
for the entire
month of april i'm not kidding seriously head to pluralsight.com slash changelog and skill up while
you stay at home for the entire month of april you'll get access to over 7 000 courses from
experts in software development security cloud and data there's never been a better time to skill up
head to pluralsight.com slash changelog again plurals site.com slash changelog again portal site.com slash changelog
so harry this post you've written was the most read post in Washington Post's history. I mean, that's massive.
That's huge. Congratulations on that. I mean, that's just massive. And that shows that to be
a graphics reporter like you are, you know, we've talked about the different facets of
your skills and the things you do, but just how influential you can be, especially at a time like
this when we need less misinformation and more clear communication.
And I think that's what you've done here is visualizing COVID-19 the way you've done
to me was very impressive.
It helped me grok a very complex idea into a very simple, actionable thing for me, myself
and my family.
And I think that's just super cool, man.
I mean, I don't even want to say it's just amazing to me that this kind of post, this
kind of thing you do has has become like one of the most read posts on Washington Post.
That's just it's massive.
Yes, it's crazy.
I mean, it's kind of like catching lightning in a bottle a little bit.
Like I definitely couldn't have anticipated that it would do so well.
And if I published it a week later, maybe it wouldn't have, you know, it was just kind of like the right time for it for where people were. I mean, when I published it, there was still,
you know, you were seeing videos of college kids in Florida on spring break saying,
I'm going to party no matter what, you know? And so that's, we're kind of moved past that now,
I think for the most part. So I think it was what people needed at the time.
But I also like in general, I would say that like the news business across the board is going through a crisis right now because our sources of revenue have really dried up.
Online advertising is not nearly as lucrative as it was to advertise in print.
And so newspapers across the country, across the world are cutting staff. And it's kind of sad because
so people who do what I do a lot of times are seen as like a frivolous extra expenditure,
you know, and in a way like I can relate to that view because, you know, if you don't have somebody
who's covering city hall or you can't afford someone to cover the local sports team, like
you're not going to get a graphics reporter. So I totally
get that. And a lot of newsrooms are going through really, really hard decisions right now.
But on the other hand, if it is possible for a newsroom to pursue this kind of storytelling,
where you're leveraging the interactivity of the web, and you're trying to take advantage of new
ways of telling stories that can be more engaging to readers. I think it's a good idea to
pursue that. And, you know, I'm not a business person. I don't look at profit and loss sheets.
And so it's probably easier said than done. But I do know that the places that have early on
embraced interactive storytelling and digital storytelling have been more able to weather the kind of economic storm that has befallen the journalism industry in general.
I mean, you look at the New York Times, like they were one of the really early adopters and a lot of their most successful and popular pieces have been sort of interactive graphics.
And it's the same thing with the Washington Post and a number of other places. So it's not just my story. Like, you know, like I said, I kind of
caught lightning in a bottle. And, you know, this one happened to do really well. But like, I think
a week after my story was published, we published a like different people on the graphics team
published a story that was like a calculator, where, you know, the $2.2 trillion stimulus bill was coming out.
And so you could go to this calculator and tell it a few things about yourself,
and it would tell you how much money you could likely claim from the stimulus package.
And that's just news you can use.
Everybody's wondering this.
It's a really simple design, and it tells you important information.
And that one also just got a ton of traffic, which is, you know,
great for our readers because obviously they found it useful.
And it's also great for the company because, you know,
it's a subscriber based and advertiser based. So, you know,
you want to have more of a readership. So, you know, that, so,
so I think that these sorts of interactive stories can be really,
really successful.
No, I agree with you though, on the you on the timing thing because, I mean, one, great visual idea, very simplistic in its delivery, 100% the right kind of content because if you were similar graphics with a whole different problem, less people would care. So, I mean, it really is perfect timing in many
ways and perfect story in many ways and perfect visualization in many ways to sort of create this
perfect example of an article on the Washington Post that could outperform every other post in
all of its history. I mean, that doesn't happen often. It is a unique kind of timeframe for that. One interesting thing to that, when you mention the outlook on journalism or outfits like yours in this sort of coming storm, as you mentioned, what I Firefox web browser. I often get yelled at whenever I go to pretty much
any, you know, the New York Times, the Washington Post, I get yelled at essentially for using an ad
blocker. I'm just using a browser. I didn't actually turn it on. It just does it for me.
But the point is, is like this post was not gated while other posts around coronavirus or COVID-19
are gated. Were you a part of that decision behind that?
Like what made this one be that non,
I mean, obviously it being not gated helps its virality and its, you know, its views too.
Yeah, definitely.
I mean, these are decisions that happen over my pay grade,
but we have removed the paywall
for a lot of coronavirus content in an effort to,
you know, like this is vital information and we want our readers to be able to see it without having to pay.
And also it's a way to expose the Washington Post's great journalism to, you know, a wider
audience, which is, you know, going to be good for the business. But yeah, I mean, I think,
you know, broadly speaking with regard to paywalls, like one
of the things that's happening right now is that there's a lot more traffic to news sites
in general because people are at home and also because people are freaking out and want
information.
But a lot of news sites are not able to take advantage of the increase in traffic because
even though they're getting more traffic,
advertisers don't have as much money as they used to to buy ads.
And so if you're a news site that's 100% advertiser supported, the increase in traffic
isn't really doing that much for you.
But for news sites that have been able to successfully move over to a subscriber-based
model like The Post and The Times where you're actually asking your readers
to pay some kind of fee to access your content, then they are able to take advantage of the
increase in traffic. So again, not a businessman, this is just kind of like me and my random
thoughts, but I really like the idea of a subscriber-supported news organization rather than an advertiser-supported news organization because it also aligns the goals of your reporters with the interests of your readers.
So it's like you're collecting news and you're reporting on news for the people who are reading it and they're telling you that they like it by paying for it
rather than you know i'm just going to make some clickbaity thing to get the most random eyeballs
so that it pleases an advertiser so i think this coronavirus situation is really
further you know exposing the difference between those two models i couldn't because of the paywall
and i'm not a subscriber to the Washington Post. Sorry about that.
It's all right.
Maybe at some point I will become.
I'm just one of those people who I guess don't.
I just don't.
I don't know what to say.
I feel bad.
Now you are sort of like indirectly shaming me.
I'm just kidding.
You're not.
I'm just being funny.
I couldn't see how much you've written beforehand. So you mentioned before lightning in a bottle, perfect timing, things like this.
Like how much – you've been there since earlier this last year right like you hadn't been at the post for
six months maybe right yeah six months something like that so how many times have you had your own
personal byline on a post out there uh yeah i mean i haven't done too much stuff uh because
it takes me a little bit a lot like a like a daily beat reporter can just file stuff every day.
Yeah.
I code stuff up and it takes a little longer.
But I've done, you know, done a few stories, like maybe 10 stories or something like that.
I'm not sure exactly how many.
But yeah, like nothing even close to the kind of response that this thing has gotten. And that's actually like,
it's something that I've been thinking about a lot.
Like what is the metric by which we evaluate how good our work is?
You know, like, because, you know,
as somebody who has been focusing on improving my craft,
like I want to keep getting better and better.
And now it's like, okay, well,
if traffic is the metric by which I evaluate my own work, then it's probably going to be tough to top this.
Right?
But, of course, web traffic is not the only way that we evaluate how good our work is.
You know, there's like, you know, how well do I think that I communicated whatever idea it was that I was trying to communicate, you know. So even after the coronavirus story is over and people aren't reading the news as much and they don't feel
the urgency to share this thing, you know, I'm still going to be doing my job and I'm still
going to want to be trying to get better at it. So it's almost been like a personal crisis to me
because, you know, throughout my career, you know, it's been important to me to like keep trying to
improve. And so I've just been thinking about like like well how how do i keep improving when i've done the story that was so popular and the way
that i think i've come to conclude is that like just keep focusing on what the craft is like what
makes excellent visual communication and and so focus on that rather than this kind of external
metric that's you know there's so many factors that you can't control about that anyway.
Yeah, it's all about, you know, outcome goals.
We've actually, I mentioned brain science earlier, we've talked about this sort of around
habits and goals and things like that.
And there are things about certain goals that you just, you have no influence over the outcome.
So the things you can do that sort of stimulate you and keep you in a good spot is by
focusing on the process, right? Like if you could show up and iterate on the things that you find
valuable to the things you do well and things that influence well, then those are the things
that are going to be pushing the boundaries. I mean, yeah, you may spend the rest of your career
chasing the influence you've had here.
And that might be true.
But that doesn't mean that the rest of your career is no better than it has been.
Right?
Because how often do you get a chance to hit a grand slam in the most crucial part of the game?
Right?
The World Series, something like that.
I'm using a baseball analogy here.
Like this is a grand slam, right?
I wouldn't spend the rest of my life if I were you chasing the story.
It was the ball that never came down.
Yeah.
I mean, in a lot of cases, that's pretty – I never really thought about that until you mentioned it.
How do you keep improving your work when you've done your best today?
Yeah, but you're right.
It's about the process.
And also about, I think a lot of times you've got to be the final arbiter of what is good and what is not good.
There are going to be sort of external indicators that something worked and something didn't,
but that's not the final judgment.
The final judgment is you.
You know what's excellent and what's not.
And what is the process of improving at this craft involved?
And that's really all you can control.
So that's what you got to focus on.
Yeah.
What's next for you, I suppose?
Has any new opportunities opened up for you?
Not so much elsewhere, but within the post.
Have you gotten some initial credit for this great work have you
you know gotten more pats on the back recently have you gotten led into you know secret meetings
where new data is shared that no one knew about before that you can now create amazing visuals
like what's what's happening for you uh well it's people have been really nice uh in terms of just
you know being supportive and encouraging because, you know,
it's like, you know, when you're rounding third base and coming into home and, you know, your
team comes out and gives you a pat on the helmet. So definitely that's been real nice. But yeah,
like, so we just kept working. I mean, after this, I did, I just published a story yesterday
about how the president has sort of changed his position with regard to how to deal with the coronavirus since he first began talking about it in January until like, you know, at the end of this month where he's been kind of talking to assure people that it was not a big deal and that it would go away.
But then as cases mounted, he's really changed his attitude.
And then so we showed that story in a visual way with cases increasing.
And so it's kind of like sometimes I get assigned to do stories.
Sometimes I come up with my own ideas, but it's just you just keep going.
Unfortunately, that story is behind the paywall.
So that's why I can't speak to it very well.
Cause I got hit with the whole, Hey, you should be a subscriber, Adam.
What's wrong with you?
Stop using Firefox and blocking your ads.
You're a bad person.
It's like, sorry about that.
Washington Post.
I'm not a subscriber yet.
Yeah.
Well, that's okay.
No, I mean, you, you gotta do what's right for you, you know?
And if you're using Firefox, that's not no i mean you got to do what's right for you you know and uh
if you're using firefox that's not a bad idea it's interesting this world we were in though too is
that uh you know everything is a subscription away you know like i i don't reluctantly share
my money with netflix disney and a couple others for content on the entertainment side. But for some reason on this
side of consumption, people are more reluctant to share their dollars. I don't know why that is.
You should look into that. You should do some visualizations around that.
I have a theory about it. So I remember like in 10 years ago, if I was going to watch a movie,
or let's not say me, let's say one, if I was going to watch a movie or let's not say me, let's say one,
if one was going to watch a movie, they might download it as a torrent, you know,
from like BitTorrent or something. And it was like a little annoying to have to do that. Like
you knew that you were pirating something, uh, which you weren't supposed to do, but it was free
and it did work. Now, like that option is still
there. You can get it for free using a torrent site, but a lot of people are paying for Netflix
and Amazon prime and Disney plus and all this stuff. And I think the reason is that it's like
the difference in quality between Disney plus and bid torrent is just huge or Netflix. Like it's so
much easier to navigate Netflix.
And they have a pretty good content selection.
And so you're like, yeah, I'll pay for this.
Even though there is a free option, I'll pay for this.
And then, of course, there's also the fact that, well, the free option is pretty inconvenient and also illegal.
So a lot of people don't want to do that either.
So it's not a perfect metaphor for the news industry.
But like, so there's this huge, huge amount of free content out there, which is not illegal
to access.
So, and it's really easy to access.
But the idea is that if you want people to pay for the news, rather than use the free
option, the paid option has to be that much better than the free option.
Right.
Like your paid options got to be Netflix to, you know, BitTorrent.
And that's really, really hard to do in the news industry because, I mean, like I said,
like the free stuff is like, it's so easy to access.
And like, there's still a lot of pretty good free stuff out there.
You know, it's not like BitTorrent. It's pretty good.
So for news companies that want a subscriber base to be good enough to differentiate themselves from the free stuff is a huge challenge. And I think not very many places have been able to do it.
Yeah, that is a very interesting challenge. Let's influence some people. There's definitely
some listeners out there thinking, gosh, man, I got uh i got some skills here i've never considered being a graphics reporter would
you suggest this is a fun career to do what were your thoughts on this i haven't even asked you
this yet it's like do you like what you do do you enjoy it yeah enough to say hey you should do it
too i mean i think it's awesome i you know i've never really thought that much about doing anything
else i don't know what like a software engineer gets paid.
It's probably more than me.
So I don't know.
But one of the things I like about my job is that like you do get to interact with the public.
Like you get to publish stuff that people see and that might change their minds, make their lives better.
So that's, you know, really satisfying kind of goal to set every day.
Also, a cool thing about it is that like you get to think about new things all the time. So
like, I mean, it's hard to believe, but like earlier this year in January, the big story was
these fires in Australia. So I was doing a story about the wildfires in Australia. And then I was
doing a story about the impeachment trial, because that was the biggest story. I've done stories about, you know, all kinds of things,
like space and climate change. And so it's sort of fun to like come to work and get to,
you know, learn new things and work on new problems all the time. So like, I think if you
are a little bit, you know, public minded and are sort of curious about the world, you know, it can be a great
career path, like for somebody who has software developing abilities and, you know, kind of a
knack for communicating ideas to people. I mean, it takes practice too, you know.
It does. Well, all things. That's the interesting thing too. And I'm glad you said that because
most things that are skill driven take
practice you don't suddenly wake up tomorrow and become an amazing visual artist or a graphicist
reporter you've got to put in the work the years the time it's tooling it's skill set it's passion
it's ambition it's all these different things that sort of mix up into one that make it even
possible yeah I mean you know the first stuff that i made was not good
right like the first visual stories i tried to make and the first charts i made were bad
because i didn't understand the theory behind it about how to communicate ideas to people
visually and i didn't have the technical skills to like make something that was good. So when I started out, like I knew,
like the first JavaScript charts I made
were with this Google Charts API,
which is like, doesn't give you that much control
over the final outcome.
It's like a really simple thing.
Like basically you plug the data in and here's a bar chart.
And I just made like bad charts.
I made a lot of bad charts.
If I go back to my old stories, I'm like,
oh man, this is not very good.
But you know, you just keep doing it and you get better over time.
Here's a closer for you.
If you can rewind a few years or just think back, if somehow you could send a message to five years ago, Harry mean, I was kind of like doing journalism and I'd kind of gotten into doing the graphics thing.
And at that point, like I was like I wasn't very good, but I didn't know how bad I was.
So I was like I had an unearned confidence that actually probably was good for me at the time.
But I think what I wish is I could go back like 15 years or like 20 years even. Because I was a pretty bad student in school.
And one of the reasons for that is that I didn't really like anything that I was learning
and didn't really see the practical application of
any of it. And I use math in my job every day now. And I just wish that I had been exposed to
computer programming at an earlier age because it's just like, it's really opened up a lot of
kind of options for me intellectually. Like it's really made me interested in math and algorithms
and all sorts of things that i never thought i'd be interested in because when you can program it
you can kind of see it and feel it a little bit more closely than if math is just represented on
paper so uh i don't know i think i would go back to myself and say like, hey, you should try to try to learn how to program because you're really going to like it. And if I had started earlier,
you know, then then I'd have an advantage now. Like, so I didn't study computer science at all.
And so there are certain people I work with or people I know from the Internet who did. And
there's like just a big gap in knowledge between me and them in terms of certain things, you know, not like the most important things, but, you know, just in terms of like familiarity with certain concepts that I just wish that I had, I had learned when I was younger.
So, you know, that would, that would be the only advice I give to myself is like the school thing seems, seems really boring to you, but it's because you're maybe doing it wrong.
What's doing it right then?
Just paying a little more attention.
I mean, how do you, how do you even get that that sort of foresight
from that long ago i mean how do you how would you have done school differently then you know
so i don't know and and like i don't really have too many regrets because you know things turned
out okay but uh i think that i would have tried to expose myself to computer programming earlier
because like i had no idea
that it's something that I would like so much and I only started doing it when I was like in my late
20s so if I had started in my teens like not only would have given me something to do in an academic
environment that I would have liked but it might have also like sort of started my mind on this
kind of path of wanting to learn more which uh which I didn't really have until later yeah well
Harry it's been interesting to talk to you through your history as a graphics reporter,
but then this lightning in a bottle post you have.
Congratulations on it being the highest performing post ever on Washington Post.
That's an amazing achievement.
I hope that your future endeavors are as profitable personally and professionally as this one has been for you.
And thank you so much for just – I mean it was influential to me.
I'm sure it influenced a ton of people throughout the world.
And this time right now, we need clear information, not misinformation.
And that was just such a perfect thing to visualize the change.
The change of the world was the most thing.
Like everyone was already in the free-for-all.
We needed to understand easily and concisely
the visual aspect of extensive distancing,
which we've all begun to practice to flatten this curve
and to hopefully make it through this.
I've heard this thing so many times,
the unprecedented times.
How often have you heard the word,
this is unprecedented times?
It is, it is, but everybody
does it. I hear it 10 times a day at least. If you watch the news, you hear it 10 times a day,
at least. Yeah. I mean, nobody has lived through something like this. Even our grandparents have
not lived through something like this. We're all kind of flying by the seat of our pants right now.
Yeah. That's well-spoken words, my friend. Thank you, Harry, so much for sharing your
time with us. We appreciate you.
Thank you.
Thanks a lot, Adam.
All right, if you have any thoughts to share
on coronavirus, this pandemic,
we're all dealing with any questions for Harry,
head to the comments at changelog.com slash 390.
And of course, you can comment
on all our podcast episodes at changelog.com.
Pop up in your show notes
and click discuss on changelog news.
We'd love to hear from you.
And while we're at it, support us by telling your friends, send a text, send a tweet, send
an Insta story, pick your flavor of influence.
We do not discriminate and we appreciate it.
Special thanks to Breakmaster Cylinder for making all of our beats.
And of course, we're brought to you by some awesome partners who get it, Fastly, Linode
and Rollbar.
And one more thing, we have a master feed
that brings you all of our podcasts in one single feed.
It's the easiest way to listen to everything we ship.
Head to changelog.com slash master, subscribe,
or search for ChangeLog Master in your podcast app.
You'll find us.
Thanks for listening.
We'll see you next week.