Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login
You use more open source software than you think (github.com) similar stories update story
163 points by mooreds | karma 71202 | avg karma 3.68 2021-06-09 14:38:24 | hide | past | favorite | 142 comments



view as:


There's an xkcd for everything!

More like 1993.

Heh. Bash is maintained by a single unpaid volunteer.

I got a bit of a shock when I visited https://github.com/readme/unseen-oss and it wasn't a GitHub repository, it was a custom designed page!

Not a lot of URLs on GitHub sit outside of their regular /owner/repo pattern - the only other section I can think of that does that is https://github.com/about - things like documentation tend to live on separate subdomains, like https://docs.github.com/


I also was a bit confused, because I mistook this for coming from Readme.io, which is on GitHub at https://github.com/readmeio, and I thought about how the heck they convinced GitHub to add a custom design for their repository.

I expect Microsoft marketing to continue to do splashy, unexpected things like this as they milk the still-as-yet-trusted GitHub brand for all it's worth to expand Microsoft's control over the open source ecosystem.

The GitHub.com namespace is quite limited, though. I wonder if they had to delete or rename anyone's GitHub account or org for creating this page or if it was preserved for a long time.

According to wayback machine Sandy McMurray [0] used to own it [1], but it has been commandeered for quite some time as well [2].

[0] https://readme.tumblr.com/

[1] https://web.archive.org/web/20090709114358/github.com/readme

[2] https://web.archive.org/web/20160218095949/github.com/readme


Exactly, what's the catch?

How does Microsoft come to own all of open-source? That's the plan, right?


VS Code becoming standard tools, alongside GitHub and NPM which they own now. This affords a tremendous amount of steering control and opportunities for lock-in. Some of the existing ones are the proprietary plugins for VSC, and GitHub Actions.

I wouldn't be surprised if they end up picking up Docker for a song now that Docker has utterly failed to find a workable revenue model. (Microsoft sponsored Docker's surprisingly-complete Windows support, IIRC.) The extremely-widely-used Docker Desktop products are already nonfree, as well as the dockerd that runs on Windows.


Ouch. What's a good docker alternative? Something with similar dockerfile semantics but can be linux only for sure.

IIRC RedHat offers podman

Presumably it's like I'm assuming Win10 is, a slow burn.

Coax people slowly over time to give up other options until there's nothing else to choose, then flick the switch and fleece them harder than hardness itself.

Based on past performance I just assume we're in an elaborate version of the 'fleece tourists with inordinate drinks bills' con trick.

#GetOffMyLawn


    “Even if you have funding, there’s always more work than you can possibly do,” Van Slyck says. “And the bar is always being raised. It used to be enough to just put some code online. Now you’re expected to foster a community. You have a lot more hats to wear.”
I found this statement perplexing. Why is it no longer "just enough" to put some code online, in a take-it-or-leave-it fashion? If anything, given how easy git has made it to fork projects, it's more acceptable to do that today than it is is the old days of centralized version control. If you have the time and effort to maintain it, then great. If not, that's fine too; having some code out there to serve as the basis for future work is better than no code at all.

This is a perfectly reasonable position to take, however a lot of people are very needy, wanting to be handheld through support beyond a reasonable limit, or demanding that you implement x or y because they need it, and want you to do it for them for free.

Well, sure, but you can say, "I'm sorry, I just don't have the time to do that right now." They can then either fork the project and implement the changes themselves or better yet, step forward and ask if they can help with the maintenance of the project.

EDIT: I glossed over this part when I was reading the article, but indeed there are many open source developers who do hold this attitude:

Halliday—better known by his handle substack—takes an uncommonly hands-off approach to his work. “I have all my GitHub notification emails turned off,” he says. If someone finds a problem with his code or wants a feature added to a module he’s no longer working on, they’re free to fork his code. That is, after all, the open source way. But he doesn’t put effort into issues or pull requests for packages he considers finished. “It’s not my job to keep tabs on every little thing I wrote years or decades ago very often,” he says. “I am always busy with new projects and if I was always looking back at old projects I wouldn’t have enough time to move forward.”

I fully agree with this viewpoint and I think it's good for the overall software ecosystem if engineers did more due diligence on the packages that they use.


Which is why I always say "show me the code" or "we accept patches".

I thought about writing "patches are welcome" as an example response, and I deliberately chose, "I'm sorry, but I just don't have time for that," instead. Reviewing a patch, in many cases, takes somewhere between 50% and 75% of the time it takes to write the code in the first place. It's not a given that someone who open sourced a random project will have time to review patches.

