
The Realities of Being a FOSS Maintainer - jwcrux
https://caddy.community/t/the-realities-of-being-a-foss-maintainer/2728?u=matt
======
SwellJoe
When Caddy made their announcement earlier this week, I shook my head with
pity at what they were about to endure. I could have given them a list of all
of the shitty (and merely unhelpful) things people were going to say to them,
because I've heard them all, too. There's a deep streak of meanness, and, as
the post states, entitlement, in the OSS user community (much less so in the
developer community, which doesn't overlap as much as it once did, though
sometimes developers do it, too).

And, the really awful thing is that if the project continues, it'll never
stop. Every once in a while someone or some group will get a bee in their
bonnet about the thing not being open enough, or the authors not following or
not understanding the license (as though the copyright holder needs a
license), charging too much for the one little thing they reserve for paying
customers (no matter how small that amount is...we charge as little as
$6/month, and we still get complaints about price).

And, there's always a huge misconception that because an OSS project has a lot
of users it must be making a lot of money, especially among the people who
won't tolerate _any_ action that would actually make money for the project.

What I'm trying to say is that OSS is a hard-as-hell way to make a living
(I've done it for my entire professional life, over two decades now), and
there's gonna be a handful of users who will make it unpleasant. I love it
when I can build some one-off thing and just throw it over the wall onto
Github and never think about it again...where I can take a "use it or don't,
but don't ask for my time" attitude. Making a business out of an OSS project
makes it harder to select good users (who become good customers), though you
have to in order to survive.

~~~
zbentley
I agree with everything you said, but couldn't resist:

The awful behaviors you see from some users of a previously free-and-open
project that went closed (ish) sound an awful like the behaviors of . . .
paying customers in pretty much every industry.

[https://talesfromawaitress.wordpress.com/](https://talesfromawaitress.wordpress.com/)

[https://clientsfromhell.net/](https://clientsfromhell.net/)

~~~
SwellJoe
If they're paying me (or if they're contributing in some way), I'll accept a
certain level of belligerence. It's the assholes who think I'm gonna put up
with their crap for free that most chap my hide, and I suspect OSS is unique
in just how entitled people can be for something they got for free.

What's interesting is that people who pay or people who contribute are, on
average, nicer to us than the people who don't.

~~~
redler
It being "free", in a certain sense, makes it invaluable—a blank canvas on
which the ungrateful have the opportunity to each paint their own vision of
its worth. Something priced at one dollar is worth a buck, but at zero it's
priceless, so there's no specific psychological cap on the well of entitlement
for a certain kind of unreflective user.

------
fusiongyro
Of course you're going to hear supportive friendly things from your friends.
It's much harder to tell someone a hard truth if you see them as your friend
and want the best for them.

Here's a blunt truth. If it's easy for me to ditch your product, your product
has no value. 90% of the comments here on HN amounted to "gee, I guess I have
to spend an extra 20 minutes configuring Nginx now." Solving 20 minutes of
Nginx configuration is not a viable business. System configuration is handled
by some Puppet library author. Who's going to spend $100 on your product so
they don't have to spend $20 on a non-free SSL certificate?

You're friends with the RethinkDB developers? The moral of their story was
_even_ if you have a compelling product, _even_ if you have an interesting
niche, _even_ if you give it away for free, _even_ if you give away the source
code, _even_ if you have features nobody else has, if you are entering a
saturated market you are facing a massive, time-consuming, expensive up-hill
battle. Moving away from RethinkDB to Postgres is _hard_. There are things
RethinkDB does that Postgres just doesn't do. But people did this anyway
instead of paying, instead of contributing.

Moving away from Caddy is _simple_. Your product barely even exists. That's
why you're having trouble making money. Solve a real problem and you'll make
real money.

~~~
rapsey
You miss 100% of the shots you don't take. A lot of the time experts don't see
a market before someone makes a business out of it.

It's obviously not going to be the next big IPO. If he can make some money
back for his time however, good for him.

If his project is useless, people would not get so upset.

~~~
fusiongyro
You miss 100% of shots you make when you aim away from the basket with no ball
in your hands too.

There is a market for his product. Nginx and Apache already own that market.
His differentiator is being easy to install. Puppet et. al. solve ease-of-use
for large corporations with the budget. The niche that cares about being easy
to install is the niche with no money and nobody to pawn it off on. That niche
is also passionate and loud.

If he could make some money back for his time, he would already have had a
business here.

This business idea is essentially selling pre-made cardboard signs to the
homeless. If they have the money, they aren't homeless; if they don't, well,
they already make their own signs.

~~~
ZenoArrow
> "His differentiator is being easy to install."

Not just easy to install. Easy to install, maintain and extend. Those
properties clearly have value, not just for those who can't afford to pay
licence costs.

The idea there's no market for Caddy is clearly false. As referenced in the
linked article, there are already uses of it in commercial organisations,
something you're suggesting can't possibly exist as "Nginx and Apache already
own that market".

The only criticisms I'd make is that the price is too high (in my opinion) and
there should've been prior warning given before switching to a paid model, so
that companies could budget for it in advance. However, that doesn't mean they
won't have paying customers. Note that they've already got commercial
sponsors.

~~~
AndyNemmity
Price being too high is an interesting question. I've found that people
willing to pay, will pay a high price. You don't really gain anything putting
it any lower. Those that want it free or else stay the same.

Maybe others have different experiences...

~~~
ZenoArrow
Consider what's cheaper, paying for Caddy under its current pricing structure
or paying for a consultant to configure NGINX? If the key selling point of
Caddy is that it makes web hosting easier to manage, but you can get around
that cost by paying a one-off cost for someone to set up a free, high-
performance web server, you've taken away the most of the potential benefits.

As a reference, you can see the current pricing structure for Caddy here:

[https://caddyserver.com/pricing](https://caddyserver.com/pricing)

Note that the limited time introductory price is still more expensive over a
year than paying a consultant for a couple of days to tweak NGINX.

~~~
AndyNemmity
That doesn't look more expensive than consultant, looks less. That's what I'm
saying, if anything I think they may have underpriced that cost. That's way
cheaper than most support options I've seen.

~~~
ZenoArrow
If you're seeing companies spending $600 a day for a devops consultant, I
don't know what to say other than you can get much more affordable, high
quality advice elsewhere. That said, the super high wages of IT staff in some
parts of the US is a frequent source of surprise for me.

------
aorth
> _(Is anyone offended that you can’t remove nginx’s Server self-promotional
> header without an extra module?)_

Wait a second. The Caddy developers implemented a premium "thank you" feature
that embeds their sponsors' company names in the HTTP headers of the binary
distribution[0], and then defends this by complaining that you can't disable
nginx from simply printing a header that says "server: nginx"? It's not even
remotely the same thing!

I think this was a very poor use of judgement. I don't even see why it's
relevant that they asked their sponsors "do you want us to put your names in
the HTTP headers of all the poor suckers running the binary builds?" There's a
handful of other places that would be way more appropriate for spamming
sponsors' names, for example: banner on the website, in the log files, on the
download page, in the README, etc.

[0]
[https://github.com/mholt/caddy/pull/1866](https://github.com/mholt/caddy/pull/1866)

~~~
TAForObvReasons
The biggest rub for me was the intentional misdirection regarding the Apache 2
License.

As a web server, the only attribution required is to the person or entity who
is deploying the server, _not to the people accessing the website!_ (To be
clear on that point, the actual web server software is running on the server
end, not on the user end; this is in contrast with a JS library that runs in
the web browser)

I think the authors either fundamentally misunderstand the requirements (in
which case they should find a lawyer) or they are intentionally misleading
readers (in which case they are acting in bad faith and deserve contempt)

------
rmrfrmrf
I think the main problem is that the original announcement read more like a
ransom note than a press release.

IMO the author doesn't realize how much price factors into tech stack
decisions, or how the majority of his users are developers who now have the
new responsibility of creating business cases for a piece of software (or
scramble to find a replacement) that need to go through approval, or the
projects that now have to be delayed to switch around one framework on the
back end (I can just see the looks of manager/PM faces everywhere when they
get the news from one of their devs).

The tone is another big issue. Flippant phrases like "what's new for personal
edition users? Not much" isn't going to get any laughs after talking about
mandatory payment. Other times, the disdain for users seeps from the wording
(like the passive-aggressive "reminder" that internal apps constitute
commercial use).

I'd really encourage the author to go back and re-read that announcement as a
user who has taken a gamble on your software and is now invested in it. Yes,
this might be a completely necessary move for the survival of Caddy. The
necessity, though, doesn't mean you can skip the formalities. Users still need
to be sold on the idea.

~~~
avaer
Users don't need to be sold on the idea. They already bought. This is like
buying something with your credit card, happily using it, and then getting
upset by the charge on the corporate card at the end of the month. As a
competent software professional you know the stakes of using free software.

The professional users will pay for the software they're using, or accept the
consequences of the tech decisions they made. Maybe the release wording
sucked, but software vendors shouldn't be on the hook to sell you the thing
you already bought.

~~~
rmrfrmrf
That's an interesting thought process. How, though, does paying $0 up-front
for something that costs $0 put you on the hook to later be charged any price
the vendor wishes? And what makes this different from a $5 purchase? If I buy
a hot dog from a street vendor, I certainly wouldn't expect to see another $10
charge from him 6 months later just because he felt like he should have
charged more at the time.

~~~
ponow
Because in life, all prices are subject to change. Maybe you wouldn't expect
the hot dog to double in price to $10, and conversely the vendor wouldn't
expect you to become bored with hot dogs and now are only willing to pay half
at $2.50. The only right each party has here is to say no.

~~~
rmrfrmrf
You misunderstand. In the analogy, I never bought a second hot dog. Likewise,
all "commercial" users of Caddy had the EULA switched out from underneath them
to force them into non-compliance.

~~~
detaro
Which shows how bad the analogy is.

You weren't "forced into non-compliance", you could keep your hot dog (=caddy
executable you downloaded before) just fine.

The difference between hot dogs and software is that hot dogs don't get (and
don't require) updates after the fact, while for software they are important.

EDIT: also, you don't accidentally install new hot dogs through dockerfiles or
something - it's quite possible people ran into non-compliance that way, given
there was no prior warning.

~~~
rmrfrmrf
Again, this stresses the need for clear communication.

> Beginning today, all official Caddy binaries come with an End User License
> Agreement (EULA) that designates them either for Personal (non-commercial)
> or Commercial use.

They probably could have clarified this by saying "Beginning with version
0.10.9" instead of "all binaries".

------
zbentley
This was pleasantly nuanced and comprehensive. The gamut of reactions to
license changes is always a fascinating roller coaster.

The "most maintainers have very little to lose" point is one that isn't
emphasized often enough. For every famous, high-profile FOSS developer who
gives big swaths of their life to their projects, there are dozens or hundreds
of people who are: a) contributing stuff they build for their job that they
convinced the company to open source (hopefully out of good will, and not out
of "maybe community PRs can fix our garbage fire") b) contributing code they
wrote while learning something new for personal or professional enrichment, or
c) just doing it as a fun activity.

The give-your-life-to-a-project folks are important, and prolific. Hats off to
them. But _so are all those other contributors_. They might write less code
than the lifers, but their code isn't any worse because they spend fewer hours
per week developing it; it just takes longer to get written. And there are a
_lot_ more "casual" FOSS developers than lifers. Many FOSS projects started
out in that "casual" realm before they became household names today. Sure, a
lot of people think some of those casual projects aren't great, but that's not
unique to small FOSS projects (cf. systemd).

All this is to say: be careful when communicating, especially negatively, with
FOSS maintainers. If ethics and basic decency isn't reason enough to treat
your fellow humans with compassion, try self-interest: a lot of these people
are so un-invested in the projects you depend on for your {fun|living|freedom
from the soulless void of the blinking cursor in an empty terminal} that your
"How could you be so stupid?" or "Guess this project has gone to hell" comment
on their GitHub PR might be enough to make them abandon it entirely.

Edit[s]: I accidentally some words and punctuation marks.

------
Sir_Cmpwn
Oh, boo-hoo. I maintain a bunch of FOSS projects too and I endure entitlement
too, and I yet was still there calling you out for this. What Caddy has done
is _deliberately mislead and disrespect both new and established users_. Other
groups have added commercial licensing options to their software without
facing (as much) vitrol because they didn't _mislead_ or _disrespect_ people
while doing so. Don't think Caddy is in the same league as them. You got hate
because you did it _wrong_ , not because you did it at all. Your post is
mining for sympathy because you got hate for being a jerk and it demonstrates
that you've learned little from the event.

You may not owe your users anything, but guess what: they don't owe you
anything either. That's how open source works.

~~~
rocqua
You may not owe your users anything, but guess what: they don't owe you
anything either. That's how open source works.

Yep, that is how open _source_ works. Note the 'source' there? Anyone is free
to charge for compiled binaries. If this compilation has added bonuses (e.g.
including plugins) that gives people a reason to pay for that compilation. In
any case, those that don't like it can just compile the project themselves.

What exactly do you think was misleading about this move?

~~~
DandyDev
> Anyone is free to charge for compiled binaries. If this compilation has
> added bonuses (e.g. including plugins) that gives people a reason to pay for
> that compilation. In any case, those that don't like it can just compile the
> project themselves.

Yep, anyone is free to charge whatever amount for whatever service/feature
they offer. But apparently, in this case, the backlash against Caddy's move is
greater than the willingness to pay for the service rendered (building
binaries without the sponsor header).

Matt's post, and a lot of comments here on HN defending Matt, are missing the
point: yes, there was vitriol, and yes, people reacted in a way that was
disproportional to the announced changes, but in the end the most important
take-away is that people are _not_ willing to pay for the product and are
angry because of the changes and the way they were handled. This will cost
Caddy a lot of business. Period.

In my opinion Matt should have done one of two things:

\- Own up to his mistake (if he agrees it's a mistake)

\- Stand by his choices, grow a pair, and laugh at the community for their
silliness

What he did instead, is play the victim. He's not a victim. He tries to run a
business. That alone will always alienate people. Deal with it!

~~~
pjmlp
Those people that weren't paying aren't a business.

Matt cannot pay his bills with them.

------
ploggingdev
I think a significant portion of the hate could have been avoided if mholt
made it clear in "The High-Order Bits" section of the original blog post that
Caddy is still free to use for commercial purposes _if you build from source_
and also explain that it's possible to remove the response headers. That lack
of clarity can be explained by the need to push businesses to pay for a
license. This move is often perceived as a dark pattern among hackers who hate
it with a passion, as evident in the previous post's HN comments.

Having said that, what was particularly disturbing was the amount of hate
towards the Caddy team. It's best to explain why think a certain change was
"bad"/not in the your best interest and maybe offer suggestions on how to
balance the need to build a business without alienating the community that
supported the project in the early days. Outright vitriol is not a productive
way to further your cause.

I guess building a business out of FOSS is as hard as ever.

------
quickben
It depends how you look at it: 1\. I would contribute to GCC because it's
still "free". 2\. I would have contributed to Caddy, but now they are half
commercial, so I'm disinclined to provide my "free" to their commercial
success.

Most decent people that I know would calmly do the same.

Most leeching off Caddy will send the vitriol to the author. But, they are not
his community, now they are his customers.

~~~
csdreamer7
> It depends how you look at it: 1. I would contribute to GCC because it's
> still "free". 2. I would have contributed to Caddy, but now they are half
> commercial, so I'm disinclined to provide my "free" to their commercial
> success.

Your argument would apply to any Apache or BSD licensed code. Not just Caddy.

Caddy has used the Apache 2 license for 2 years. Why would you not contribute
now vs when the license was committed? Because they are not providing full
free builds anymore? The public source code you are contributing to is still
free. Nothing would have stopped anyone else from slapping a EULA on a custom
Caddy build to sell.

It feels like a poor reason to refuse to contribute to an Apache licensed
project.

~~~
kilburn
License isn't everything.

An Apache licensed project with no commercial offering will happily
incorporate your improvements whenever they meet its quality standards and
scope. Now, when the company controlling the upstream project is chafging for
the same functionality your patches provide... let's just say ut is going to
be harder to contribute them upstream.

That's why I find it a no-brainer to invest in and contribute back to open
source projects without "paid features available" whereas I will avoid the
same project when they do.

Projects where maintainers get money through support contracts are fine for
me, although a similar argument may be made regarding the project's
documentation/easiness of configuration.

~~~
Whitestrake
> Now, when the company controlling the upstream project is chafging for the
> same functionality your patches provide...

It's important to correct this statement, which is either disingenuous or just
incorrect.

Light Code Labs is not charging its users for the functionality of the Caddy
server. They are charging its users to provide pre-compiled binaries with
optional customization in the form of a selection of plugins and server types.

Don't conflate binaries distributed under EULA via the build server at
caddyserver.com with the actual functionality of the (still 100% free)
software. You're welcome to (not) contribute and (not) benefit, at your
leisure.

As the actual post linked by OP states, the maintainers tried support
contracts. Nobody bought them, so it wasn't sustainable. Their options were to
look for other solutions or stop maintaining the project. You may or may not
prefer that they abandoned it instead, but they made a choice.

------
zizek23
No one is forcing anyone to release an open source project or make anything
available for free. It's a choice. There are entitled, selfish and extremely
immature users but also projects.

Open source users frequently put up with extremely poor products in the
beginning and help them mature and grow.

In the case of users some are frequently on HN itself complaining if a project
repo on github is not updated in a week. There are startups who are successful
who let alone give anything back to open source projects do not even properly
acknowledge their use. This is hand waved away on HN when it should be the
leading force of change against this kind of self serving culture.

Users pay you with their attention, that is the currency of open source and
adds tangible value to your project in the beginning when you have no users.
So projects like Caddy have been paid and validated by their users which
enables them to now make a commercial push.

Once you gain traction you can't suddenly change the rules of the game and
change the narrative to 'free' and 'paid' users or 'developers' and be
dismissive of users who supported you.

Yet when even projects like Debian dismiss users to focus on developers now
that they have traction, nevermind a project without users has no reason to
exist, its not surprising this is the predominant dismissive attitude in open
source towards users.

------
strken
As someone who was going to switch a few personal projects to Caddy this
weekend, and who read through both the initial announcement and this, I am now
massively confused by the whole thing and have no idea what users are actually
allowed to do.

Is "sudo apt-get install caddy" allowed? Does header advertising mean "Server:
caddy" or "X-Advertisement: go to www.malicious.com for camgirls"? Is this
indicative of a broader move to stop supporting the open source version? If I
had previously installed Caddy through a package manager that grabbed the
official binaries, and I updated my system, would I now be breaching an EULA
that I never saw? And so on.

Obviously I am not entitled to get anything for free and don't use the
software anyway, and I can probably find answers after 10 minutes on the Caddy
website, but this seems like a communications issue that might have made
people angry - particularly if they thought they would have to immediately
migrate back to nginx with zero notice.

~~~
jlgaddis
The caddy source code is licensed under the Apache License. As a user, you can
modify and/or use the software in pretty much any way you see fit -- as long
as you download the source and build it yourself. You can add or remove
features (including the controversial header) and use it as you wish, but
redistributing modified versions and calling them "caddy" may not be
permitted.

Binary packages from your distro should also be fine.

If you download and use the binaries from the caddy web site, you are bound by
their EULA.

To be safe, use the version provided by your distro or -- even better -- build
it from source yourself.

You may want to read the actual Apache License [0] yourself, skim over the
"Licensing conditions" section [1] of the Wikipedia page, or, at the least,
review GitHub's bullet points [2].

[0]:
[https://www.apache.org/licenses/LICENSE-2.0](https://www.apache.org/licenses/LICENSE-2.0)

[1]:
[https://en.wikipedia.org/wiki/Apache_License#Licensing_condi...](https://en.wikipedia.org/wiki/Apache_License#Licensing_conditions)

[2]:
[https://github.com/mholt/caddy/blob/master/LICENSE.txt](https://github.com/mholt/caddy/blob/master/LICENSE.txt)

------
jim-greer
This is a great piece.

I'll quibble with this bit though:

> ...toxicity festers in open source because it’s all too common for forks to
> ground their motivation in emnity towards other projects.

This is wishful thinking, for the most part. Communities don't break off
because things are going well. The American Revolution wouldn't have forked if
King George had been sympathetic to their needs.

------
makecheck
There has been this assumption that software is "free" for so long that many
people must assume it is nearly trivial to create and maintain.

Perhaps every download page should have a preamble reminding people how many
staff, how many collective years of effort, and how many dollars for laptops,
web hosting, etc. went into what they are about to use. Perhaps every
"./configure && make" should print a similar dump to the terminal. Put it
front and center, clue people in.

------
sah2ed
> _Comments started rolling in, but I had class until almost noon. With me in
> class and Cory at his day job, it was impossible to coordinate any responses
> until much later that day._

The quote above clearly shows a huge oversight -- there were no plans in place
to block out time to do PR after the announcement. Better to schedule the
announcement to coincide with a period when the co-founders would be able
clarify the public's perception of the changes. Even for OSS projects,
marketing is important. But that's not even the underlying issue.

There is a subtle but very important observation that the OP's article didn't
touch and I think will help illuminate why the seemly _small_ changes to Caddy
lead to the outburst of entitlement and vitriol directed at Matt and Cory.

Humans are naturally loss averse[0] this is why there is an _enormous_
difference between marketing copy that says "a $5 discount" versus saying
"avoid a $5 surcharge". The original announcement[2] was framed[1] like a loss
-- existing users should prepare to deal with previously non-existent
advertising of Caddy's sponsors -- causing the human instinct of loss aversion
to kick in in full force.

This will always happen whenever you switch your user/customer interaction
from social to market norms [3] which is essentially what it means to monetize
an OSS project. Better to keep a free product unchanged then create a separate
product targeted at commercial users [4] to avoid alienating your free users,
or incurring their wrath.

Engineers are generally skeptical of marketing but this is one of those
situations when good marketing would have helped to put out fires.

[0]
[https://en.wikipedia.org/wiki/Loss_aversion](https://en.wikipedia.org/wiki/Loss_aversion)

[1]
[https://en.wikipedia.org/wiki/Framing_effect_(psychology)](https://en.wikipedia.org/wiki/Framing_effect_\(psychology\))

[2] [https://caddyserver.com/blog/accouncing-caddy-commercial-
lic...](https://caddyserver.com/blog/accouncing-caddy-commercial-licenses)

[3] [https://www.technologyreview.com/s/419923/social-vs-
market-n...](https://www.technologyreview.com/s/419923/social-vs-market-norms-
at-reddit/)

[4]
[https://en.wikipedia.org/wiki/Product_differentiation](https://en.wikipedia.org/wiki/Product_differentiation)

------
JepZ
Well, I barely knew Caddy (had to google it again), but after reading the
"Ugly" section I am sure I will not become a caddy user anytime soon.

I mean we all know how brutal (emotionally) online communities can be and I
respect anybody who stands against it. Nevertheless, I do not think that
'Entitlement' and 'Emotional Manipulation' are the real problems here, because
those are just honest expressions of what other people think. Those comments
are some kind of feedback which the maintainer can accept or ignore.

On the other hand, there are a lot of dicussions where we have personal
assaults, like 'the maintainer is a prick' or 'what a dumb move'. Those are
totally unacceptable and the people discussion should show what they think
about such comments.

And in the end, HN has a very heterogenous group of commenters, but Paul
Graham gave us a guide on how to write good comments:
[http://www.paulgraham.com/disagree.html](http://www.paulgraham.com/disagree.html)

------
CoreXtreme
1\. Dealing with paying customers is actually worse than this. Unless, of
course, you have an army of lawyers.

2\. You initially sold people on this project. That's what got your project
enough eyeballs in the first place for you to even consider making it a
business.

3\. Of course, your acquaintance will not complain - that's precisely the
reason they are still with you. As you got upset when people told you of your
unfairness. It's such a pity that these days people don't even have friends
who can tell them the truth to their face.

4\. OSS as requires a certain spirit. The OSS project is being sold on a set
of ideas which is exactly opposite of the commercial world - that's why they
use and contribute to your product.

5\. Maybe you are too poor to be an open source contributor, I suggest getting
a job and not expecting to make money by flipping the board. That will get you
more fame and respect.

That said, now playing victim will not help you.

------
type0
This is quite an interesting tread about packaging Caddy:
[https://caddy.community/t/packaging-
caddy/61/8](https://caddy.community/t/packaging-caddy/61/8)

and provides some insights into his thinking about builds whether you agree
with him or not.

------
edwhitesell
I find it amusuing when I tried to load the site I get a 429 "Too many
requests" nginx error.

~~~
mholt
That's the Discourse container... Sigh.

~~~
edwhitesell
Ah, OK. Well understandable then. Unless that could be obscured with a reverse
proxy or something.

------
yjftsjthsd-h
In some ways, I agree with him; he doesn't owe anybody anything, it's fine to
make money on his software, etc. The whole thing still rubs me the wrong way,
and I think some of the presented arguments are, to say the least, biased.

>> “But then I have to build from source to get what I want.” > Yes… that’s
the point. Welcome to open source.

> I do find it ironic that the open source community is so irate about having
> to compile software from source to customize it the way they want.

I trust the author is using LFS or Gentoo, and is personally building his Go
toolchain and not using any Google-provided binaries?

>> “So I have to pay to remove ads from my web server.”

> This was one of the biggest misconceptions.

Half-credit, you're both wrong. Users could pay _or_ build themselves to avoid
ads. So to a hobbyist who was using Caddy specifically because of the tiny
learning curve, this is not a misconception. Thankfully this is a mostly moot
point since they took the ads back out.

EDIT: Fixed formatting. One day, I will post and not have to fix newlines...

~~~
yjftsjthsd-h
Oh, and for bonus points, after telling us that we should just compile it
ourselves, he highlights that there is a helpful build server, which "was once
open source"... but no, you can't have it; they've closed it up. And even
though it was "open source" at one point (his words), "If you find some old
source code still online, be aware that no license file was added to the code,
and we have not granted others any license to use it." It could be open source
or unlicensed, pick one.

~~~
mholt
You're right, looking again at it, that paragraph is poorly worded. I should
have said something more like "the source code was on GitHub" instead of "it
was open source".

~~~
jlgaddis
At the time it was "on GitHub" \-- regardless of the presence of a LICENSE
file -- was your intention that it be considered and/or treated as "open
source"?

I don't use Caddy and never have so I'm mostly a disinterested third-party so
it doesn't matter to me either way. I'm more curious if you honestly never
intended it to be open source or if you're simply using the fact (now, later,
when it's convenient) that a LICENSE file was never explicitly included as an
"out".

------
z3t4
Software licensing is damn hard. When it come to certain tools people wont use
them if they are not open source or don't get active maintenance. But they are
also willing to pay for it.

------
throwaway0071
Caddy's mholt holds some similarities to Docker's shykes in that both lack
business and open source acumen.

------
chriscappuccio
Every popular project gets this kind of crap. The best response is to push
back on these entitled fools.

I don't see how this is a better business model for Caddy than donations
(which didn't work.) This is still basically a donation model, since they are
not creating a separate closed-source edition. This is a way to automatically
solicit for donations, making them look more like licenses.

Why is a new web server so important that there were going to be commercial
users paying for it over established alternatives. When I saw that it was
written in Go and replete with the latest buzzwords, I realized that this was
written for ninjas. The intersection of ninjas plus commercial users may be
too small for a business. (I hope I'm wrong for the author's sake)

------
stordoff
FWIW, the changes to Caddy mean I won't be using it going forward.

* I'm not going to build from source - the key differentior for me was that Caddy was _simple_. If I need to build from source, that goes away. ("I do find it ironic that the open source community is so irate about having to compile software from source to customize it the way they want" misses the point IMO - a key selling point of Caddy was HTTP2/SSL with minimal configuration, attracting people far beyond the "open source community").

* The promotional header is a non-starter for me. My current site very deliberately shows no ads and relies on as few external services/resources as possible, so I'm not happy embedding an ad in every request (I know it has been reverted, but it's still shown on [https://caddyserver.com/pricing](https://caddyserver.com/pricing) which would make me concerned about it coming back).

* The personal/commercial licence split is something I don't want to have to worry about. Currently the personal licence is fine, but what if I decide to add ads to get a few pounds a month back? It's not something I really want to have to think about.

* Pricing - I would consider paying to avoid the header/concerns about personal/commercial split, but starting at $1200/year (billed annually) is a complete non-starter. It's nowhere near what I could afford, but I'm also not seeing why you would pay that - basic email support doesn't seem compelling, there are no additional features over the free version, and it seems any company who could afford to pay it would also be in a place to build from source (or pay for an nginx consultant and get a comparable feature set).

Of course the Caddy devs are entitled to make these changes, but they make it
into something I don't want to use.

Two other quick points while I'm here:

* Brand guidelines of "Please do not call it Caddy Server" seem strange when the main domain is caddyserver.com

* Linking to an EULA (from the footer of caddyserver.com) that contains e.g. "{{if eq .Type "personal"}}" is less than useful.

------
RomanPushkin
FYI, there is no FOSS -- that expression is a misunderstanding. There is the
free (libre) software movement, and there is the open source non-movement: two
different viewpoints based on different values.

See [https://gnu.org/philosophy/open-source-misses-the-
point.html](https://gnu.org/philosophy/open-source-misses-the-point.html) for
more explanation of the difference between free software and open source. See
also [https://thebaffler.com/salvos/the-meme-
hustler](https://thebaffler.com/salvos/the-meme-hustler) for Evgeny Morozov's
article on the same point.

Regarding the term "FOSS", see [https://gnu.org/philosophy/floss-and-
foss.html](https://gnu.org/philosophy/floss-and-foss.html)

~~~
arglebarnacle
No doubt many people here are already aware of Richard Stallman and his views
about open source software, but needless to say his perspective is the
beginning, not the end, of a discussion.

It's just wrong to say that that "there is no FOSS" as if you were correcting
someone's spelling mistake. The debate about the direction of open
source/Libre software is too important to be treated in the way you chose for
your post.

~~~
carapace
I want to get a t-shirt that says in block letters, "STALLMAN IS CORRECT".

Scolding on tone aside, the comment by RomanPushkin is also correct:

> FYI, there is no FOSS -- that expression is a misunderstanding. There is the
> free (libre) software movement, and there is the open source non-movement:
> two different viewpoints based on different values.

This is very much the _literal truth_ at least in my little world. Stallman's
vision and response (the GNU license/weapon) are very much the "alpha and
omega" of Free Software. In contrast, the entire "Open Source" non-movement
either doesn't get it or doesn't care. From the POV of a free software true
believer (Hello there!) there is _no point_ to Open Source.

~~~
ZenoArrow
> "From the POV of a free software true believer (Hello there!) there is no
> point to Open Source."

The key differentiator between open source and free software is ideological.
If you value ideology over pragmatism, then I'd see your point, otherwise it's
kind of a misguided statement.

There's nothing in the ideals of free software that prevents what the Caddy
authors have done. Stallman has made it clear time and time again that the
'free' in free software is a matter of liberty rather than price. The freedom
to charge money for free software has been made very clear to anyone paying
attention. Here's an article from the GNU Project website about selling free
software:

[https://www.gnu.org/philosophy/selling.en.html](https://www.gnu.org/philosophy/selling.en.html)

~~~
carapace
> The key differentiator between open source and free software is ideological.

I very much disagree. There is a pragmatic difference. The ideology of
capital-F Free Software derives from a pragmatic goal.

RMS wanted to fix a printer.

Today, we live in a world where the computers in our cars have been programmed
to _lie to us_ about the hardware they control. (Not to mention the lies were
in service of poisoning the air for personal gain.)

RMS designed the GPL as a _weapon_ against these people.

"Open Source" at best weakens this tool, and as we've seen today, spreads
confusion.

~~~
ZenoArrow
> ""Open Source" at best weakens this tool, and as we've seen today, spreads
> confusion."

How does it spread confusion? How does it weaken free software? Open source
and free software are just two different approaches to collaborative software
development. There's no confusion in my mind about the benefits they both
offer.

As for the GPL as a weapon, there's a reason why GPL is falling out of favour.
If open source did not exist, most companies simply wouldn't bother sharing
source code. How would that help you?

~~~
carapace
> Open source and free software are just two different approaches to
> collaborative software development.

That is the confusion. They are not. The fact that you think so _is exactly
the confusion I 'm complaining about._

GPL is a fire extinguisher, "Open Source" is a bottle of seltzer water, they
are not two different approaches to fire-fighting.

It doesn't matter to me how many companies _choose to be on fire_ I still do
not want to burn with them.

~~~
ZenoArrow
> "That is the confusion. They are not. The fact that you think so is exactly
> the confusion I'm complaining about."

It seems to me that your general argument appears to be based on the GPL being
hostile to companies by design. Is that a fair summary?

~~~
carapace
No. That's not correct at all. I am pro-business. I _like_ capitalism (as an
API not an ideology.) If I thought the GPL was "hostile" to making a buck I
wouldn't advocate it.

A business model based on providing software _and keeping it secret_ is
fundamentally anti-social and stupid. This is even before we encounter things
like cars that lie about their emissions, still at the stage where you can't
repair your own tractor.

~~~
ZenoArrow
Okay, so what is your argument? What makes free software a 'fire extinguisher'
and open source a 'bottle of seltzer water'? The only arguments you've made to
separate them so far are...

"RMS designed the GPL as a weapon against these people."

""Open Source" at best weakens this tool"

Weakens in what way?

~~~
carapace
[https://www.gnu.org/philosophy/open-source-misses-the-
point....](https://www.gnu.org/philosophy/open-source-misses-the-point.html)

If you are really curious and want to know more it's there.

I'm out.

~~~
ZenoArrow
I said...

> "The key differentiator between open source and free software is
> ideological."

You said...

> "I very much disagree."

You then explain your position with a link that says...

> "The two terms describe almost the same category of software, but they stand
> for views based on fundamentally different values. Open source is a
> development methodology; free software is a social movement. For the free
> software movement, free software is an ethical imperative, essential respect
> for the users' freedom. By contrast, the philosophy of open source considers
> issues in terms of how to make software “better”—in a practical sense only.
> It says that nonfree software is an inferior solution to the practical
> problem at hand. Most discussion of “open source” pays no attention to right
> and wrong, only to popularity and success; here's a typical example.

For the free software movement, however, nonfree software is a social problem,
and the solution is to stop using it and move to free software."

In other words, you link to an article that spells out in plain English that
the difference is ideological. The approach to software is almost the same,
but the reasons behind it differ. That's an ideological difference.

