Hacker News new | comments | show | ask | jobs | submit login
What it feels like to be an open-source maintainer (nolanlawson.com)
91 points by montogeek on Mar 5, 2017 | hide | past | web | favorite | 20 comments

Apparently you've avoided one of the greatest joys of open source... forks.

I worked for 7 years on an open source project with hundreds of people subscribed. My most trusted maintainer started a drumbeat about project goals that ended up causing two forks, decimating the user community, and destroying a lot of potential. Even more interesting is that all I ever seem to get, if I get mentioned at all, is negative press. But, as John Gorka once said, "What matters most is what you do for free".

As for the worry about combining open source and money... forget it. William Stein, lead developer of Sage, built Sage using grant funds and graduate students. Unfortunately the grant money dried up and the students graduated. He has since taken a leave of absence and started a company in the hope of keeping the project alive. Wish him luck.

I've looked for funding from a number of different sources, government, industry, and a separate business, all without success. I spent an average of $3,000 per year for the last 16 years, all out of personal funds. That's assuming my time is $0/hour.

Rest assured, mixing open source and money is the least of your worries.

So why do open source programming? Real musicians MUST make music, in spite of poverty wages. It's not what they DO, it's what they ARE. Similarly, I'm a programmer... it is what I am, not what I do.

> As for the worry about combining open source and money... forget it.

I dunno... I've done well. Offices in Canada and France, 6 people working for me (not all full-time).

The key for me is to sell services around the software, and also sell support. If it takes people 10 days to figure out how to do something, a decent percentage of them will pay you to do it for them.

But it has to be the right market, too. Selling to consumers is a non-starter. You need to sell to people who have money.

>But it has to be the right market, too. Selling to consumers is a non-starter. You need to sell to people who have money.

What about small businesses? Is that a pipe dream, or do you think it's possible to get them to actually spend money on service and support? (I'm asking because I have a business idea for software which would only appeal to SMBs, generally smaller ones I think.)

The problem with SMBs is marketing. How do they know to use your software? What is the cost of sales?

I've had 6 months of negotiations with customers. For a large contract, that's OK. For a small one, it's not worth my time.

> Selling to consumers is a non-starter. You need to sell to people who have money.

Hence why the year of desktop FOSS will never happen, given how consumers related to packaged software.

Also the profits on iOS vs Android stores is a good example of it.

So you have an economic incentive not to make it too usable?

(This isn't an entirely serious complaint, but usability does tend to be an issue in Free software, and as you say consumers have no interest in paying for anything)

> So you have an economic incentive not to make it too usable?

And... do commercial companies don't have the same incentive?

The difference with me is that I have pride in my work. I do good engineering.

The reason I charge for services is that designing complex RADIUS systems is hard. It's about specialized expertise in esoteric technical areas.

There are 100's of 1000's of sites using my software who have downloaded it gratis. They have small needs, and the basic software works.

As for usability... it's a pet peeve of mine. Everything is documented. You get full information about what the system is doing, and why. That's usability that none of the commercial products have.

I’ve already told my partner that, if and when we decide to start having kids, I will probably quit open source for good. I just can’t see how I’ll be able to make the time for both raising a family and doing open source. I anticipate that ultimately this will be the solution to my problem: the nuclear option. I just hope it comes in a positive form, like starting a new chapter of my life, and not in a negative form, like unceremoniously burning out.

I sometimes forget behind a lot of my favourite open source projects there are real life people with real fulltime jobs that aren't related to the projects.

I am lucky to combine open-source and work but this doesn't mean that those issue don't affect us. Endless stream of issues, anger and expectations is a norm. I love open-source and at the same time sometimes it feels like my work just makes people angry.

Every time that angry to-be users shows up, I am trying to remind myself that for every one of them there are hundredths or thousands of happy ones.

It is also important to find a balance on what you work on. Will resolving this issue solve problem of many users, how many, is it the aim of a project.

Other important value is being able to say no. "Sorry, this is not issue of this project", "No, this feature doesn't align with the aim of a project" and even in case of PRs (which is extremely hard as someone put quite a work into it) you sometimes have to say no.

This might be the hardest part of maintaining open-source, this and noise overload. There is no input filter, if you are luck other contributors will step in and act as one but it isn't sustainable either.

Look, you're doing it wrong. You don't need to apply this kind of 100% customer-service attitude to open source software development.

It is simply a waste of time for a developer to answer every trivial question, or address non-issues.

Have a clear format and policy on what kind of contributions you accept: bugreports, patches, etc. If the sender fails to comply with the rules, ignore the input.

Since I still like my projects and my family, I decided to give the finger to the so called «open source community».

Most open source users see open source devs as the cheapest workforce on earth they can bully.

I decided I couldn't care less of the opinions of strangers and went on after numerous IP violations, and decided to give up on helping people trying to just abuse benevolent people.

I am a MINOR -like shit- dev, famous/respected (for good reasons) devs that are treated like shit and still behave nicely are suffering for me of a major Stockholm Syndrome.

Someone trample you while you try to make a gift, my policy is to headbutt directly.

I ignore github notifications nowadays aggressively. I interact with people at the speed with which people interact with me IRL (which is slow), and decided since even a minor dev's code is good enough to be stolen I must be great, and thus should treat myself like a star.

Help yourself, be a human that behave as if life was too precious to be spoiled. Have fun, be wild, enjoy life.

> Have fun, be wild, enjoy life

Absolutely love and agree with this.


An illuminating post. The original author seems to be worried about being seen as a whiner, but I found it to be exceptionally lucid and informative.

I see this as a consistent thread in OSS projects - lack of a sustainable biz model. Have you tried joining any not for profit foundations?

have you considered asking for help? contributors can do more than just submit PRs and create bug tickets.

I looked at the article going in with a somewhat sympathetic view. But after reading that the person is at Microsoft, I thought "Well, good. Maybe now he will know what it was like about 10 years back for folks who were probably working just as hard as he is, plus having to deal with the absolute jackass behavior of the same company he now works at."


So the unpleasantness and stress he deals with as part of a good-faith and unpaid effort to provide something of value to the wider community is perfectly fine because a decade ago his current employer caused problems for other open source developers? He's getting bad karma because of something other people did?

I'm struggling to comprehend the thinking that makes such sentiments seem remotely reasonable or rational.

Well, if you want to be that precise about the usage of words like karma, lets just say it is the organization's karma. I would like to think others can see my first comment as rhetorical.

Although I am now curious. If I found a way to link it to his karma would you actually like to hear about it?

This reads as if the author were not suited for that kind of work. Yes, working through code and figuring out what it does, and why it does it that way, and whether it can be improved is work, maintainer's work, and if it's stressful, hard or not fun to you, than maybe you just shouldn't do it.

I have seen the other side in this situation. I've found it at times very hard to get reports about real bugs to developers. While some developers won't even listen to you if you tell them why their code is broken, others actually tell you what you need to do to give them what they need, and then they work on it. Shoutout to the xorg/mesa people; I've found them to be of the latter type.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact