
Moment().endOf(‘term’) - tilt
https://medium.com/@timrwood/moment-endof-term-522d8965689
======
RcouF1uZ4gsC
This is the dark side of open source. Moment.js probably has generated
millions of dollars of value, but in exchange the primary developer is left
with depression and burnout.

I am actually old enough to remember getting Programmer's Paradise magazine
that would have listings for all sorts of VBX/OCX controls from a whole host
of large and small vendors that developers could buy to help them accomplish a
programming goal.

Now, a single developer or small team can create a small app or website in
which free/open source libraries are doing all the heavy lifting in terms of
complexity and capture millions(or billions) of dollars in value with the
original creators getting nothing.

The main reason for an individual creating open source libraries is due to
either idealism/altruism or else to increase their reputation so a company
will hire them. My guess is that the altruistic individuals are the ones
getting burned out because the users of their code, instead of appreciating
their altruism, make them feel guilty and inadequate. Open source will have to
solve this issue in order to be sustainable.

~~~
burntsushi
> The main reason for an individual creating open source libraries is due to
> either idealism/altruism or else to increase their reputation so a company
> will hire them.

Or neither. I create open source libraries because I love to code and because
I love to share what I built with as many folks as I can. Idealism, altruism
or concern of my reputation is not required. (I can't help but think that the
subtext of those terms is "people who do open source in their free time are
naive," but that would not be a charitable interpretation. Still, that's the
impression I'm getting from your comment.)

~~~
tbirdz
>I create open source libraries because I love to code and because I love to
share what I built with as many folks as I can.

Sounds like altruism to me.

~~~
burntsushi
No, it's pure selfish passion.

~~~
geoelectric
A dirty secret is that most people that are altruistic are doing it because
they like something about being altruistic (whether that's warm fuzzies,
bragging rights, or something else). At the end of the day we're all self-
interested, just hopefully constructively so.

I do suspect "what the hell, may as well push it to github" probably starts
more open-source projects than any other thought.

~~~
burntsushi
There is a difference between "what you're doing is so altruistic" and "what
you're doing is _because_ of altruism". I don't object to the former---I can
totally appreciate how that makes sense as an observation about the world and
the people around you. I do object to the latter, especially when it's used as
a way to bin every programmer's motivation for writing code and then derive a
_political_ point from that binning ("open source is unsustainable").

I don't think to myself, "I can't wait to get home from work and selflessly
help others!" I think to myself, "I can't wait to get home from work and crack
open that really interesting problem that I've only been able to give a third
of my brain to today." If the fruits of the latter result in someone else
saying it's altruistic---that's cool. But don't try to tell me I'm doing it
_because_ it's altruistic. I'm not. (Being called altruistic is kind of funny.
It's either a wonderful compliment or a condescending snub of youth/naivete.
In my experience, anyway.)

FWIW, I suspect we're on the same page. I'm just trying to clarify the point I
was trying to make to the original parent, because I think that's getting
lost.

------
nicholasjarnold
Thank you for your contribution to the growing JS ecosystem of useful, stable
and well-documented libraries. I've had personal success using Moment() to
solve otherwise boring and error-prone problems with date/time manipulation on
a number of projects at various companies (and on side-projects and client-
oriented work as well!).

While Mr. Wood might have other things preventing him from being happy and
carrying the torch forward, I sincerely hope he reads this and realizes that
he has made a net-positive impact. Thanks again.

~~~
bballer
I second this, moment.js is amazing, if the creator is reading this a HUGE
thank you!

------
namuol
[https://www.youtube.com/watch?v=-5wpm-
gesOY&feature=youtu.be...](https://www.youtube.com/watch?v=-5wpm-
gesOY&feature=youtu.be&t=515)

    
    
        What you learn after dealing with timezones is that you put away your code.
    
        You don't try and write anything to deal with this.
    
        You look at the people who have been there before you.
    
        You go to them, and you thank them *very much*, for making this open source.
    
        And you give them credit. And you take their code, and put it in your program.
    
        And you never look at it again, because there lies *madness*.
    

Thank you so much for giving us Moment. Your suffering has not been in vain.
<3

------
akavi
In a previous job, I spent many, _many_ hours over the course of many, many
months working on a shift scheduling UI.

Moment.js played an enormous role in getting through that period of my life
with my sanity (mostly) intact.

Thank you, Mr. Wood.

------
spriggan3
Package maintainers, you DO NOT OWE anybody anything. If a package you
maintain is "mission critical" for a company then that company can contract
you to maintain the package, companies need to stop expecting developers to
work for free. How many companies that made a profit with moment.js
contributed back to the project ? financially ? Personally I believe that dual
licenses, one GPL, one commercial make more and more sense in the OS world.

------
niftich
Great job on Moment.js, and I'm sorry it caused as much pain as it did to Tim.

I think he fell victim to being too nice and accommodating. I remember
'follow'-ing the Moment issue tracker on github at a time when I followed a
few other high-profile libraries, like pdf.js, requests, redis, Joda-Time...
and Moment.js's issue tracker was _flooded_ with an extreme volume of issues
that made it difficult for me, a much-removed, half-interested third-party, to
continue using Github.

Many of these were bug reports, but even more of them were feature requests
and usage questions, and I am frankly surprised that Tim served as maintainer
for as long as he did, given the cognitive load.

It's easy to be wise in hindsight, but I truly believe that more aggressive
moderation by a dedicated team, and more efforts to intentionally limit scope
would have benefited Moment.js and its community.

------
koops
Moment.js is fantastic. The number of new year, daylight savings, and leap day
bugs this library has wiped out must be in the thousands.

------
maggiepint
I'm Maggie - one of the maintainers that is stepping up for Tim. I just want
to mention that in the time I've been working on the project I've learned that
when Tim talks, you should listen. He's done an excellent job, and given our
issue load I am surprised he didn't get burnt out earlier. For anybody
questioning why Tim didn't better self-regulate his work load, know that we as
maintainers feel a really strong love toward the project. We don't want to see
it fail, and we will push ourselves to make sure that it does not fail. Tim
has always done this, and he should be commended for it. Thanks Tim for all
your time. Hopefully we can take good care of this.

------
sdegutis
> _Seeing bugs and issues continue to roll in and being mentally unable to
> address them has led to feelings of failure and depression._

Holy crap, yes. That's absolutely the reason I turned Mjolnir into a DIY WM
and constantly encourage people to move to the popular fork Hammerspoon.

I'm _so_ glad nobody uses any software I write, for this exact reason.
Honestly, I can't handle being an open source maintainer.

That's why I make sure that when I do write open source software (like
'choose'), it's so tiny that I can prove that it's feature complete and bug-
free just by skimming the source in an afternoon. Well, that and dogfooding.

> _As another part of taking care of my mental health, I will be officially
> stepping down from all moment[.js] responsibilities._

Great plan.

> _With the help of my wife, Sheli, I have started taking medication, which
> has helped tremendously._

Wait, what? It got _that_ bad? Man, sorry to hear. Hope things get better.

------
carapace
> The correlation between Open Source and burnout is no secret

This will sound unsympathetic, and I apologize for that, but I am genuinely
puzzled.

Why would you "burn out" doing something that is presumably wholly voluntary?

In other words, why not quit or scale back involvement much sooner, before the
downside(s) become so severe?

I'm not trying to criticize Tim Wood, I feel for him. And I _LOVE_ moment.js!
I'm very grateful for it and all the efforts that went, and goes, into it.

~~~
buro9
> Why would you "burn out" doing something that is presumably wholly
> voluntary?

Because as the creator the project itself is wrapped up in your identity,
something you made. One feels entwined with it's fate, no less than a founder
of a startup does, and the more popular the more issues, noise, pull requests,
etc.

It's easy to feel stand back a lot later and recognise that you are
overwhelmed by it all, drowning. But even a successful project builds slow
enough that one adapts to it all and don't notice.

It's a classic boiling frog problem and the project creator and core
maintainer is the frog.

~~~
dsp1234
Another mirrored aspect to this is that identifying the need, and obtaining
the required mental health help (talk, drugs, etc) is not a skill that is
taught/passed down/whatever very often (and it actively taught against in some
cases).