Personally, I much prefer "patches are welcome". It puts the ownership back on that person who asked for XYZ feature to do it.

If that person is actually motivated enough to write a patch (which I have had!), I welcome reviewing it, because it empowers that person to feel like they can contribute to my project (and hopefully other projects too!), and makes others feel like they can contribute to my project as well.


Patches are always welcome on your fork. Upstream can merge whenever they want.

Hah. I regularly see patches whose review takes well over 100% the time it would have taken me to create the patch myself.

But then I'm employed by $MEGA_CORP and part of the job description is "helping to build and maintain the OSS community", so helping novices create their first patches is a big part of that.


But are those bad actors really that common? Typically, what I see is that developers really know what to expect from an open source project. If you can't offer them support they could walk away looking for alternative options instead of funding your project. That's because devs usually don't have a budget to spend. They even could fork and solve their own problems without caring to support the problems of others. But I guess all of this is okay and perfectly acceptable use of open source software.

I agree with you. At least I've never been offended by anyone for not replying to issues raised in my repositories. And a few of my libraries are downloaded millions of times per week from NPM (which is not that uncommon on NPM, but still).

That really bad support didn't lead to any actively maintained fork, though. So I guess it's all stable enough for people to still depend on it in their new projects.


This is the inevitable result of the widespread use of permissive, non-copyleft licenses. Instead of developing an alternative to proprietary software that protects users' freedom, OSS work becomes just a source of free labor for large tech companies.

This isn't snark, but a genuine question. What makes open source developers prefer permissive licenses to GPL and other copyleft licenses? What is the benefit in letting corporations use your work in proprietary software?

Getting it out there. If your goal is just to ensure that a well supported open source solution exists and people can use it instead of having nothing at all or only paid proprietary garbage, a permissive license makes far more sense.

If your goal is sticking it to the man and demolishing capitalism or whatever then it's different of course.


Open source software is bizarrely sticking it to capitalism. RMS and his ilk developed these licenses pretty much because they wanted free shit out there with no stipulations. It's insane that anyone with skills would care enough to work on GNU instead of making 6 figures to write the same code for IBM. OSS kinda proves that humans are deep down pretty alright

> RMS and his ilk developed these licenses pretty much because they wanted free shit out there with no stipulations.

Copyleft, having to release code diffs, is a stipulation / restriction.

MIT/BSD is the one without any stipulations / restrictions:

* https://en.wikipedia.org/wiki/MIT_License

Depending on one's goals one may be better than the other.


Just a small correction -- The GPL does not require you to release code diffs. The requirement is that people who receive binaries from you are entitled to receive the source to that binary upon request.

For anyone not very familiar with copyleft, the actual goal is:

> My work on free software is motivated by an idealistic goal: spreading freedom and cooperation. I want to encourage free software to spread, replacing proprietary software that forbids cooperation, and thus make our society better. [1]

Free as in freedom for the users of the software to control, audit, and modify what runs on their hardware.

The stipulations are there to prevent people who aren't aligned with those goals from benefiting from (and working against) the work done by the community that believes in those goals.

[1] https://www.gnu.org/philosophy/pragmatic.html


Being forced to release source code is a restriction. Some people are okay with that, and others want totally unrestricted code available.

> others want totally unrestricted code available.

It's easy to give the lie to this, because the restriction they are unhappy with is the restriction against restricting others. Anyone complaining about that is just masking a demand of "free for me, but not for thee" - definitely _not_ "totally unrestricted."


IBM pays some people to write GPL code.

What do you mean by "free shit with no stipulations"? As I see it, that would describe permissive licenses, which even allow you to build on software and sell it without giving back via source code. The GPL requires you to abide by some rules and "play fair".

You're kind of underselling Stallman's vision. He realized early on (80s) that the users' control over the software running on their machines was intimately related to their personal freedom. Most of society has only started to notice this when rumors about apps and websites secretly accessing your microphone and camera started to spread in the late 2010s.

For Stallman, and the rest of us inspired by the copyleft movement, writing GPL software wasn't merely a way to impact the profits of capitalists. He would have been scarcely more satisfied with closed-source software written by a democratically organized cooperative and released for free. The goal was and is to ensure that users have the freedom to know what the code running on their machines is doing, and to alter its behavior if they wish.

That dream seems so distant today that people worry it may never be satisfied, but I have a more optimistic view. Someday, hardware generations will not be so rapid or represent such major improvements. That will create an opportunity for the GPL ecosystem to close the gap in functionality and provide alternatives that run on the hardware most people own. Mostly, the GNU project is always running behind on the hardware treadmill; keeping up with software functionality is easy by comparison.


