Live data from Hacker News

Professional maintainers: a wake-up call

blog.filippo.io

31–40 of 464 posts

Re: Professional maintainers: a wake-up call

#31

Please define "unsustainable". It has worked great for decades, both for the free market side, and for the FOSS community.

It has certainly 'worked great' for leeches, if you ignore bombs like this logging bug destroying Western civilization. Can you explain a bit more how it worked great for the bulk of maintainers / authors who don't see any return on their work, burn out and have to do something else?

Do you pay for every piece of Open source software you use? How much? What is the criteria you use to determine how much you want to give them?

Yes, it would be very good if more people started to contribute to software they depend on, but to call them "leeches" is not only against the spirit of free software, it is counterproductive as it will probably lead people to the idea that proprietary/closed source is better.

Re: Professional maintainers: a wake-up call

#32
This post didn't go the way I thought it would. When these discussions get going, I always feel a little guilty because my tiny company doesn't pay for all the open-source software we use. I suppose we should, but it would be hard to make a business case for that, since the software is already free. It would be easy to conclude that this is a problem for the big, rich companies to solve, but I'm suspicious of advocating any action that I'm not willing to do myself.

Re: Professional maintainers: a wake-up call

#33
post #12

I feel like the examples of log4j and ua-parser aren't that great, because it would be relatively easy for any other similar lib to take their place, as it's mostly straightforward to implement, even though it still takes time. But there are some things like Kafka, PostgressSQL, Spring Boot, Tomcat, Apache Math, ZooKeeper, the OpenJDK, and all that which are definitely non-trivial and a huge amount of time and effort…

First those developers don't get any money for their work, now you also telling them that the work they are doing isn't really valuable anyway?

Did you consider the fact that half of your examples of worthy things are using the unworthy log4j?

Re: Professional maintainers: a wake-up call

#34
I feel as if engineers at firms that build systems that use open source libraries should campaign internally to create budget line items for paying non-trivial amounts to the maintainers of those libraries.

I find it difficult to blame developers individually. Individuals working at these companies aren't going to see it as their role to send some of their own after-tax income to maintainers via GitHub Sponsors unless they are unusually charitable. But I could definitely see my company sending thousands out the door (pre-tax) every year to the maintainers of the libraries we depend on.

For example, imagine your team is 15 people. Have the company budget for and send an additional one developer's worth of salary out annually to the open source maintainers, divided among the libraries in a proportion agreed to by the development team. Yes, it's an additional cost line item, but it's the right thing to do and it won't break the bank.

Open source has reduced costs dramatically for all of us who use it in our dependencies list. A nominal cost line item on our annual budgets is more than fair.

Re: Professional maintainers: a wake-up call

#35

The only reason I’m able to maintain a reasonably successful open source library is because it is part of an open core business model. Without that I couldn’t justify the development effort or relentless support to myself, or my family. Getting a few hundred dollars a month wouldn’t cut it either. Building a business on a stack of other people’s hobbies isn’t sustainable. I mean, just tell that to anybody outside of…

Agreed. It is exactly the funding model my project (started with two colleagues) endorses. We incorporated federally and keep an open core.

I can't imagine it would be as clear cut for a "library", but it can be done...

Re: Professional maintainers: a wake-up call

#36
post #7

Earlier quoted context omitted.

There are salary discrepancies everywhere in the world. If you mean the salaries across countries, you're comparing apples and oranges. €100k in Berlin goes much further than $100k in Houston (a random big city in the US, I don't think Berlin is comparable to NYC)

Not to mention the person in Berlin has access to state funded medical support, a state funded pension, paid sick leave, paid ma/paternity leave, ... Salaries are lower, but expenses for essential services are simply A LOT less in most of Europe.

Tech companies also pay for health insurance, sick leave, and ma/pa leave. Sure pensions aren't a big thing, but increased savings from increased salary can make up for that (not to mention 401k).

Re: Professional maintainers: a wake-up call

#37
post #12

I feel like the examples of log4j and ua-parser aren't that great, because it would be relatively easy for any other similar lib to take their place, as it's mostly straightforward to implement, even though it still takes time. But there are some things like Kafka, PostgressSQL, Spring Boot, Tomcat, Apache Math, ZooKeeper, the OpenJDK, and all that which are definitely non-trivial and a huge amount of time and effort…

>I feel like the examples of log4j and ua-parser aren't that great, because it would be relatively easy for any other similar lib to take their place

Log4j is a good example, anyway. It's an old library, very old. And a lot of other software depends on it. So the effort of replacing log4j is not proportional to it's feature list, but rather to the feature list times the number of projects already depending on it. (The replacement exists, btw, called slf4j, usually with logback, written by the same author as log4j.)

Java Logging is a subject in itself (I won't say "interesting subject" although it is interesting, in the same disturbing way the lifecycle of a tapeworm is interesting.) but I would argue that these logging libraries are old and have evolved over time in ways that are hard to anticipate or recreate. (Rewriting things also leads you to the xkcd "standard proliferation problem" - https://xkcd.com/927/)

The real problem is that it takes time, like real calendar time, to understand an implementation fully enough to fix it, and no-one wants to do that, because it's a job as critical as it is thankless.

Re: Professional maintainers: a wake-up call

#38
No thanks.

Maintaining business relationships with $megacorp is one of the primary reasons OSS maintainers (maybe just speaking for myself, but I don't think so) do their OSS work, and don't develop proprietary software and market and sell it around a business venture.

If you start writing up contracts or accepting direct payments with any strings attached at all, the dynamic is completely changed.

Post reply on HN