So it's easy for people to not even know that they need help, or to deny to
themselves that something is wrong that needs help (or worse to be actively
stigmatized _away_ from finding help).

There are a lot more "It's ok, you'll come out of that funk in no time" and
"Just push through the pain, it's no big deal" conversations, than there are
"You know it's ok to talk to a professional about this stuff, everyone does
it" and "Having depression is like having a broken leg. Not seeking help is
the crazy choice." conversations.

~~~
aftbit
>"Having depression is like having a broken leg. Not seeking help is the crazy
choice."

That's an interesting way to put it. I've always seen depression as more like
a respiratory disease. It might just be a cold, so you should wait a week or
two before going to the doctor, but if you get worse instead of better, you
need to go get some help.

~~~
carapace
Well, you should differentiate between "normal-people" depressions and
"clinical" depressions.

I suffered from serious depression until my mid-twenties. It made it difficult
to function, yet the people around me couldn't understand or relate. I can't
tell you how many times I was accused of "just being lazy". My mother once
said to me, "I know you're not faking because no one would deliberately be
this miserable." You absolutely have to treat this "like a broken leg" because
it is a real illness that won't just go away on its own. I did that and
eventually found help that worked for me. Except for one nightmare-ish three
day recurrence (I was so scared) I've never suffered from it again.

Since then, I have had normal depression once or twice. This is what people
meant when I tried to tell them about my sickness before and they would say,
"Everyone feels depressed from time to time." (Oh how that sucked.)

Now I get it. Everyone _does_ feels depressed from time to time, due to
reasons. Something bad happens, or some condition is deeply unsatisfying in
your life and you feel bad. That's totally normal and part of navigating life.
(To me, having dealt with the monster for so many years, normal depression is
almost cute. Even though it still sucks. It's the difference between a scratch
and a tooth-ache.)

\----

edit: I just realized that this is why I couldn't understand Wood's actions.
Given my history I wouldn't let _anything_ send me back to the pit. Not even
my most cherished project.

Thanks folks who responded. Warm regards.

------
AstroJetson
Sorry to see you go, I'm also thankful for moment. It really reduced the date
issues from team members trying to roll their own. You allowed thousands of
projects to leverage your work and let them focus on their project. Thanks!

------
jph
Thank you Tim for Moment and also for your kind farewell letter.

Point me to a charity of your choice and I'll make a donation.

------
mythz
This highlights a major problem for Indie OSS software development as OSS is
mostly built on the backs of Indie developers but its profits gravitate to
mega tech corps who have the barriers of entry and economies of scale to
profit handsomely from it.

Devs are accustomed to using Software libraries for free whilst still being
expected to pay for hosting OSS software which are the areas where AWS,
Microsoft and Google invest heavily, but smaller companies without the brand,
infrastructure or scale have a chance to break-in. They're effectively selling
shovels and pickaxes during the OSS/Cloud Gold Rush and ultimately are the
ones who stand to benefit most from OSS.

This trend is going to get worse over time as they can use their profits to
develop their own OSS software projects with well-funded teams that money can
buy which they can offer for OSS/free in order to maximize adoption and
exposure as they have the business model and economies of scale to eventually
profit from it when companies go to host it.

Eventually commercially-funded OSS will cannibalize popular Indie OSS projects
who wont be able to compete with a team of dedicated full-time engineers who
are not at risk of suffering the same burnout as they have more resources and
are developing it as part of their day-to-day giving them the spare capacity
to produce docs, polish and marketing materials and can offer
maintenance/support that's often lacking in OSS projects.