I’ve worked several jobs in the past where using reciprocal OSS (such as GPL) was expressly forbidden. This would leave us in the position of reinventing the wheel, buying something, or using something (possibly inferior) that’s more permissive.

(I guess in many ways this is a data point to support the “OSS work becomes just a source of free labor for large tech companies” thesis up thread.)


So I take it Linux was not used at all in any shape or form?

I suspect that when GP said "using", they meant "incorporating it into your own code".

No one at any company I've heard of or been involved with cares if you simply use, i.e. run, Linux or other GPL software. That doesn't affect the licensing of your own software.

What they do care about is if you take the GPL software and incorporate it into your own product.


I guess you are right. The OP said "buying" and I suppose in the trajectory my career has taken me the concept of buying code is foreign to me.

It might be the only pragmatic choice, so I'm not condemning developers or anything, but that would make me a bit uncomfortable with the company itself.

You are ignoring the protections against "tivoization", patent trolling and passing software freedom down to the end users.

Often we are the end users. Because of permissive licensing phones, routers, iot devices have a lot of closed or otherwise locked own components that I cannot trust nor modify.

The same apply to SaaS.


You can base your business model around that. Support, certificates, Trainings, etc.

Of course that is not the case for the majority of projects like curl for example.


I don't release much open source code, most of the code I work on can't be released publically.

The code I do release is probably not that useful to many and in most cases is something i've written for personal use primaraly.

I always use a permissive license for anything I release. It's usually served it's initial purpose to me and if it can be of benefit to another, then they should be able to use it in any way they want


I don't think open source developers prefer permissive licenses - I think permissive licenses are better suited to become popular.

I think permissive licenses lack any pushback against proprietary network effects, and therefore are subsumed by them. One of the goals of the GPL is to cultivate a network effect of its own, to counter that of proprietary software. It's not that permissive licenses are better suited to become popular, but that they represent support of the proprietary status quo.

The GPL does create a network effect, but in a way which ends up excluding large chunks or ecosystems from professional developers.

Back when I was just a Linux hobbyist, I loved the GPL. Then I got a job as a proprietary software developer. Now, GPL just means "stuff I can't use at work".

I would love to try and convince my boss and coworkers to implement a project in Scheme. But because the majority of the packages for most Scheme implementations are GPL'ed, it's a non-starter.

