The Changelog: Software Development, Open Source - The burden of open source (Interview)
Episode Date: March 9, 2017James Long joined the show to talk about his recent post, "Why I'm Frequently Absent from Open Source". He shared several points in his blog post that struck a chord with us, so we invited him on the ...show to talk through the gritty details and peel back the layers of open source — the people involved, sustainability, the responsibility, the guilt, and the balance it takes to keep it all together.
Transcript
Discussion (0)
Bandwidth for Changelog is provided by Fastly. Learn more at Fastly.com.
I'm James Long, and you are listening to The Changelog. Welcome back, everyone.
This is The Change Log, and I'm your host, Adam Stachowiak.
This is episode 242, and today, James Long joined the show to talk about his
recent blog post, Why I'm Frequently Absent from Open Source. He shared several points in that
blog post that struck a chord with us. So we invited him on the show. We pulled back the
layers of open source, the people, the sustainability, the responsibility, the guilt,
and the balance it takes to keep it all together. We have three sponsors, Rollbar, Top Towel, and Compose.
First sponsor of the show is our friends at Rollbar.
Rollbar puts errors in their place.
Head to rollbar.com slash changelog, get the bootstrap plan for free for 90 days.
And today I'm sharing a conversation with you that I had with Paul Bigger, the founder
of CircleCI, and he talked deeply about how they use Rollbar and how important that tool is to their developers.
Take a listen.
We operate at serious scale.
And literally the first thing we do when we create a new service is we install Rollbar in it.
We need to have that visibility. And without that visibility, it would be impossible
to run at the scale we do. And certainly with the number of people that we have,
we're a relatively small team operating a major service. And without the visibility that roll bar
gives us into our exceptions, it just wouldn't be possible. Oh, that's awesome. So listeners,
we have a special offer for you. Go to rollbar.com slash changelog.
Sign up.
Get the bootstrap plan for free for 90 days.
That's 300,000 errors tracked totally for free.
Get Rollbar trying today.
Head over to rollbar.com slash changelog.
All right, we're back.
We're talking to James Long today.
And James, welcome to the show, man.
I'm so excited to have you here.
Read your post.
Got all goosebumped after I read it.
I felt like a kindred spirit, so to speak.
Hey, yeah, I know.
I'm super excited to talk about it.
I honestly am at the point where I really enjoy talking about things around tech and tech itself.
So I'm super excited.
So I guess we couldn't start the show without mentioning the fact that Jared's not here.
And the reason Jared's not here is because Jared shipped a longtime running side project called Nora, which is his new baby girl.
He and his wife launched that project, as he had said on monday which is
great so uh jared thanks man uh glad you got your daughter here and have fun uh with time off but uh
you know jared actually teed up this conversation with you he emailed you and said man i love this
post in the post we're talking about is called why i'm frequently absent from open source and
you know here on this show we cover this quite a bit.
We actually launched a whole separate show called Request for Commits with Nadia Ekbal and Michael Rogers
to kind of cover that human side of code.
And I kind of feel like this is part of it.
But we obviously have a deep passion for open source, a deep passion for the people of open source,
the code that gets written because of it,
all that good stuff.
Like,
but at the end of the day,
it's about people,
you know?
And,
uh,
your post really struck a chord because at the end of it,
and I'm,
I may ruin it for somebody.
I don't,
maybe I shouldn't do that.
But at the end of it,
it's like,
uh,
it's more like a,
it kind of felt like a love letter to your wife.
Not,
but not really.
It was more like,
this is why I'm absent. And I love you, my wife of six years,
you know? Yeah. Yeah. It's kind of funny. I,
I've been meaning to talk more about this.
And so this was supposed to mostly be a tribute to my wife.
The first half of the post was probably a little bit more of a dump than I meant it to be, because I mean, we need to write a separate post about this, like, like, just focus on that.
So I wrote this in like an hour on Sunday, like before we went out to dinner, and then I showed her the post at dinner.
And it was it was awesome.
But I read it now and I was like, wow, there's like a lot of thoughts in my head that I sort of dumped there.
But yeah, no, it's it's it's a it's it's a good
it's a good thing to talk about and that's what we're having you in the show because i felt like
it was a bit of a drive-by shooting in a way i kind of felt like you had more to tell obviously
you shared some pretty good points in there uh clearly not simply to your wife they were more
towards the open source community and more like, uh, warning signs slash battle scars slash advice.
So it kind of makes sense to say,
Hey,
James,
great post.
Can we talk to you on the show and kind of dig into some of these points,
uh,
and go from there,
but just to kind of give some substance to where you're coming from,
help us understand a bit of your history with open source.
Sure. So it's interesting because the more I think about it, I think I did sort of grow up with open source.
I mean, I remember Netscape being probably the first browser that I used.
And I remember Firefox, you know, sort of that.
I don't really know why, but I guess I was sort of loyal to Firefox even in like the early 2000s.
Oh, yes. Me too.
So I was like, I guess, I guess because that was just, you know, the feel good browser.
Like it was open source.
It had this sort of really good aura around it compared to the dominance of Microsoft, which is this big evil corporation.
You know, that sort of message, I i think was around a lot in the early
2000s um and somewhat for good reason and so yeah so i think we all sort of fell in love with
firefox and it really did push a lot of the web forward and it was amazing um and that sort of
brought in you know that was open source and it's not like i ever i don't i don't remember ever
reading the code of firefox or anything like that but I do remember, I guess that sort of just, um,
paves pave pave the way for when I actually started doing more development.
I mean, I was, you know,
I'm one of those people who did development back when I was in middle school,
which was back like in the early two thousands. Uh, but, uh, um,
yeah. So I think, I think when I started doing development, it just, it just made sense to just write code and keep it in the open.
I mean, it's not like I don't ever remember thinking, oh, I need to hide this because one day I might make money off of it or something like that.
It was more like, yeah, you know, the Internet is this amazing thing.
I'm meeting these people.
And so we can share code and we can talk about what we learned. And so I remember enjoying, I don't think I even really realized it was just like actually open source software.
I think it was just me writing code and posting it on these forums.
I remember being on this forum, gamedev.net, because I did a lot of game development in high school. And it was the classic mid-2000s
or 90s and 2000s way of doing stuff on the internet
is you go to forums and you talk about stuff.
And so we would post a lot of code
and we would talk about OpenGL
and how to do a lot of stuff.
There'd be crazy things that we were trying to do.
And we collaborated on code
just by posting code blocks,
like literal GitHub style
or GitGist style stuff,
just post it on the forum.
You would talk about the code
and then I'll go back to my code and try to do it.
And so I don't know, it was just sort of-
Very scattered.
Oh, totally scattered.
Sort of just like posting a patch on a mailing list and stuff.
So I guess it was just a very comfortable thing.
And when I started actually developing real software,
and I remember when GitHub was released in 2008, I think,
I remember just being like, oh, yeah, I mean, that totally makes sense.
It made sense to me from the get-go.
And so I would publish a bunch of stuff.
And so this was back when I was involved.
I was involved a lot in the Scheme programming language.
That's a language that's a variant of Lisp.
And there's a lot of stuff there about why
I think that's great. But it was a very, very small community. It's not like, like, it's definitely
sort of a minor community and still is. And so it was interesting thinking back about my open source
experiences there, because this open source in a small, a very small community really is a special
thing. Because there's, there's just not that much work to be done.
Like, you know, JavaScript is this huge, huge community
and open source in JavaScript is just like a lot,
we have to be careful in a lot more different ways
because you can just be overloaded
with a lot of different stuff.
But I remember developing stuff
with these other like 20 scheme guys, right?
And like we would share code on github i would write some stuff i'd get like an issue every three weeks you know it
really wasn't that big of a deal um and i think that was also back when open source just was not
as big as it is today either so i think it i think it was just a lot easier back then um so but then so and then i started doing a lot more stuff in the last 10 years and blogging a lot about myself and getting more followers on Twitter and GitHub and still posting stuff to GitHub.
But I think it has sort of evolved.
And now I'm realizing today, which is where we are today, just like, man, open source can be really hard as well.
I almost feel like it's changed.
You know, I feel like there's a lot more pressure.
Maybe it's the accessibility of it.
Maybe GitHub is, you know, to it, to its great abilities and its great accomplishments.
It's also to a fault in a way, because I feel like the accessibility in the,
and maybe just the pressure of it, or just the importance of it to the world where, you know,
they say open source is one, you know, and, or it's eating the world, software's eating the world,
and open source is a big part of that. Like Instagram wouldn't have been able to be a
billion dollar company if it hadn't stood on the shoulders of giants. And I kind of feel like
maybe it's changed to some degree
over the years maybe maybe because as we come as we become more of a tech society there's a lot
more pressure on it and so maybe the the you know the attributes around it has changed what do you
think i think that's true for sure uh i think in some ways, as it becomes more mainstream, there's almost this pressure to be
more, almost sort of more commercial, right? Like commercial products have like, it's one product,
you go to one place to like report bugs and work with people and you expect those bugs to get fixed.
I feel like, like maybe this is an indicator of this is just like, I don't feel like people are
very comfortable with forks like
the forks of a project indicate are bad right because they indicate something's right yeah
something's fractured something's not right that's not right yeah like which fork do you have no idea
even um yeah like i mean like are there like are the maintainers at odds with each other now and
like which one do i use now like you know this one has this feature this other one is this feature
but like if you think back to the older open source community i mean that was like the whole point at odds with each other now. And like, which one do I use now? Like, you know, this one has this feature, this other one has this feature.
But like, if you think back to the older open source community,
I mean, that was like the whole point.
Like you had like four different forks
and they would go off in their own direction.
And it was just awesome.
I don't really know what to do about that or why.
I don't know.
I don't know why that's changed.
But I do feel like that's probably,
there's pressure there's this, there's pressure to, to have this like really polished product. That's just one product living under one space.
And that is sort of where open source can get a lot harder. I feel like.
Yeah. Well, for the listeners you know, we invited James on to, to have a conversation
around this post that he wrote
why I'm frequently absent from open source
and we'll share that link in the show notes
so if you're already listening to it on your podcast app
you know go back to the
to your app
look for the show notes
you'll find a link there at the very top
we'll make sure that post is the very first link
in our show notes
so that you can easily follow along
but we're going to kind of dive into
some various sections of this post and that's kind of what we're going to kind of dive into some various sections of this post.
And that's kind of what we're going to have a conversation on.
It's like you put a lot out there, like you had said earlier,
you kind of dumped a lot of thoughts out there.
And I kind of want to dig into some various points that you'd written.
And in the end of it all, it seems like what you're really trying to say was,
honey, I love you.
You know, that's your anniversary of six years.
And the reason why you're not involved as much,
it was sort of like a two-part blog post six years and the reason why you're not involved as much. It was sort of like a two part blog post where it's a reason why you're not present as much and explain why.
But at the same time, you know, dropping some hints at like some various problems.
So the one thing I see that that you started off with was like the very first sentence was like pivotal.
The goal of free open source development is empowerment. And so I kind of wanted to talk with you about the breakdown first sentence was like pivotal the goal of free open source development
is empowerment and so i kind of wanted to talk with you about the breakdown of what that means
like what is why is the goal of free open source empowerment i think i think the the reason for
that is because it's uh and and this is true i i don't think this i think this is an incredible
thing about open source is that it really gives users, whether or not they're tech people, just having the choice to go in and see the actual code that some product is running, even if it's a paid product.
So it doesn't even have to be free open source.
I mean, it's a contrast to a lot of the way things are today with these walled gardens and proprietary stuff.
It is a little sad to me how the world has sort of moved towards more proprietary things.
But that was the idea in the very beginning. If you wanted to, you could even learn a little bit
about how code works and go in and see what that product is doing behind the scenes. Is it actually
listening to your voice? Is it actually sending anything on CrossFit Network? Is it actually doing stuff? And that's why Firefox, or maybe
it was still Netscape, I can't remember. That's when they released it for free, open source. It
was a completely different model. And it empowered this whole community across the world to actually
not just, I mean, not only just see what it's doing, not actually sort of verify that it's, you know,
treating your privacy correctly,
but also to even contribute back to it.
So if you see the code and you see, hey,
this could actually be a lot better,
you could actually send a patch back to the developers.
And that's super empowering to not only be able to be involved
in what it's doing, but actually be able to influence,
like have some influence over what it is as well
so i think that's the crux of it some of the things you mentioned there was um
something you also mentioned here was being able to contribute to it and influence it you know
people can teach and learn from one other uh businesses can be improved by it we mentioned
or at least i did i mentioned instagram not being able to be instagram as it is today worth a billion
dollars or more
being bought by Facebook
had it not been for the open source
they built themselves upon.
And then also being able to empower developers,
software developers,
or anyone in the software development ecosystem,
whether it's someone who actually writes code
or someone who leads communities
or leads great documentation
or does dev evangelism,
which is a huge role that people don't really think about as often as they should,
but essentially giving people the license and ability to influence, contribute,
but also become well-known leaders in the space and therefore progress their career.
Yep. Yeah. I mean, it's a multifaceted thing. I mean, I think there are multiple different open source sort of scenarios.
One is, you know, a company has some product or some library and they open source it.
And other companies sort of collaborate on it.
Or it's an individual writes something and releases it and sort of gets a lot of potentially gets a lot of credit for a
lot of like a really cool idea. It's yeah, there's a lot of positives and all that stuff. Just the
ability to give something out and collaborate on it can produce a lot of benefits for people and
for companies. Let's talk about open source is rife with problems and ultimately unsustainable.
That to me is like true to some degree.
Certainly everything has problems, but the ultimately unsustainable part is the part I want to talk with you about a bit more.
You said somebody has to pay the cost of maintaining a project.
You gave some of the details, but you seem slightly jaded. Where is this coming from?
Yeah, it's probably true. It's really hard when writing blog posts to not be a little hyperbolic.
I don't think that's a bad thing. I think that that's what I think that's what gets people
thinking. I think there needs to be maybe just a tiny bit of shock value.
Ultimately unsustainable, maybe I shouldn't have used the word ultimately. Maybe that was a little too strong. But I think the reason I wrote that is because of just the root of all of this,
like all of the times that I've released something because I thought it was really cool and it seemed
a shame to just hide it.
At least other people could learn from it,
but it's a good enough idea
to where I care about it a lot.
But when you put something up on GitHub,
and so like I said before,
there are two different scenarios.
One is sort of the personal scenario.
So this is a scenario where I'm not a company.
I was doing this on my own time
and I'm putting this up for myself.
But then it's really cool and people start using it and that's incredible
but then it's a very quick shift when you release something uh when you're it's awesome it's this
really cool project you were doing it on the side and then it becomes this liability of of your of
your time because like then a bunch of people start filing issues like it just takes like one day for it to become this burden um and that's why that's why i just say sort of ultimately
unsustainable because like you become the person that isn't and it's i think i think the most
important part is what i say down in the same paragraph i think like uh it's the rest of the
project is not nearly as much about just writing code.
It's about all of the dealing with the people, talking to contributors.
Oh, they didn't understand that the code was written in that way for a specific reason. That was actually very intentional, but their PR changes that.
And so then you have to talk to them and explain that to them.
It's a very, very time-consuming process.
And so I don't think it's ultimately unsustainable. I think it's, I think look at the results, that there is problem. There's
some pretty big problems that lead very, very frequently to people burning out really, really
hard. And that's, I mean, to not say that that's a problem would be terrible, in my opinion. I think
because we should care about the people way more than having open code that people can share. I
think it's super important that we, you know,
take care of who is in our community.
So I don't think it's ultimately unsustainable.
I just think either a company has to be subsidizing the cost.
Basically, if you're a company and you're letting your developer
spend 20% of their time, hey, like they built this cool project.
Like I know some, like Mozilla was very good at this
because they were an open source company.
They would,
even if they weren't really using their project,
sometimes they would allow you to spend
six hours a week
maintaining an open source project that you had.
And Mozilla really wasn't getting anything back for that
because they weren't using that project.
It was just something that you thought was cool.
So Mozilla was basically subsidizing that project, right? I mean, they were paying you to do all of that, working with contributors and
making sure that issues get closed and things like that. And that's what I mean by somebody
has to pay the cost of it. If it's not Mozilla, then you have to be spending those six to 10
hours a week at night when you're tired. I mean, if you don't have family, like if you do have
family, it's after you put the kids to bed. If you don't have family, it's after you've put, I mean, if you don't have family, like if you do have family, it's after you put the kids to bed, if you don't have family, it's after you've, um, you know, relaxed some,
maybe like done some other like side projects and hobbies, or just like kept up with life while all
like house maintenance or just all like running errands and things like that. You're just tired a
lot. Um, and it's, I think the result that I really want to focus on is the like, it's 11pm, you're super tired, you either want to play a video game or just go to bed. But you feel this guilt, because you know that there are those three, three requests open, and you pull them up, and you just sort of get this depressed feeling, because you don't want to do it. Right? I don't think enough people talk about that feeling. And that's sort of at the core of all of this.
That's certainly a good place to take our first pause then, because the guilt side of things is something I want to dive deep into.
But so we'll tee that up real quick.
We'll take this break.
When we come back, we'll dive deep into the guilt that we all feel from just not giving enough, it seems.
So we'll break.
We'll be back.
Our friends at TopTile are longtime supporters of this show.
If you've ever had to quickly scale your team,
you know how hard it is.
You have to go through all this hassle
of writing job descriptions,
adding them to your website,
or maybe you have to hire somebody
just to go out there and find the candidates for you.
That's a lot of work, a ton of work,
that you don't have to do if you call my friends at TopTile. They do find the candidates for you. That's a lot of work, a ton of work that you don't have to do.
If you call my friends at TopTile, they do all the work for you to find the right candidates
for your positions.
Plus, because they have a very rigorous screening process to identify the best, you know, you're
only getting qualified candidates for your open positions.
Head to TopTile.com to learn more.
That's T-O-P-T-A-L.com.
Tell them Adam from the changelog sent you if you'd like
a more personal introduction email me adam at changelog.com and now back to the show
and we're back we're talking to james long about this this absence from open source and being okay
with it some pretty raw statements from you James, and hopefully we can dig deep
into each of those and kind of uncover some of your feelings about them and maybe even some
solutions. But we teed up the break with the idea of guilt. And I'm kind of curious what you mean by
guilt towards open source because my version and your version may differ. So what do you mean by
that? I think so one of the problems with open source is that you,
you don't really have control over the activity.
I guess you're working on a project internally in a company. Uh,
you sort of can plan, you know, to expect you have,
like everyone is working for the same company.
And so you can sort of coordinate like, okay, this quarter,
we're not going to focus on this product very much.
So any requests to this project
aren't going to get answered.
For open source,
you can take a weekend off and come back
and there's 20 new issues.
And it's just this constant,
it's this slow trickle of work
that builds up no matter whether you want it or not.
And so that is where the guilt comes in.
Because if you don't work on that project for a week, you know that that slow trickle
is there.
And so in your mind, that trickle is trickling guilt into your mind over time.
It's a slow buildup.
So if you have time, like an hour every day or half hour every day to sort of at least respond to people, then you probably don't really feel as guilty.
But it sucks to have to feel that way that you always have to be responding.
Yeah, it's almost like anytime you're watching a movie or hanging out with your wife or going to the park in the middle of the day with your kids or an extended lunch.
Even you're almost like I could be closing issues.
I could be helping people.
I could be, or just knowing that there's people out there thinking,
James, bump to this issue.
Come on, man.
Yep.
Anybody bump your issues on you?
A little bit.
So I will preface this with probably about a year,
or it's been a long time since I had to maintain a project.
And some of this is coming up because I released prettier in January.
So I'm sort of reliving.
I was I was able to avoid this for a long time because I was like, this is just not healthy for me.
So I'm kind of relearning how to do all of this, especially with the family now.
And so that's that's sort of why I talked about it.
But so honestly, it's, and it's actually a really,
it's been a really good experience with this project, but I think only because I've had one or two other people
who are doing seriously a lot of work on it
and taking a lot of that burden off.
So I honestly have to say not as much,
but I've had that before,
but it doesn't happen all the time.
It's tough though. Like it's a big burden to take on, but it's, I've had that before, but it doesn't happen all the time. It's tough though.
Like it's a big burden to take on, but it's also a lot of responsibility, right?
Like if you, each of us have gotten to the place we're at because of somebody else who's
gone before us.
Right.
And, but then to be in that position and, and not, and to feel guilty because you're
not giving enough or you feel like you have to give more than maybe you're comfortable or circumstances change and you grow your family or you get a new job or just anything that's outside of that burden.
But it's also a great blessing to some people like you, like we said before, like it allows people to break out and become leaders in the space and to progress their career and write books or give talks at conferences.
So there's a lot of upside to it.
We talked a bit about some of the unsustainable pieces in kind of the first segment.
So I kind of want to circle back to maybe some ideas you might have on how to make it a bit more sustainable.
Like you mentioned that somebody has to pay the cost.
Ultimately, it's sometimes often a company that subsidizes it, whether they get some
benefit directly from it or not.
In the case of Mozilla, you were referencing them.
What other ideas do you have on ways to make open source more sustainable?
So let's talk about the common answer to this,
which is to find other people to help, right?
To delegate better.
That's always what people say.
And I just feel like that's not sustainable.
That is not, if you're having to find other people to help,
and by definition, eventually,
they're going to have to find people to help.
And you're sort of constantly fracturing off work and people leave their project.
I mean, that is a definition of unsustainability, right?
To me, sustainability is if I choose to, if I wanted to find good people to do this because it is a lot of work.
And it's not even not even that it's harder to find people who.
I'm trying to say this in a way that.
I guess is is kind, but I guess people that you can trust, right? Like people who have the same
vision for this project as you, because there, I mean, you know, there are all sorts of different
people and it's, it's like, there are people that I think are incredibly smart, but they might not
have the same vision for the project as you. And so it's, it's kind of hard. I mean, maybe that's
something that you just need to do.
And if it's just not healthy for you or you don't have time for a project, maybe you just maybe you do just have to give it up.
But what you would really like to do is find somebody who knows, like, knew your vision
and can help bring that vision into fruition.
But that's so rare.
I don't, I'm not sure if I've ever, I can't think of a time when I actually, that
actually worked out where I found somebody who literally had like the same idea as I,
usually if I pass a product off to somebody else, they make a lot of decisions that originally that
I would not have done, which is, it's totally fine. It's totally fine. But that it makes it
that much harder to sort of start delegating. when you start delegating it starts starts it starts splitting the vision up it starts splitting the you know um like people
are a bottleneck for a reason sometimes because you're the only people that can really really say
yes i wrote that code for the reason because eventually i want this code to become this
um it's a i don't know i don't know if that makes sense it makes sense i mean it kind of
reminded me of almost like you're hiring you know because you use the word trust and you only usually
hire somebody that you trust and you can only trust them through shared experiences like
somebody doesn't often come into your life uh uh, like in open source, typically from not in your hometown or typically not from the desk across
from you is typically someone somewhere else distributed.
Right.
And that's a good thing.
Yeah.
But you've got to start from some level playing ground.
So it could be their GitHub profile.
It could be their past experiences that build your trust.
It could be their notoriety or their,
you know,
who they are, their, their reputation could precede them to give build your trust. It could be their notoriety or their, you know, who they are,
their reputation could precede them to give you that trust. But if they don't have that and they're entering, you know, in quotes,
your project, and it depends on your project too,
like your project could be, or your,
your vision could be this is more of a community project versus this is james project and so that certainly
changes the dynamic dynamic of adding people to the team you know but it kind of reminded me of
like almost hiring and in that case it amps up the responsibility of your role as that project's
organizer as something that's just not something you do in your spare time it's like
well now this is kind of like a mini organization and my job is hiring and firing people or
potentially just hiring the right people yeah and i mean i think that maybe it's for my personality i
i do like just organized high quality product like code and projects um but maybe i mean maybe the answer
to part of this is just that you have to give that up in open source like maybe part of it
because it's a community because it's such a communal thing it just it doesn't fit as well
and it's not necessarily a terrible thing it just means that it just might be a little more messy
uh if that may you know um so delegation you so delegation, you know, that's, it is an answer.
I think it's, can be a cop out some ways, like people, some people responded to my posts
were just like, ah, you're just not delegating enough, you know?
And it just seems like that's such a cop out answer to a lot of the like frustration here
where you look around and just people are burning out all over the place.
It just, it's not because they can't find it. not delegating it's there's there's something deeper there um so
um i'm going to talk about answers about sustainability sorry kind of derailed no
that's okay so the answer number one is delegation but that doesn't actually work all the time
yes what's number two um i think i mean i think it does work well if you, so I think companies that do open source do tend to work better because they basically are, they're paying for the open source work to be done.
And I think it does work a lot of the times if that is work that they are using very integral into the organization.
Like I know Netflix uses RxJS a ton, and they have a couple of people who are core contributors
to RxJS.
And probably, I don't know how much, they might spend like 30% of their time on RxJS.
I mean, it makes sense for the company at that point, right?
Because they're literally paying people to build out a lot of their really powerful infrastructure.
But doing it open source means that they get contributions back from other people. And it really is,
it really can be a good way to invest a little bit of money to get a lot of
return from that too. So I think that's, I think that is another,
another answer is if you work for a company and they allow you to do it on
their time, that can definitely work.
Outside of that, i think like i think this post is mostly focusing on somebody has somebody wrote something really cool on the side and they want to release
it and they don't have a company to pay for it i think that's really what my post is aiming towards
right um because i think i think a lot like developers like us are just we're just very
passionate and creative people and we like creating creative we're just very passionate and creative people.
And we like creating.
Creative people like to do things and show it off to other people.
So I think we tend to get ourselves in these situations where we sort of want it to happen.
And then once it happens, like, oh, well, now I got to maintain it.
I'm not sure. I don't really know any answers, to be honest, about what to do about that side project that
you release that becomes Get Successful, that gets 3,000 stars and is getting seven issues
a day.
I mean, besides finding one or two other people to help a little bit, like the delegation
we were talking about, I just don't really know.
I mean, you could ask for donations.
I know some people do that.
I know, like, I think Sean Larkin from Webpack,
I saw he was tweeting about this idea of, like,
after you do an NPM install, it shows either an ad
or, like, a request for a donation.
I get the point of what that's trying to do.
I have nothing philosophically wrong with that.
I just feel like asking for donations is still not a very sustainable strategy.
It can work.
I don't think that's, again, the definition of sustainable.
Sustainable means a predictable answer.
Right. So I don't know, there are these other things
that can help, like delegation, trying to get donations.
You could do a license if a commercial company
who has greater than 100 employees
or greater than 1,000 users pay me 100 bucks a year
or something like that.
Right.
That's what GreenSoc does with their GSAP.
I think it's GSAP,
whatever their animation library is.
You have to pay 150 bucks a year
if you're a commercial company to use that library.
And to a company, 150 bucks a year is nothing, right?
So I think a lot of the frustration that people feel
is this idea that we create this amazing work.
We're creative, passionate people.
We put it out there for free because it's awesome.
But then companies go off and make millions of dollars off that product,
and you don't see any of that money, right?
It's sort of a weird scenario.
Are we really entitled to that money?
Or, I mean, you put it out there for free.
So it's, I don't know.
I don't really know it.
There's not a clear answer.
It seems like a tough, I don't know. I don't really know what, there's not a clear answer. It seems like a tough, I mean,
certainly can't expect that there'd be easy answers because if there were easy
answers to this problem, then, well, we wouldn't have the problem.
But while you were talking there,
it kind of made me think as you kind of better define what your perspective was
for some of the statements you made in your post,
it kind of made me think of like going back to what I mentioned earlier,
just sort of about how open source has changed over the years. Right.
And that made me think like there, there could be this,
and maybe there already is, but this term indie open source,
where just like independent software, you know,
you may have Adobe who creates, you know, massive software, you know, you may have Adobe who creates, you
know, massive software, massive company, massive amount of employees.
And you may have an indie developer who creates an iPhone app or an iOS app or whatever.
And they're totally one person or maybe a couple people.
It's a small shop, whatever.
And there's like these different variations of like what an open source project is or
who may be at the helm of that project.
And to me, it kind of feels like indie open source may be having trouble sustaining themselves
because certainly Facebook really doesn't have any problems with sustaining React.
There's no problems there because they're bankrolling it.
They understand what they're getting into.
They may have gone in, as you said, for the warm and fuzzies, but they have the money to back
it up and the employees that back it up. And they're allowing those people to dedicate their
time towards the source, towards the people, towards the talks, towards whatever that moves
that community along. What do you think? Yeah. I mean, I think it's definitely this,
this sort of indie camp is, uh, it's such a good environment for people that's what that's
what's so hard about this like it is such a good thing for young people to write code and share it
and collaborate on stuff um i just think we need to be very i think this is i mean it's sort of
what i talk about posts as well we need to be very careful about the expectations that we put on
these indie people like if they, these indie people,
that sounds terrible, like us, right?
Like everyone who just does stuff on the side,
which is practically most developers,
and it's fine if you don't do anything on the side,
but just, it's okay.
Like just accept,
it's sort of what I was talking about before.
I think we all maybe just have to accept that it's messy,
that like, I'm not going, there are going to be weeks where i just don't respond to your issues i mean
i i think the problem is that if it's going to be this free on the side personal project that you
just i don't know like i i i've seen some people talk about having an actual badge that says like
unmaintained or you know
not maintained frequently just something that says just like project yeah side project which
yeah it's it's totally stable and i'm passionate about this and i will be for a while but like
understand that it's going to be messy um i mean that that might be another answer i suppose well
i think part of it too is like less about finding a solution and more about setting expectations.
Right.
Because, you know, you don't have to solve the problem if if the people using the code desiring their issues to be solved or their pull request to be accepted or maintainers not feeling burdened.
Then maybe it's just like you're kind of saying is,
without saying it, is sort of like setting the expectation properly.
Because then if that's done,
then you can give forgiveness in areas where they're required. Because, well, hey, this is an indie side project.
This is an unmaintained.
However you want to word that as a maintainer,
as a budding open source community,
then it's sort of like it's a beacon to the,
those participating,
whether they're users,
contributors,
drive back contributors,
future maintainers,
you know,
onlookers,
press,
whatever,
then it can say to them,
Hey,
this project is not my lifeblood.
I'm here.
I love it.
It's great,
but don't expect me to be here at every night at 11 p.m answering issues or whatever
yep and if i i guess that is sort of where the delegation answers sort of is supposed to come
in because if a company is really wanting to adopt this as a crucial part of their infrastructure
you know sure give one of those people at the company like commit access and you might just
have to accept that they're going to make some changes that you might not like and that's i don't know i i don't i don't know or if you just
want it to always be i guess what i'm talking about now is it can be hard for some people like
we have this drive to make things successful as well and so deciding whether just sort of
accepting that if you put this on the side, it might not be as successful.
I think that some of us have to accept that as well.
That might be part of my struggle is that I do like to be successful, but we can't like I can't assume something is going to be successful if I don't put in extra work towards it as well.
So there's expectations to other people.
And there's also maybe expectations on ourselves in some degree as well.
What do you,
what do you have to say about the warm and fuzzy as I mentioned that it's
something like you said,
sometimes projects go open source.
I think your perspective here is from a company standpoint.
They often go open source for the warm and fuzzies,
but then they kind of get into it and it's becomes charity.
So to speak,
what do you,
how do you feel about the warm and fuzzy feeling of like just open sourcing it
because that's what's everybody else is doing basically i think that that might be one of the
things that is most frustrating to me because i think the general tone of open source being this
sort of noble cause is part of the problem in my opinion like that's why it's almost like oh you're
going to charge for money.
I can't believe you would ever do that
because you're an open source project
that defeats the whole cause, you know?
And I think, I mean,
I love some of the core drivers of open source
and they are very sort of mission driven.
I worked for Mozilla,
which is a very mission driven organization.
It's very, and it was a very powerful way to talk about things.
And there is a big mission there, keeping things open source.
And we're one of the few browsers that really are an independent browser.
But there's still this, I think we just can't let that trickle down, become too much of this thing where we pressure people to make the world a better place with
open source you know i um and i think that is where um i don't know i i feel like i i think
i've seen a lot of different types of projects and i think there's there's the ones where it's
not just that they went open source it's fine being open source i think it's there's projects
where we were like,
we're going to invest in contributors.
And Mozilla was all about contributors
because that's what Mozilla does, right?
That's how they can do a lot with a small company.
That's how Firefox is localized across the world,
completely by contributors,
or at least 98% by contributors,
where it's in like a billion different languages
because contributors from those languages will come and actually just localize everything. It's crazy. And that's a
very interesting, powerful model. But I just feel like some projects were like, we're going to go
open source, and we're going to really invest in contributors, because that's where all the power
comes from. And then I just look at their project, and there's so much time spent on teaching
contributors and getting everything
set up correctly and writing documentation so that they all know about it. Meanwhile,
they're sort of ignoring some of these really core problems that are in a project
that contributors can't fix because they're too deep. And it just seems like the wrong focus.
And so I think, I don't really know where this is going, but I think that sometimes we get caught
up in this idea that contributors are always this amazing thing.
And so I think we just need to be careful about applying it a little bit too much of this too broadly. of the position we're in with open source becoming more mainstream which means growing which means
more people who are new and not giving them a bad taste in their mouth being very inclusive
being very inviting and maybe that's the side you're thinking of is like they're valuable because
you don't want to turn away someone who's like hey I heard this great thing about open source
or I listened to this podcast called the change log i've been listening for a while and i actually want to step in now
and the first thing they get is this bfl for life who's like ah you're in my project and i'm
i don't work at 11 p.m or i've got this guilt and so i'm putting this burden on you and they're just
trying to like step in you know right and we don't want to like turn them away or treat them badly because of our past experiences.
We want to respect their desire to communicate with us and participate in the community or even help us start one, you know.
And I'm not sure I'm going with that either because I'm not arguing with them.
Just sort of saying that maybe that's that's why contributors are so significant because you don't know where they're at in their path.
Yes. And it's and that's why it's such a hard problem is like, you're a jerk if you come up,
if you do that. Right. So it's sort of this like catch 22. Um, and I think it's, I don't know.
I think it's about, I think it's, I think it's what we said before, just expectations and
communication and somehow communicating to contributors that you,
in a very kind way that you just can't, you just don't have time right now. And usually, I mean,
I have to say, like, I am sort of jaded. You said that at the beginning of this, I think.
But I think it's especially-
That's why you seem jaded. You may be jaded.
I may be jaded, yes. I think it's because I have just like right now, even with the family and two kids is
that thing where you're really tired at the end of the day and it's like 11 p.m.
And I either want to work on my own side project.
Honestly, that's not even open source or I want to play video games or something like
that.
But there's that guilt there.
And so I like looking at that final result, I that sucks.
I we're kind of rewinding, like trying to look at the causes.
And I just don't know what the answer is.
It's such a convoluted, complicated issue.
I don't really know what the answer is.
But I think contributors are wonderful.
I definitely don't want to say that they're not.
I think Mozilla has gotten a huge, huge amount of work from contributors.
And it did feel great.
It did have this warm, fuzzy feeling.
And it was this amazing collaboration with people.
But I think finding ways that we can communicate with each other
and shepherding contributors when we can,
but just, I don't know, trying to find people
who can do it for us when we can't,
or just telling them that we might not have time.
And I think there's a tone, right?
I think some people in open source
probably are as jaded as I am,
and they'll respond to issues and be like,
no, we're not doing this, and just close the issue.
That's just not a very nice,
like, I at least try to say-
It won't fix.
I'm very, yeah, it won't fix.
In fact, yeah.
I at least try to say, I'm sorry, you know,
or like, I think it has to say I'm sorry, you know, or like.
I think I think it has released some of my guilt, which realizing how powerful this is, it's like doing two or three sentences.
They're just like, I'm sorry, I can't please everyone.
Brownie face.
Right.
It's almost like you have to put a signature with all of your negative or could be assumed negative responses like.
Sorry, basically, I've got these other things going on and i can't or i'm not willing to or here you could and here's the keys
go ahead and open the door right you said earlier though on the unsustainable piece
in your post you mentioned that humans are complex and full of conflict and that was part of what you
also said around the ultimately unsustainables because mainly because of humans, not so much because of the code or the process or the philosophy of open source, but more like because of the humans involved.
And it seems like that's the case here because, you know, at the end of the day day you're talking to another human and that's i think maybe the
expectations we all have to kind of remind ourselves of because if we were standing face
to face you wouldn't simply say to me won't fix and turn away right yeah you would be more human
you might shake my hand you might pat me on the back or if i'm crying you might console me which
i would never cry over open source you. You would be a human about it.
And I think because our, not GitHub's fault,
but because GitHub is so accessible,
it's such a great tool that it's so easy to get in
and get out and you forget the human element.
Yes.
Yeah, it's made it super easy.
Yeah, it's true.
It's made it super easy to file new issues, made it super easy to
close issues. And it's definitely not GitHub's fault. It's just humans sort of showing themselves,
you know, that humans are just mean on the internet. It's become very mechanical, you know.
And I think, you know, if you may treat a robot differently, you know, theoretically, you know, and I think, you know, if you you may treat a robot differently, you know, theoretically, you know, code robot, you know, whatever it might be, you might treat a robot different than you do a human because they don't have feelings.
And so if you remove the human element, you remove the feelings.
And so if you don't think you're dealing with a human, it's a little easier to be a jerk because you're not really being a jerk.
You're just not being human. You're just sort of like removing the emotion, which is essentially what not being human is, is lack of emotion.
Right. Because humans are emotional beings, deep, methodical, thought provoking, all those things.
And when you remove that element, you're just simply talking to a machine.
And that's not the case because there's a human on the other side let's pause here though because we want to step away real quick um when we come
back i want to kind of dive into other pieces that we haven't talked about quite yet which is like
how do we maintain balance you know one thing i think we really haven't talked about an awful lot
in this show maybe to some degree, is how to balance.
So let's break here.
When we come back, we'll talk about that.
Production ready, cloud hosted databases.
That's what Compose is all about.
Compose.com.
Check them out. Pick your flavor.
Mongo, Elasticsearch, RethinkDB, Redis, Postgres, FTD, RabbitMQ, SilaDB, or MySQL.
I've talked to Greg Koberger, founder of ReadMe,
about why they chose Compose.
Take a listen.
So we actually weren't using Compose at first.
We had our own Mongo database set up on AWS.
We were just going through a checklist of things
that would just kill our company.
You know, it's not to be overly dramatic,
but there's a few things early on
that can just destroy a company
and there's no coming back from.
And pretty much every single one of them was around data loss or whether it be stolen or just deleted. I don't do DevOps. I'm a programmer and I can, you know,
navigate my way around the command line, but I did not believe that I had the skills to make
sure that I wouldn't just delete the database by mistake, or that my backups wouldn't at some point, you know, just stop working. You know, every single
scenario that I saw, like, you know, waking up and seeing that something bad had just happened,
they all involved the data. If we pushed a bad, you know, push bad code and it broke something,
that can be fixed. But kind of data, either theft or loss, was the two things that I just was petrified of.
It took, you know, 30 seconds to get started with Compose.
We went to the site, signed up, moved over within minutes.
It was fast.
The interface was great.
We could browse stuff online.
But kind of the biggest reason why we started using it was just scared that we were going to lose everything.
All right.
If you're ready to give Compose a try, head to compose.com slash changelog to learn more and now back to the show all right we're back talking to james long about
all things open source maintainability sustainability expectations humanizing things
the gamut right the full gamut And you've got this project prettier.
You know, I want to open this up more along the lines
of what's happening with this project
because this is sort of where you're coming from
with a lot of your perspectives.
And then ultimately what's helping you find some balance
in your own life with your own open source project,
your own ability to serve and love your family
and to do the work you need to do
with your consulting company
and whatever it else it is to you that is work, whatever you're calling work. So let's open
up with Prettier. So what is this project? How long have you been doing this? So Prettier is a
JavaScript code formatter. It basically takes JavaScript as input and then it compiles it to
an AST and then it preprints the AST. So the goal of it is just completely ignore the original styling
and always produce a consistent output.
So there are a few things that we don't ignore in the original styling,
but generally it forces all teams to have completely consistent style.
And we have editor integration so that you can just format your code
with a keystroke.
So it's kind of nice because you can just like sloppily write code.
I basically write code in the worst way, like all on one line now.
And then I'll just format it with a keystroke and it looks pretty.
Yeah, it's a pretty interesting change to my development style.
But I've been doing it since I started it very late November and then kind of hacked on it some in December.
And I open sourced it like the first or second week of January.
And and so, yeah, it's been it's been good.
It's only been there for two or three months, but it already has a bunch of a bunch of a bunch of activity.
And a lot of people are using it seem to like it. So the pain you're feeling, I guess, has been pretty quick
in terms of the pain being going from a project with zero stars
to now 5,367 stars, Facebook having an involvement with it,
Christopher Jadot, all that good stuff.
You've gone from no code to code to community really quick.
Yep.
And yeah,
and I,
I think I'm,
that was sort of,
uh,
blessed by the fact that I,
I do have a pretty good following on Twitter already.
People already sort of know me for my open source work.
So,
um,
and Christopher should,
obviously pushing it and Facebook pushing is,
is a huge part of that as well.
Um,
so I,
I had a hunch that this would,
could be pretty big.
I think it was a pretty intuitive original project.
So I guess it wasn't like a huge, huge surprise,
but yes, it was pretty quick.
We talked before in the show about 11 p.m.,
closing issues, feeling the guilt,
and then ultimately come into this portion of the show
where we're trying to cover some balance pieces.
How do you balance and maintain this project?
I mean, did you, did you desire to be, you know,
for this project to be as in quotes successful as it is like,
meaning that it's used by more than just you, obviously it,
it serves a purpose to the community.
Like, was that your goal with this thing?
Or was,
were you just hoping to share with the world this code that is in is in beta, you know, not production ready, so to speak, but something that serves your purpose?
Was it is it where you thought it would be?
So back in early November and December, I totally wanted it just to just be my project.
I was like, I'm super tired of um formatting code i'm super tired of inconsistent
styles when i get like contributions from people so i was just gonna build something that i just
use on my projects because i knew that like if i open this up to other people that you know there's
all sorts of styling wars uh but sometime in december while talking to christopher
from facebook and um i don't, at some point that goal changed.
And basically I was like,
this is like,
I think once I started implementing it,
I was like, man,
this is actually a super cool implementation
that's actually pretty hard.
And so it just,
I just,
I got caught by that bug
that was like,
this is like a lot of good work,
so I might as well share it.
And I think it did help a lot
knowing that Christopher
was going to be there and help as well. I um and i i think i think it did help a lot knowing that christopher should i was
was was going to be there and help as well um i i'm not sure i'm not sure what i would have done
without him because if he wasn't there to like uh encourage me to open source it and know that he
was going to be there and help shia's issues and stuff i may not have pushed it as hard um but at
some point the goal changed and i was like yeah yeah, we should, we should try to see how many people we can get using this.
And so right now Christopher is inside of Facebook trying to get everyone to use this.
Is that correct?
Uh, yes.
I don't want to speak for Facebook. I know it's probably like super early on in that process, but that's the idea.
It's just so helpful to have this formatting automatic so that you can just focus on the
real issues on code.
So I don't know if they're going to use it or not. have this formatting automatic so that you can just focus on the real issues on code.
So I don't know if they're going to use it or not.
I know that they did contract me out for two weeks in January to work on this.
So that was, I think they're pretty serious about trying to get them to use this.
It's just obviously a lot of talking with people, talking to different teams to integrate
it with all of their infrastructure and things like that.
But Christopher is doing a lot of good work on all of that front.
And yeah, he's talking to everybody within Facebook right now and trying to convince
them to see if it'll work.
Prettier kind of reminds me of this, the concept of writing, you know, of not so much just
writing code, but writing actual words onto a piece of paper, almost like, you know, your, your personal, uh, experience with writing code is more like the
rough draft and prettier makes it prettier so that you can have it consistent with other team
members or a certain way. Again, it kind of gives you this permission to not really kind of take it
like a Hemingway portion where like, you just sort of get the words out the word about editing
and just let,
let yourself know that pretty will make it prettier on the other side.
Yeah. Oh, and it's, I don't know if it's, it's just me,
but it's very liberating. Yeah. That's in fact a very good point about it.
I, it really helps my mind just completely focused on the,
the difficult complex task at hand.
And I just don't have to care about formatting at all.
I mean, it feels amazing to just write this long string of code and it formats it, but then
if you're hacking on something so much because it's such a new and fragile idea,
you're changing the code so much. And just to know that when you change the code every single
time, you can just reformat it and it collapses the function call into one line when it gets smaller and then it expands it back out when it's too big
uh it feels very very it was it's surprising how fluid it feels to your to your thought process
i actually didn't really expect it to be this like sort of liberating wow so that's a good
example of like a project as you had said caught the the bug or the bug got you and you had this idea for something and actually during the process of developing it becomes bigger than you expected.
And then now you're you're sort of in this position of like, well, I've got my day things I'm doing.
I got my family.
I've got all these other things happening.
You know, is this where I want to be?
Do I want to have to, you know,
close out 10 or 15 issues a night every single night and have that burden? And now you find yourself in this position where great project, people really see the vision of it. It's,
it serves a great purpose for the community. Now I've got to personally find balance in my life to
actually continue with the mission of it. And I guess my question for you is more like,
let's, let's open that conversation up around balance. Like what are some things you do
to balance your life so that you can still do the things you love in open source,
still do the things you love around your day-to-day job tasks and needs,
and then also still be there as a dad, as a husband? So that's a great question.
I think I think I have learned a lot, even though I am jaded.
I still do love contributors.
I still love open source.
And I think I have learned a lot from this.
And I sort of come into this in a way that is very I'm trying to be very aware of where I will get burned out, basically.
So I try to communicate, like even if there's an issue that I see
is either really complex
or is a PR that's been open for two days,
I'll just comment on it and say,
I'm sorry, I just don't have time yet.
I will try to look at this soon.
And that sort of relieves some of the guilt.
I try to focus on,
so I am a contractor,
so I bill my client hourly.
And so I actually,
some people don't like hourly billing.
I'm not sure if I'm going to do this for a long time. But the thing that's nice about it is that
I can, I actually kind of like sitting down in the morning and then I just get other stuff done
for like two hours. And so some mornings I'll sit down and just work on prettier for two hours.
And that can be, so that's within the confines of sort of the work hours. And then I'll bill
my client for the rest of the day. And that's what that's worked out pretty well. And then some nights, if there's just some something that's really complex or
something that I just really want to get done or I just really want to work on because it's fun.
I will after the kids go to bed and I spend some time with my wife, you know, around
nine or 10, I'll sit down for an hour or two. But that's that's really more rare. That might
be like once a week or maybe even less than that. But that's just to sort of get caught up on things.
So sort of structuring your time, I think, is good.
It's definitely just really, really healthy to close your computer at the end of the day
and at least spend some time doing something else.
If you don't have a family, I'm sure you have other hobbies. Just really make sure that you're not,
make sure that even if you have free time,
spend it doing other stuff, you know,
or even if you have another side project
that is a lot more fulfilling,
work on that side project.
Don't feel like you have to be working
on that code right there.
It'll still be there in a couple of days
and it's fine that people can wait.
So having that mentality is good.
The one last thing that I'll say is I really, really would advise people to not be getting
GitHub notifications or emails on their phone because that just, I mean, at least for me,
that would be the worst way to make me like the guilt even more, you know, shouting at
me on my phone every time I see something come through.
I do not do that on my phone at all.
That is just a complete no-no.
So, yeah, that's.
Yeah, that's a recipe for disaster, especially if you have a popular project or even a moderate to.
And even if you have a moderately successful project, you're always getting something, whether it's a pull request or an issue or something.
It's always something that's happening.
I can even just comment.
It doesn't even have to be an issue.
It could be activity on, on issues, you know, that's constantly pulling you away from the
things you should be stepping away to enjoy, which is that balance portion is like, it's
almost getting permission, giving yourself permission, or even having some, having someone
like you come on a show like this to say, Hey, it's okay to step away.
Sometimes people just need to hear that. Maybe they already know it,
but they're like, but I feel guilty. And you're like, well,
just feel guilty then I can't help with that part, but you can step away.
Yes, definitely. And even I, yeah,
I think it's crucial to get to that point.
If you feel like you have a couple hours at night, that's totally free.
Even if you haven't looked at the issues in a couple of days, if you want to look at them just don't look at them i i don't know what else to say
i mean there's there's a balance to be said like a balance by definition means there are going to
be times when you are going to do that because you feel guilty and that's fine but as long as you
just spend your time like relaxing don't do it every night that's basically that's basically
the gist of it try to do it at least like half your time or something moderation i think you
know back to the conversation around sustainability or the as you said it ultimately unsustainable i
think the i'm just throwing that back at you because because it's fun but yeah you know is
that setting expectations and just understanding that you know we can't all eat Snickers for dinner.
And there's a reason why, because that's not sustainable, right?
Just like you're saying you can't sit there and close issues or work on this
code every single night because that's not sustainable.
You know,
whatever sustainable is to you and you being the general public who's listening
to the show,
whatever that means to you is what you need to work on moderating around
because you can't just pour every ounce of you into this thing because at the other end is potentially
burnout and that's not sustainable.
Yep.
It's good to diversify basically.
Yeah.
Diversify your interest in your time.
And I think that is a good way to guard against burnout.
You know, one thing you said, though, at the end of your post, which as a fan, this totally
makes sense to me.
You said there's no question in your mind that by comparison, tech, I'm assuming that
also relates to open source, but you say tech has little meaning in the greater context
of life.
There's a lot of people that because we're technologists, because we're software developers,
because we love what we do, we sort of like put these blinders on and only see that.
And we may not forget that we have family.
We may not forget that we have other human beings that love us and cherish us or vice versa.
But we certainly place a lot of meaning into software that it doesn't and hasn't earned.
Because really, ultimately, when you pull back the layers of open source, it's people.
Right.
And so when you say, by comparison, tech has little meaning in the greater context of life,
I kind of think I know what you mean by that.
But what do you mean by that?
I think I mean that the for some reason are we do tend to put a lot of stock in what we're doing.
Even if it's a social media app, we're connecting people and there's a lot of good social aspect to this.
Or we're just making change in technology.
We're furthering the progress of the world, sort of that noble mission.
It's sort of that mission-oriented thinking sometimes I think can become too strong. And we do lose sight of the fact that
going out onto a walk with your family, you're going to get more out of that than spending 20
hours working on a project. Really, when it comes down to it, a lot of people don't care about tech.
I mean, I think that we put too much value on it, to be honest.
I think tech has done amazing things in this world and connected us in amazing ways.
And I'm not one of those people that think that everyone then stares at their phones and that's a terrible thing.
I think it's amazing how connected we are these days.
So the product of tech every now and then can be revolutionary. But besides that, in this weekly, daily life,
it's so much more important to make sure
you're to spend those four to six hours at night
just do other stuff sometimes.
I used to spend so much time at the computer
like hacking and reading papers and doing stuff.
And I really think I lost out on a lot of relationships
back in my 20s.
So that's sort
of what that sentence is referring to so do you have some shoulda woulda couldas in your life then
man I wish I'd have just spent you know two or three days doing that and one day pursuing a
friendship yeah I mean I wish I I mean I you know I don't know about relationships I feel like I had
pretty good relationships but I definitely could have been a lot closer to people.
I could have pursued people more.
So I think I wish I had definitely just closed my laptop at night when I was, you know, like when you're in a house of guys or just like a roommate.
It's super easy to just sit at your computer at night and work on stuff.
I definitely wish I had just gone out and just hung out with friends and got to know other people more.
I think it would have been a little bit richer life.
I, I had a great time in my twenties.
I'm not saying that I didn't, but I think that there's definitely, it could have been
more, even more, more fulfilling.
And I would encourage anyone to, to seek balance in this, in this world.
So what are, what are some ways besides just closing your laptop, just dedicating four
to six hours to loved ones or hobbies or whatever? What other ways can we be more mindful about
balance? Trying to think, I mean, I don't know, maybe, uh, just pursuing other hobbies, I guess.
Uh, I mean really the hours of the night and, and on weekends on Saturdays, uh, going out and
meeting other people are really the only things that I can think on weekends on saturdays uh going out and meeting other people
are really the only things that i can think of yeah i can't really think of anything else i don't
think so go out make some friends disconnect saturdays no issues no notifications on your
email your notifications from github popping up keep those things silenced at least that would
help you or help that person moderate to not feel
like every waking hour is pulling them back into this thing they may be like slightly jaded about
like oh man i've i've launched this project and now it's super successful and that's great but
now i've i've gotta keep giving my time to this thing and step away, step away.
Just, yeah.
Even it depends on every single person, right?
Every single person is going to have a different workflow, but just find, yeah.
I think I would be careful about if you feel that trickle of doubt or not doubt trickle
of guilt, just, yeah, it's okay.
Like we were saying before, just take the time to yourself.
It's, it's absolutely critical that you do that.
However, I think that's why I struggle to come up with many other ways, because I know that those are the way for me, spending time with my family at night or spending time with other hobbies like cooking, making pizza.
That, for me, is what gets me out of the zone and makes me feel better.
But I think each person needs to just kind of be aware of who they are and
think about what they can do.
Whether,
I mean,
some people really love getting get,
get have notifications on their phone,
I guess,
but maybe if that's,
maybe if that's stressing you out,
maybe you should think about turning those off for a little bit.
Yeah.
I know me,
I have my best ideas,
not at a desk.
And I don't care how many times I tell myself that.
I don't care how many times I hear it from somebody else.
The best ideas you can have tend to be away from, you know, a computer, an interface,
a desk, whatever.
I still make the problem.
I still do it.
I still make that same mistake.
So by no means are James and I saying, this is so easy. You can do it. I still make that same mistake. So by no means are James and I saying, this is so easy.
You can do it.
We're just here kind of giving you permission to step away.
Permission to say, it's okay to step away.
It's okay to not, like you had said in your post, not answer an issue for a couple of
days.
It's okay to step away and have friends.
It's more like just a reminder rather than saying, hey, this is how you fix your problem. It's more like reminding you that sometimes the best ideas come to you away from
your desk. And sometimes the best relationships happen, not in digital form and to pursue those.
James, what else can you share with us? I know that we had said earlier that this post seemed
to come from a data perspective, but there's lots of great insightful things you've said in this
post. And a lot of this conversation is really revolving around things you'd mentioned there and some
different advice we could share from that.
But what else, you know, when you're on a show like this, would you like to share with
the audience?
It could be advice.
It could be, you know, hey, I did this thing and here's how you could do it, too.
What do you want to close with?
There's only one thing that I can think of, and it's since I mentioned pizza, but you should try making pizza from scratch because it is amazing. And I'm going to just
go ahead and pitch a book called the pizza book. And it's written by a friend of mine that I know,
Michael Bernstein. And, uh, it's, if you go to go to the pizza book.com, I think is their,
their website. It's an amazing book. When I read it, my pizza making skills went up hugely yeah try doing that someday it's amazing what's the the fellow's name he's mrbbk on on twitter it's michael mike
bernstein i think it's his last name okay i was just wanting to make sure i got the right website
then it seems like it's make.pizza ah make.pizza that's an awesome domain name by the way i just
want to make sure i was on the right one. Cause right here it says,
uh,
Aaron Quint and Michael Bernstein,
the coauthors of the pizza book,
a successfully funded Kickstarter project.
So that's cool.
It started as a Kickstarter and raised $50,000 and boom,
they're going to teach you how to make pizza basically.
So you've been making pizza from scratch.
Yeah.
I've been trying here.
Um,
at least trying.
Yes.
Okay.
See,
that's why this book was amazing.
Cause I went from,
I've been doing it for years and I went from feeling like I was just trying to feeling like
I was actually doing it. I mean, it's just like the, oh man, it's so good. It's so good. And
pizza is so amazing. Cause it's this, like, you can put so many different kinds of toppings on it.
And it's also a fun communal aspect where you can have friends over and like, let's make a cool
pizza and put a bunch of different toppings on it.
Yeah.
So, yeah.
That's great advice.
I love that advice closing because it's not,
hey, go check out this repo, which is great.
But, you know, when you're here preaching moderation,
you're here preaching balance,
maybe the best thing isn't to say,
hey, go check out this other repo, by the way,
and dig deeper in.
It's more like, hey, take a step back, check out this cool book and make some pizza.
I like that advice.
It's great advice.
Thank you.
Make some pizza.
All right, James, man.
Thank you so much for coming on the show, man.
It's been a blast to kind of catch up with your story, hearing about Prettier, learning that one of your favorite hobbies is make a pizza.
I'm sure that your kids
and your wife are like totally loving this with you so uh thanks again man for coming on the show
appreciate it yeah thanks for having me all right that wraps up this episode of the changelog
join the community and slack with us in real time at the changelog.com slash community follow us on
twitter we're at changel. Special thanks to our sponsors,
Rollbar,
TopTow,
and Compose.
Also, thanks to Fastly,
our bandwidth partner.
Head to Fastly.com to learn more.
Thanks as well to Breakmaster Cylinder,
the producer of our awesome theme music.
And if you're excited about our new show,
JS Party,
tune in live on Fridays at 3 p.m.
U.S. Eastern at Changeelog.com slash live.
You can also head to changelog.com slash JS party.
Subscribe at iTunes, Overcast or on Android.
That's it for this week.
Thanks for listening.