TL;DR future is grim as an Indie OSS Software developer.

------
selecsosi
People like to give people like Linus a hard time, but things like this serve
as a reminder of how hard it is to head an open source project.

I have gotten tremendous utility out of Moment and glad to hear that the
creator and the project have a amicable path forward. Burnout is no joke, and
it is hard to fight in the face of such a successful project when we judge our
own worth on the quality of our work.

------
drinchev
I've always wondered about how does a project of this magnitude can be
financial benefit to the author / maintainers.

Let's say that sometimes money could solve problems ( even with mental health
and chronic condition of a family member ). Does this mean that if "moment.js"
was a some sort of a huge money income we would've seen the author maintain
his role?

~~~
jrpt
Yes. As someone who's written popular open source before, I can say that if it
made me money, I would've happily invested more time into it. Instead, it just
brought me lots of thankless work, which caused me to abandon it.

Funding would go a long way towards making open source better. It doesn't
solve everything, but it actually would make a huge difference.

------
cyberferret
I want to join in the chorus of "Thank You"s to Tim... moment.js is one of the
third party libraries that gets pretty much immediately added to all my web
and mobile hybrid apps. So nice to be able to abstract away all those tricky
date calculations. I wish him all the best, and am grateful he made my
development life easier.

------
vaintee
Moment.js is absolutely one of the core utility js libs out there. It has
saved me so much time and I believe that the whole industry has been spared of
motherlode of bugs in self-made time libs, not to mention time spent
implementing/debugging the same. One to rule them all :)

------
stevepotter
Mr Wood, thanks for the great library that I use almost daily. I believe that
leaving was the right thing to do. Take care of yourself, live your best life,
and everything will be fine (including Moment.js).

------
dahdum
Moment.js is a fantastic library and he should be exceedingly proud of the
work he's done. I would hope he's able to distance himself and contribute
again in the future in a more limited role.

------
wrigby
Moment is a fantastic library; I used it to build a world clock to go across
the top of a display wall UI, and it made dealing with timezones in JS
painless. Huge thanks to Tim for writing it!

------
nilliams
Thank you truly for moment. It has saved my bacon so many times.

As other commenters have stated, let us know where we can donate, to yourself
or to charity. Best of luck.

------
vbezhenar
I wonder what goodies might realistically receive author of a popular open
source library in return? Resume line leading to a dream work? Donations?
Payments for some work (customize, education, etc) from interested company?

I really enjoy programming and I always hoped one day to become experienced
enough to start some important project that many people will find useful. But
sometimes posts like that terrify me.

------
thoughtpalette
Also just wanted to say thank you for the library. It was, and has been a huge
boon to many of my projects.

Thanks so much and good luck in your future!

------
kixpanganiban
This is depressing. As an avid user of MomentJS for the past few years, my
thanks and best wishes go out to Tim for starting such an awesome project. Let
this be a wake up call for the open source community to realize just how
undervalued open source devs are, and how much we take them for granted.

------
ErikAugust
Hello Tim,

Thank you for creating Moment.js.

There are two libraries that I always start any project with - one being
lodash. The other is Moment.

------
andrewingram
Moment is one of those libraries that was for a very long time one of the core
utilities for every project I worked on.

The shifting nature of JavaScript has meant i've recently dropped it in favour
of something more modular, but that shouldn't diminish the value I gained from
it.

~~~
lcarlson
What alternatives do you reach for these days?

~~~
maggiepint
If people are going to go to one of our competitors, it's usually Date-fns.
It's a quality library, but it doesn't have a date parser. I personally think
that this is an essential part of a javascript date library given how
unreliable the JS date parser is, but then I do maintain Moment. JS Joda is
another option that recently came on the scene. That one is worth checking
out, as it ports JodaTime, which is a sweet library, to JavaScript.

------
kin
Thank you so much Tim for such a fantastic library. I can honestly say that I
use it more than the libraries that inspired it (underscore/lodash).