So Scheme (and lots of other pockets of FOSS) shall remain a weekends-only pipe dream :(


Wider adoption results in a healthier ecosystem. Also, don't forget that most of FOSS developers are employed somewhere and surely they want to use FOSS at their jobs.

As soon as someone else contributes, copyleft licenses also prevent you from using your own work in anything proprietary. So if you have side project that may potentially grow into a business if it takes off then permissive makes sense.

Why do you think you need proprietary software to run your business?

Especially if it's a hosted web app business?


Yeah, I see a lot of ways to monetize FOSS.

Providing paid support a la Red Hat, paying for hardware/cloud space, or even paid binaries if you think your customers won't bother to build from source.

(Yes, one can build from source then distribute free binaries, but maybe those same customers won't even go to the trouble of finding them?)


No license is going to prevent you from using your own work.

Of course if you accepted external contributions to your code under a copyleft license then you can't use that part freely, but that's kind of the point.


> ...you can't use that part freely, but that's kind of the point

The irony is that non-copyleft project author/maintainers want to reserve the right to exploit other people's work when they "grow the project into a business", but bellyache when Amazon "exploit" their permissively-licensed work. Freedom for me -- but not for thee.


IMO extremely large businesses like Amazon cause quite a bit of harm to modern economies/societies. They reduce the diversity of alternatives, and cause a concentration of wealth.

That there is not a good standardised way to give preferential treatment to small companies does not mean it's unreasonable to want to.


"Limiting Amazon's harm" is an honorable to put it - one which I do not agree is necessarily true. My cynical view is that Amazon is rich, and can afford to pay more, so a lot of projects are miffed that Amazon is not aiming a firehose of dollars at them for using code that they granted Amazon a license to use, but "not like that".

> Of course if you accepted external contributions to your code under a copyleft license then you can't use that part freely, but that's kind of the point.

Well yes. But if you:

1. Want to accept external contributions 2. Think you might want to use the entire project (which may still be mostly your own work) in proprietary code in the future.

Then a permissive license is a lot easier than the alternatives.


So I can use it at my job, and justify spending my employer-paid time working on open source.

Writing software sucks. I release code with a permissive license because I want to make it suck a bit less for those who come after me. My only goal is to relieve developer pain by providing reliable chunks of code.

Maybe I'd feel differently if I made an entire service instead of small focused libraries. But that's an entirely different world.


That makes sense. I think it would suck less if less software overall were closed-source, which GPL seems to encourage in the long term.

But one person can't do much, so it at least depends on what one thinks of that.


Companies love unpaid labor with no strings attached. Being unable to proprietarize FOSS makes them unhappy.

It's not surprising that they invested a lot into spreading FUD around GPL and spreading the idea that weak licenses are "practical" while labeling GPL as "ideological".


I mean, of course companies don't like copyleft. It was individual developers that I found confusing.

I write programs as a hobby. For most of my career, I have been teaching Math and Physics courses. The whole point of teaching is to get someone to learn something and use it as they see fit, with no constraint imposed upon them. I view the code I write the same way: if anyone finds something useful in it, I want them to be free to use it without constraint.

I write with other humans in mind, not companies.

I occasionally like to read other people's code to learn. However, in order to avoid any problems, this means that I stay away (much to my regret) from reading any GPL licensed code, no matter how interesting the project might look to me.

I admit to have been occasionally disappointed in the past when large parts of some of my work were plagiarized with no attribution (including by one commercial venture) ... but I prefer for my work to be free of barriers so that anyone interested can either learn from it or (more likely) get in touch with me with suggestions as to how to improve upon it.


I don't think many people are lamenting the fact that their project is popular and being used.

Because they can just... stop maintaining it if they wanted. They are completely free to do so.

Many developers like to feel useful, feel like they are solving an important problem in a suitable way. Some even want the fame associated with it, or the doors having such (a) project(s) opens (you use X? I wrote it, and maintain it - or people hunting you specifically because you are known to have created X).

The point is, the tradeoff between the feeling of being taken advantage of and feeling useful and fulfilled because of solving an important problem in a suitable way is controlled directly by the author / developer! If they feel it is not worth the effort, they can just stop!

Having a permissive license helps you gain popularity. Many people won't touch GPL derivatives for their business / side-project-that-might-turn-into-a-business so such a license can have an inhibiting effect in adoption. Developers generally aren't stupid, they know that and they choose more permissive licenses, because they want to be seen, they want their solution to be used. They maybe want the fame and open doors associated with having such a project take off. It is a trade-off under their control. They can stop with maintenance any time. Hell they can even change the license of future versions (if they have not started with a GPL-like license) if they want. So I don't see the problem here. Everything is under the developer's control. You can't have it both ways: The boost to popularity by having a no-strings-attached license, but reaping proportional profits from such an endeavor as if you had a restrictive license protected by a business entity.

If you give money (value) away for free, you'll be pretty popular. "I want to be easily popular as if I'm giving money (value) away for free, without actually giving money (value) away for free" does not make much sense.


Since widely-publicized OSS work can be a prerequisite for top jobs, it often isn't really a "free choice."

But if it is a choice, then it's a choice that undermines fellow workers. By working for free, you're taking away jobs from people who might genuinely need them and be unable to work for free.

In this way, OSS work can serve to entrench inequality by giving a hiring advantage to those with more time and resources, while reducing the salaried jobs available for others in the industry.


Is there really a shortage of tech jobs caused by open source projects?

I've wondered this for a long time. Or if it had a depressing effect on wages. FOSS certainly helps with productivity. Though I believe it's very likely also depressing wages and reducing the volume of software jobs.

I have no evidence at all, but I think open source projects create more jobs than it "destroyed" because it reduces the cost of doing businesses of tech startups at critical growth phases and makes them viable by allowing fewer employees to do more. Without open source, companies would employ more people per company, but have much fewer companies overall, IMO. Additionally, salaries would be much lower because skills wouldn't be easily transferable between jobs - hence lower competition for employees.

> Since widely-publicized OSS work can be a prerequisite for top jobs, it often isn't really a "free choice."

Which top jobs require you to be a widely-publicized OSS author?

I've only ever heard this to be a plus (which I believe is fair), not a requirement.


It’s not a requirement at Red Hat, because anyone can be converted to the open source religion. This surprised me when I started - I thought I would need to be indoctrinated, but then it just became normal to see open source as the only way to work.

That said, RH hires key contributors all the time (as do many companies), so being the maintainer of a project is definitely a plus.


You don't have any obligation to pursue a top job, nor it is necessary for your survival.

Lucky for you, top jobs hire by standard whiteboard quizzes.

I love OSS. I just think it should come with a cap. If a single stakeholder (shareholder, employee, bondholder, etc) is worth $1B USD or more, the license is $1m[0] a year. That way we all get to have fun, but the megagiants like Amazon actually have to pay something back to projects like Postgres. We'll get better security and a naturally progressive, opt-in tax on the largest of companies and investors.

[0] Or whatever, if it's a small library maybe $50k or maybe something that scales with market cap, etc. Throw lawyers at it.


You can make a license like that if you want to.

Just don't pretend that it's open source.

How is it not open source?

I would say it could be open source (defined as you can see the source code) but it's not free, as in it has restrictions.

> open source (defined as you can see the source code)

But that's not what that's defined as.


I define Open Source to mean that I can see the source code.

The OSI defines open source one way, and I just defined open source another way. This is an inconsistency that trips up lots of people on HN and elsewhere. There isn’t one definition, there are many, and calling “anybody but the mega-rich can use this for free; they have to pay” open source falls within some definitions but not others.


https://xkcd.com/1860/

The OSI's definition is the widely accepted one. If you mean something else, then make up your own word. To redefine open source like you're trying to do just makes communication more difficult for no benefit.


OSI didn't invent the term, and weren't the first ones to use it.

Why shouldn't they be the ones required to "make up their own word"? "Open source" has a reasonable plain english meaning which doesn't automatically include all the requirements of OSI's "definition". I don't see why the simplest plain english interpretation shouldn't be considered "the real one".

You say OSI's definition is "the widely accepted one", I'm 100% certain that's not true if your sample group is representative of "english speakers" instead of "hacker news readers".

(And I'm pretty sure your linked xkcd supports my argument here more than yours.)


Your response is a bit ironic as OSI more or less did invent the term (causality-wise, rather much of the group that invented the term went on to found OSI), but attached an already-existing definition (of free software) to it.

> defined as you can see the source code

That's "source available"


Because it doesn't meet the Open Source Definition: https://opensource.org/osd

I think you're confusing open-source with visible-source.


It doesn't meet one definition that one advocacy group choose to use.

Other "open source" companies are somewhat more realistic and honest about the term and it's history: https://www.redhat.com/en/topics/open-source/what-is-open-so...

I'm not saying the OSI's objectives and motivations are bad, but they did not invent the term "open source", they were not the first to use it, and their ongoing attempts to gatekeep it's usage are - at least to me - tiresome.

(Having said that, I also find rms's hardcore free software stance tiresome, but I'm glad he chooses to dig his heels in so hard there, as an opposite-end-of-the-bellcurve outlier to counterbalance the vested commercial interests trying to extend and embrace the free software movement for commercial greed...)


The problem is that developers hypocritically want to have it both ways: they want all of the upsides of a permissive license (wide adoptions), but none of the downsides (wide adoption by big tech companies without being paid).

scaling with market cap and having a huge “free” tier is an interesting approach. Something like an official license requiring companies to pay 10k for each trillion $ market cap calculated on jan first of the current year

low complexity, low decision making overhead. it wouldn’t help for small or very specialized open source projects but the big ones that keep the world running are probably used in some way in all the big companies anyways so the total should come out somewhere in the range of 1-2 developer salaries (adjust the 10k above to match. no idea how many trillion+ companies there are right now)

edit: I overestimated how many there are. With 10k one would get to 50k this year. Numbers must be adjusted a bit :)


> Many people won't touch GPL derivatives for their business / side-project-that-might-turn-into-a-business so such a license can have an inhibiting effect in adoption. Developers generally aren't stupid, they know that and they choose more permissive licenses, because they want to be seen, they want their solution to be used. They maybe want the fame and open doors associated with having such a project take off. It is a trade-off under their control.

It's a race to the bottom, largely because developers aren't unionized. Developers who would do work under the GPL get undercut by those who are willing to do it for free.


>OSS work becomes just a source of free labor for large tech companies.

I really don't understand why there are always comments of this nature every time this is brought up. Why is the size of the company relevant? Do people here not have jobs in the IT field? When people contribute to open source, anyone is able to use that code, including you. That means when you go get a job at a new company, you can keep using that code. It doesn't matter if you go to a small company or a large company.


Probably because bigger companies have bigger wallets. Bezos can afford to kick back some of gains his engineers get from the work of others. Small shops would have less capacity to give back.

Isn't that the reverse of big tech companies taking free labor? That sounds more like they're giving more free labor, because they can afford to.

> That sounds more like they're giving more free labor, because they can afford to.

But the thing is, they often don't. That tends to rub people the wrong way.


Free software was expressly about handing power back to users and developers outside of large companies. The whitewashing of that as OSS combined with the failure to build effective cooperative structures within software development has instead resulted in companies that have more power over more aspects of our lives than any amount of proprietary software ca. 1980-2000.

Spot on! The current problem of SaaS/Cloud companies taking away all the revenue of FOSS developers is the direct effect of weak licenses.

Some products like databases are now switching to AGPL but it takes a lot of effort to revert the trend now.


On the bright side, this whole story displays the immense power of composition (in more than one meaning for composition) in software.

If you stop and think about just how much stuff humankind built around stuff like the mentioned curl, or linux, or gcc, or numpy, or netscape.

We all stand on the shoulders of giants.


That gigantic sticky header that serves no real purpose is so ugly.

I wasn't a fan of it as well. While I find sticky headers common enough to not be too surprised at their presence, the strange link symbols next to repositories on GitHub especially bothered me during my reading of the (otherwise solid) article

It's not rational, I guess, but it really feels like it is in the way, and it distracts from actually reading the text of the article.

> It’s time to stop taking open source infrastructure for granted.

It's time our governments start taking OSS seriously.

Like academia, OSS deserves state sponsoring.

Most of the research papers I read were made possible by OSS one way or another.


The state uses an enormous amount of open source software.

Ironically it can be really hard to donate to OSS from government entities.

It's actually easy to pay someone for software, but for all these libraries and technologies that are used it's really hard bureaucratically to say, donate $2K a year. Which is still a fraction of the value gained from open source for most places.


I'm not thinking about donations, though. I'm thinking about structural funding, like how science is funded.

I know. I'm always amazed to see how many open source licenses there are on every device.

Authored two blog posts on this recently:

"Did you know there are less than 2100 people in the inner GitHub open-source maintainer community? I often wonder what the future would look like if these high achievers that our digital society is built upon were empowered to become independent artists."

https://www.gitpod.io/blog/devxconf-wrap and https://www.gitpod.io/blog/gitpod-open-source-sustainability...


Can you go into more detail on what it means to be part of that community? I thought it was just a special interest group which didn't have strict membership requirements or contain very many maintainers.

Surprised there's no mention of Gecko or WebKit, now that every major browser is based on one of the two.

The article is about individual maintainers, not open source projects that are maintained and operated by massive companies, so I'm not sure why they'd have been mentioned?

Compared to google, Firefox is anything but massive

I am 51 years old. I learned my first programming language (C) in the mid nineties, and have been writing software ever since.

Back then, there was this enormous revolutionary fervor around free software, and it was intensely idealogical. You used the GPL because you wanted to fuck Microsoft and the entire concept of proprietary code. Linux was punk, not a good “solution.” And every time someone hacked up a free version of something, we all rejoiced, not because it “didn’t cost anything,” but because it was another way to make the point that the entire concept of making money off binary blobs was inherently evil. Install fests! Bring us that old 486, and we’ll make it YOURS! What a party.

Were we hopelessly naive? Maybe. Probably. But I find it depressing to read threads like this. It’s like everybody is just doing some kind of cost benefit analysis, but nobody is asking serious questions about whether the world we built is actually the world we want.

I’ll say it: If many of you had walked into some scrappy LUG in 1996, you’d have been laughed out of there as some kind of tool.

Are you a tool? I don’t know. But the resignation still bums me out. Y’all want to “support OSS devs,” not throw a sledgehammer at the screen.


Just from my experience, building something purely out of spite is not a good long term strategy. All those companies ended up using a lot of open source because as it turns out, it is a good solution a lot of the time.

It wasn’t “spite,” first of all. But “a good long term strategy” for what, exactly?

>because you wanted to fuck Microsoft and the entire concept of proprietary code

I think I would describe that as spite. Is it not? By long term strategy I mean strategy for building things in general. Like, I get it, I don't particularly enjoy using certain Microsoft products either. But once you get that off your company's machines, then what? There has to be somewhere to go from there.


We didn’t “hate” proprietary code (it often came off that way, I’ll admit). We did think it was morally wrong to make money off it. We thought it was like patenting the Pythagorean theorem.

So really, you think “building things in general” required . . . what? Calm acceptance of restrictive licensing and software patents? Or maybe we should have been nicer about it? Again, it’s like “building things” must be properly done the way we currently do it. With lots of lawyers and lots of EULAs.

This strikes me as a profoundly conservative position. How rude those Jacobins were! If only they were more polite. If only they had recognized that we live in the best of all possible worlds . . .


In my experience, it's very easy to denounce something else as wrong, but it's a lot harder to actually put in the work to improve the situation and to demonstrate that things have actually improved. That's all I mean by building things. If you are an open source company, you still need lots of lawyers, lots of licenses and lots of contracts. You can't really avoid that, copyrights and patents are still an issue that everyone has to deal with, because these are still copyright/patent licenses after all. So maybe in some cases things are better but in other cases it seems that they aren't. For myself, I personally won't try to claim the high ground without the results to back it up.

My “results” are Postgres. And curl. And gcc. Etc., etc. Are you seriously arguing that we didn’t put our money where our mouth is?

No, not at all -- it sounded like you were saying the developers and users of such things were being naive, but maybe I'm mistaken. To give an example of what I was saying, if I was contributing to Postgres, it would be because I want to help make a good database and fix bugs. I wouldn't do it because I had a chip on my shoulder about Oracle, even if I did have that (I don't). But that's just me. OTOH I believe Oracle even offers some level of support for Postgres.

> there was this enormous revolutionary fervor around free software

I miss those times, and places like HN are far from it. Join mastodon if you want to breathe a similar atmosphere again.

> Were we hopelessly naive?

No, Linux won hands down. Also, a lot of people warned about the coopting of FOSS from software freedom into unpaid labor. We saw it coming and couldn't stop it.


As always, I wish there was a way to DM on HN. :)

Marxists would argue that naive is exactly what you were, and Marxists would reference history both to show you why and what you could have done about it. Liberalism and capitalism have always been loving bedfellows.

No argument from me at all. Just a bit of sadness.

If you help granny cross the road, are you better off getting paid?

Spare a dime for poor Larry and Sergey?

Care to explain what should have been done?

Also, what were people naive about?


Not GP, but if I extend the “marxists warned” logic, what could have been done would be to own the means of production. In this case, as with a lot of other Marxist analysis, that means taking a different view of what freedom entails, tying permission to exploit labor to a commitment to serving that labor and sharing its spoils. To some extent later GNU licensing reflects similar thinking.

I think what was naive was building OSS around service, support and consulting. Instead it could have been built around mutual benefit as a governing principle.


See also https://www.boundary2.org/2018/07/mueller/

Stallman (and others e.g. Lessig) had clear visions of where they wanted to be but were thoroughly stuck in an end-of-history mindset - "we'll do the work to get this small part of society from A to B, and then we'll be at B." Well, no, then someone is going to drag parts back to A, and another is going to drag a few over to C, and after a few steps of this your rhetoric around digital freedom is going to be half fueling the propaganda of the largest, most powerful corporations in American history, and half the weak intellectual justification for a right-wing populist riot.


Awesome article!!! So glad I posted this comment and you replied. This article seriously rules!

Then you might also appreciate the other two entries in the trifecta of leftist writing about SV that usually get me greyed out:

https://thebaffler.com/latest/capitalisms-new-clothes-morozo...

https://www.e-flux.com/journal/70/60567/the-vectoralist-clas...


>I think what was naive was building OSS around service, support and consulting. Instead it could have been built around mutual benefit as a governing principle.

Free software was built around the principles of mutual benefit. OSS was coined as a "corporate friendly" label, and it is from that culture that the whole service and consulting thing comes. Service, support and consulting is how you make money from it. It wasn't naive at all - it was a cynical co-opting.

(And if you don't see the problem with the maintainers of a piece of software to also charge for support, may I direct your attention to The Shirky Principle [0] - "Institutions will try to preserve the problem to which they are the solution". Software developed under this model will, over time, become byzantine, baroque, and frustrating - because that brings in the consulting cash.)

[0] https://en.wikipedia.org/wiki/Clay_Shirky#Shirky_principle


Your characterization of OSS is correct, but free software was built around individual empowerment and equity of access, which are liberal principles, not mutual benefit which is a leftist principle. Stallman is a civil libertarian and perhaps a democratic socialist, but as far as I know has never identified himself as a Marxist nor does his work lean on class analysis.

I'm a little younger, but got into programming/OSS on a similar timeline. Notably, my dad bought the FUD about the evils of Linux so I wasn't allowed to attend a scrappy LUG in '96.

To geezers like us, the elephant in the room is this article being hosted by m$. And honestly, I still can't fully trust that this isn't the Embrace phase of a long game. For the ultimate cognitive dissonance, I'd even work there because I like how they treat their employees.

On the other hand... whose screen should we be throwing sledgehammers through? The internet enabled an absolute explosion of tech, but these days it's nearing impossible to live without a smartphone. Governments tacitly support Apple and Google's monopsony to distribute apps to access government services.

Back when it was just nerds on the net, we controlled our digital lives. But today, the rug has been swept away and... the impact of our sledgehammer only isolates us from the non-nerd friends and family.

And I'll say it... if I brought a modern phone to a LUG in '96 with Candy Crush on it, y'all wouldn't get anything done for a month. It's not just resignation. Contentedness is a problem too. So I support the OSS devs I can.


> But I find it depressing to read threads like this.

Me too - it's as if the entire scene has "sold out". I'm younger than you are, but I entered the Free Software(TM) scene as a zealot and a true believer - you probably had to back in the day because the overall software quality of the entire ecosystem wasn't close to parity to proprietary solutions (some parts of it were clearly superior, e.g. Apache vs. IIS). I think this high bar resulted in a self-selected group being involved in LUGs and similar groups. These days, the bar is much lower, thanks to Github and the large number of high-quality FOSS projects that are market leaders - far better than proprietary equivalents.

My theory is that with this self-selecting filter gone, a lot of developers are now part of the community for self-serving reasons, so their attitude is ...mercenary. Its now all about "How does this project help me and make my life convenient as a developer" rather than "How does this project help software users like me": it's a subtle difference, but with far-reaching consequences.

I don't think we were naive - we thought we had won when corporations defected, but our victory was subverted and it feels more and more like most corporations are a fifth column. "Open Source Software" is slowly suffocating "Free Software".


>Its now all about "How does this project help me and make my life convenient as a developer" rather than "How does this project help software users like me"

I don't think this is a new thing, or something that is necessarily correlated. I've seen plenty of old open source projects that are totally obtuse and obscure to everyone but the developer -- having that attitude is not mutually exclusive with being a FOSS enthusiast. Probably more people are developing this stuff for money now, but that's a different thing from the "selling out" you were talking about.

Github didn't change much here if you ask me, in the old days it was Sourceforge, and you can still find a lot of those obscure projects still hosted there.


> I don't think this is a new thing, or something that is necessarily correlated.

Agreed - it's not new, but its certainly related as it is at the root of the philosophical differences between BSD-style licenses and GPL, and the respective licenses popularity over time support my thesis.

Not only are more people developing stuff for money, there are fewer who are developing it to scratch an itch and giving it to the world for free. For a large number of people (too large, if you ask me), the process is now:

1. Author popular open source project

2. ???

3. Profit

Free software used to be a way to avoid exploitation, now developers (and corporations!) are tripping over themselves to exploit the popularity of their FOSS projects - that's what feels like "selling out", because money/control is the goal now.

> Github didn't change much here if you ask me, in the old days it was Sourceforge, and you can still find a lot of those obscure projects still hosted there.

Git, Github and turn-key CI lowered the bar by a lot! Forking an existing project or getting a new one off the ground is much easier now, which is a blessing and a curse - but mostly a blessing. Building and packaging software by hand (ok, using Makefiles) would filter out all, but the very committed - and that was what you had to do in the Sourceforge era. I didn't say it was impossible in the past, only that the technical (and commitment) bars were much higher


Money and control was always the goal though. Linux has always been popular with sysadmins that used it to run their company's servers so they could, you know, make money. Some of it was invested back. I don't think those big initial investments really came from anywhere else.

Important to note that there always also was a more pragmatical side of "free" software in the 90's, it just wasn't called that way, but "Public Domain" (and the more commercial stuff "Shareware"). At least on the Amiga (where I spent most of the early 90's), public domain and shareware was massive.

And there's always Open Source.

> the entire concept of making money off binary blobs was inherently evil

I feel like all of this is trying to escape economic realities that someone has to do the work to make those binary blobs and that person deserves some sort of compensation. There's a line somewhere between supporting Bill Gates and supporting rank and file developers, and I don't purport to know where that line is, but I don't understand how "all software should be freely written by volunteers" is sustainable. Perhaps that's not the position advocated?


I used to take it for granted that my concept of Free Software was the main or default concept, but now I've come to realize that I'm an iconoclastic weirdo.

Anyway, just to get it out there, this is what [I think] should happen:

A small group of really really good programmers write software that works (is bug-free). The rest of us use it, we are technicians who configure and deploy the code written by the elite. This (plus technological innovation in general) results in an "economic supernova" where science and technology are applied to solve our basic problems in an efficient way. (Bucky Fuller calculated that this would be possible by sometime in the 1970's.) This results in the collapse of the profit motive precipitating a post-historical secular utopia (e.g. Star Trek).

All of the technology is there, right on schedule, but we as a species continue in our old technically-obsolete patterns, unmindful.



no I don't

Legal | privacy