Like most of these articles, it looks at open source, or rather, free software, through a purely economic lens. But free software is not primarily about economics, but about empowerment and sovereignty. I like having a text editor/browser/OS/chat client & protocol/compiler/video player/etc. that aren't closed binary blobs full of ads, telemetry, DRM, and subscription services (or printers betraying their owners with invisible tracking dots).
The FSF is clear on the motivations: A proprietary program puts its developer or owner in a position of power over its users. This power is in itself an injustice. - https://www.gnu.org/proprietary/proprietary.html
The links on that page give many other examples of why free software is necessary.
Counterpoint: I write open source software that lots of people use, and I receive approximately 95% thank yous, 4% simple requests for help or features, 1% attacks/hacks/complaints.
The secret (IMHO) is keep it simple, so people know what they're getting and can figure out how to be successful.
Open source authors inspire me every day to create, improve, and share. The point isn't money; the point is helping each other learn, explore, and grow.
This seems more like souring on the idea of developing open source software in your free time, which I totally understand.
I personally think open source works the best when it is created by developers working for a company who are writing software that supports, but is not core, to the company’s actual product.
A company decides to allow the developers to open source it so they get free, outside, collaboration and the prestige and publicity of having open source projects.
Ideally, a majority of the contributions will be from developers working on the clock at their main jobs, where they use the open source project.
It is fine if some people contribute on their own time, but the bulk of the work should ideally be paid for by an employer.
I totally agree. If someone has let developing open source software become an all-consuming nights and weekends project without compensation or any other real path to personal benefit, they probably want to take a step back if they're not feeling the love any more. Passions are fine up to a point but past that point they shouldn't feel they're compelled to continue.
I think the problem is the author's attitude. If suddenly my open source project becomes super popular and I don't have the time to give to it then that's a problem. I choose my own priorities. The open source software does not choose for me.
I am in the fortunate position where Open Source has been a true life changing community for me. I benefited greatly over the years from it, in both life experiences, jobs and opportunities. However the moment in which a project turns from great and fun to a massive pain in the butt is years after you have first created it and the motivation that originally brought you to it might not be applying at the present day any more.
For me the only sane way out was to pass the helm and recognize that there is no path for the things I have created to be compatible with a business model that makes sense to me. (I built libraries and frameworks)
That itself takes a lot of life experience. With all the experiences I gained about this, I would never go and tell someone that their attitude of feelings are wrong.
> For me the only sane way out was to pass the helm
That's what I did.
The good news is, the folks that took it over, have added so much good stuff, that my original code is almost gone.
I've written software that was still in use, 25 years later. It gets "stepped on," along the way, and that's actually great. It can be ego-deflating, but I've found the cure is to walk away, and work on something new.
I have never fully understood the motivation to work on OSS. Don't get me wrong there isn't anything that I write on my personal time that I have a problem sharing with others or even making PD. What I don't want to do is to be responsible for software that I am not being compensated for (compensation does not have to be money). I have children, grandchildren, animals, and personal goals that require my time so I just cannot see trading away these things to maintain software. I can see how software could be part of my personal goals in a way similar to building a cherry sideboard but the difference is that no one will request features or bug fixes for my sideboard after it is completed.
There seems to be some implicit connection between "work on OSS" and "maintain software" which isn't a required part anywhere.
The only thing required for you to make something FOSS is to make the code public with a FOSS-compatible license. Your responsibility as the author ends there, unless you take it further yourself. You don't owe anyone bugfixes or implementing new features. If they want those, they can implement them yourself.
I don't think it's really morally wrong to just walk away. No different than if you got hit by a bus.
On the other hand, you maybe did create something that people now depend on and walking away is probably causing a lot of anxious moments, possible security breaches, and downtime.
Not sure of the right answer. You did something for free. But shutting everything down one day can cause harm.
I feel that folks seem to have moved away from the "enthusiastic hackers" of the 1980s. We used to write software for fun. We enjoyed it, and learned from it. These days, there has to be an "exit plan" for everything.
Having a project that is all mine, and not being limited by managers, is really important. If I want to learn a new technology, I just write a library to support it [0 - 1].
If it takes off, I find some folks that would be interested in running it, and hand it over to them. I don't really mind, however, if my stuff never gets any GH stars. I write software for myself.
Yeah I've super enjoyed talking with people about various topics around my project. That's a big benefit that maybe doesn't get enough play: you'll probably attract people with similar interests as you, if not also similar values.
For me, I built something I needed, released it as MIT, and then the community improved it beyond my ability to do so. That's pretty amazing, and for me it was well worth the effort. I also got a huge career boost out of it. My experience isn't everyone's, but I'm at least one data point in how FOSS can benefit authors.
I mean if you don't have the time to work on OSS then don't, and there is nothing wrong with that. Also, working on an OSS project and refusing feature requests is OK - let them fork it.
Many OSS projects have a community around them that help each other, talk about things, and are cool places to learn about specific things. Of course many used to, and they do not anymore. Things do change over time and that's OK as well.
I run https://github.com/camgunz/cmp and I think I'm in the middle of (well, maybe closer to nobody but not nobody) the "nobody" vs. "everybody" extremes. The thing I think I had/have going for me was that there was a clear end to the project: build a MessagePack implementation that doesn't allocate. Could it be better? Could I remove the ancient, not working Travis CI badge? Could I roll it into something bigger? Sure, but I haven't been motivated to do any of that, and it seems like everyone's reached some equilibrium of happy. I've also been lucky enough to get great contributions from people, everything from fixing compiler breakage to making floating point support optional. It hasn't been zero work, but it has been gratifying.
I do question the kind of "open source project takes over the world" model, the GCCs, the Apaches, the Linuxes. Those projects are of great importance, so even if you have a small group of contributors the responsibility is still large and weighty. It's even more so if you've suddenly got a huge community to manage. That kind of thing feels a lot less like a hobby and more like either a job or a lifestyle (e.g. you hang out in an IRC/email window all day and manage the community, and you like it), and I'm not sure how sustainable a lifestyle it is. So maybe I agree with OP here.
I wonder if there's something to like, creating some kind of barrier to interact. Like, if I want to file an OpenBSD bug I have to work pretty hard, so some filtering is happening. Filing a bug on GitHub is very easy, so anyone can jump on there and demand whatever they want.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
The concern is not theoretical, as protesters in Hong Kong discovered when "their" phones refused to run software they used to organize: https://www.reuters.com/article/us-hongkong-protests-apple-i...
The FSF is clear on the motivations: A proprietary program puts its developer or owner in a position of power over its users. This power is in itself an injustice. - https://www.gnu.org/proprietary/proprietary.html
The links on that page give many other examples of why free software is necessary.
https://youtu.be/Ag1AKIl_2GM?t=57
The secret (IMHO) is keep it simple, so people know what they're getting and can figure out how to be successful.
70M downloads of my oldest project, Ruby unaccent port: https://github.com/sixarm/sixarm_ruby_unaccent
200K downloads of my newest project, Rust testing macros: https://github.com/sixarm/assertables-rust-crate
Open source authors inspire me every day to create, improve, and share. The point isn't money; the point is helping each other learn, explore, and grow.
I personally think open source works the best when it is created by developers working for a company who are writing software that supports, but is not core, to the company’s actual product.
A company decides to allow the developers to open source it so they get free, outside, collaboration and the prestige and publicity of having open source projects.
Ideally, a majority of the contributions will be from developers working on the clock at their main jobs, where they use the open source project.
It is fine if some people contribute on their own time, but the bulk of the work should ideally be paid for by an employer.
I am in the fortunate position where Open Source has been a true life changing community for me. I benefited greatly over the years from it, in both life experiences, jobs and opportunities. However the moment in which a project turns from great and fun to a massive pain in the butt is years after you have first created it and the motivation that originally brought you to it might not be applying at the present day any more.
For me the only sane way out was to pass the helm and recognize that there is no path for the things I have created to be compatible with a business model that makes sense to me. (I built libraries and frameworks)
That itself takes a lot of life experience. With all the experiences I gained about this, I would never go and tell someone that their attitude of feelings are wrong.
That's what I did.
The good news is, the folks that took it over, have added so much good stuff, that my original code is almost gone.
I've written software that was still in use, 25 years later. It gets "stepped on," along the way, and that's actually great. It can be ego-deflating, but I've found the cure is to walk away, and work on something new.
The only thing required for you to make something FOSS is to make the code public with a FOSS-compatible license. Your responsibility as the author ends there, unless you take it further yourself. You don't owe anyone bugfixes or implementing new features. If they want those, they can implement them yourself.
I don't think it's really morally wrong to just walk away. No different than if you got hit by a bus.
On the other hand, you maybe did create something that people now depend on and walking away is probably causing a lot of anxious moments, possible security breaches, and downtime.
Not sure of the right answer. You did something for free. But shutting everything down one day can cause harm.
Having a project that is all mine, and not being limited by managers, is really important. If I want to learn a new technology, I just write a library to support it [0 - 1].
If it takes off, I find some folks that would be interested in running it, and hand it over to them. I don't really mind, however, if my stuff never gets any GH stars. I write software for myself.
[0] https://littlegreenviper.com/series/bluetooth/
[1] https://github.com/RiftValleySoftware/RVS_BlueThoth
That's fine. Not everyone has to do OSS. It's similar to volunteering for charity (weak analogy).
Many OSS projects have a community around them that help each other, talk about things, and are cool places to learn about specific things. Of course many used to, and they do not anymore. Things do change over time and that's OK as well.
It is not an obligation to maintain the project: Read the license terms.
It is not an invitation for others to contribute, though many projects welcome bug reports, feature requests, and contributions.
Rich Hickey's "Open Source is Not About You" provides some great thoughts about it: https://gist.github.com/richhickey/1563cddea1002958f96e7ba95...
Deleted Comment
I do question the kind of "open source project takes over the world" model, the GCCs, the Apaches, the Linuxes. Those projects are of great importance, so even if you have a small group of contributors the responsibility is still large and weighty. It's even more so if you've suddenly got a huge community to manage. That kind of thing feels a lot less like a hobby and more like either a job or a lifestyle (e.g. you hang out in an IRC/email window all day and manage the community, and you like it), and I'm not sure how sustainable a lifestyle it is. So maybe I agree with OP here.
I wonder if there's something to like, creating some kind of barrier to interact. Like, if I want to file an OpenBSD bug I have to work pretty hard, so some filtering is happening. Filing a bug on GitHub is very easy, so anyone can jump on there and demand whatever they want.
Just let that sink in.