Don Goodman-Wilson’s moral critique of Open Source; essential reading.
“What if we look at Open Source values through the lens of moral philosophy, by applying Scanlon’s contractualist theory of morality? When we do that, I think it becomes pretty clear that we ought to discard openness as an axiom, and start thinking about other ways to build software collaboratively that do not make us accessory to horrors. We can create open communities, better communities, more inclusive communities, without Open Source.
The Open Source movement has always been focused on code. The result is a system that sadly neglects people."
“Here are some candidate principles to guide an ethical conception of collaborative development.”
I think it's not the first time to point us to that kind of
resource. Highly on topic IMHO. Will read it because we (Squeak
Dev) are affected.
Am 17.10.2019 um 13:13 schrieb Eliot Miranda:
In reply to this post by Eliot Miranda-2
> Don Goodman-Wilson?s moral critique of Open Source; essential reading.
There is not one word about Free Software nor any discussion of
proprietary software, specially as it shaped the world of the late 1980s
and early 1990s.
While I don't agree with a lot that the OSI says, I do undestand why
they don't allow people to forbid evil uses in their licenses. With
different people having different definitions of evil you would end up
with software that could only be legally used by three people in the
whole world. It sounds good, but it is the path to madness.
But I think it is good to have these discussions and to come up with new
In reply to this post by Herbert König
I'll jump right into the deep end!
This is definitely a hard problem to solve. It seems like we are getting close to having the technology to solve the problem but the questions that need to be addressed are really difficult and need to be answered before we can apply technology to track it.
To start the conversation let's assume we have the answers to these questions.
When I contribute to a project I should receive value from that contribution that is proportionate to the contribution. When I use the software I should contribute to the software in a way that is proportionate to the value I receive from using that software. These two statements are very simple and does not address other concerns like ethical use or other benefits received by contributors.
If you get either side of the equation wrong everything breaks. Companies will not use the software if the cost is too high or the risk that the price will grow is too great. Maintainers will not support the software if they feel their contributions are undervalued, or if the benefit is too great gaming the system will proliferate and the quality of contributions will go down.
In open source software today you can make the argument that companies that benefit do contribute by hiring developers to maintain and develop software that is in some cases contributed back to the community.
If we can answer the questions about how to determine proportionate contributions to the software and value received by using the software, we could have a blockchain for a project with a pool of development tokens that gain value as companies purchase tokens to be used as licenses. The value of the tokens increases with time and popularity of the software project. Tokens value can be decreased over time from everyone to replenish the development / maintenance pool by increasing the number of tokens available and companies will be required to either purchase new tokens to keep up their license requirements or to contribute to development / maintenance activities. Tokent holders should have a proportionate say in how the new development or maintenance activities progress. Liquidity comes from interactions between token holders and purchasers which may not be guaranteed if the project is losing popularity or failing to be maintained. The incentives are to contribute new projects and to get licenses early to reduce the costs and increase the benefits. It also pushes the costs and payments down as project loses popularity. Extremely popular software may become too expensive for companies to use so speculation needs to be curved in some way maybe by defining token doubling moments based on the size of the development community and the number of customer licenses. Those are details but very important ones to consider.
Open source can also provide companies the opportunity to develop additional IP which they pay for and need to maintain on their own. Would a collaborative software licenses allow this activity or would contributions of IP be a requirement. Could companies develop IP which would then require additional licenses that go directly to the developer entity. These details are really important to companies when they decide to use or develop software. Having a Squeak marketplace for software developed in Squeak would be a very interesting development if the purchase price benefits everyone including feature creators, platform developers and maintainers.
We should also consider that companies that develop software today using open source use a very large number of open source projects. Some of these projects are only popular because they are easy to integrate or are already included in other components. They solve a small problem in a very complex solution and often when these projects are abandoned there is a very huge risk that changes and the lack of consistency will require huge development and is hampering innovation and not supporting it. When I use Linux I don't select all the components but I use them. If open source is decimated what will be the impact on innovation and would our concepts support or hamper advancements in software? (be careful what you wish for)
Eliot and I have also been talking about the additional benefits to participants and companies that are not addressed by fees and compensation. It is important that these benefits be organized and recognized as a benefit to both sides. The concept of a Guild has always made sense to me. Having a Guild of members that are guaranteed to have the required skills for companies to select from would be a great benefit for companies looking for talent. Having an organization that provides that certification, training, along with benefits like pensions, unemployment, or payment for contributions to software would be beneficial for members. Guilds could also work together to build commercial products that support the member benefits.
So now the hard part.
How do you determine the value of a contribution?
How do you determine the value of the software to a company to determine what they should pay?
Would you join a Guild to get certified and/or placed on an availability list?
Would you use a guild to hire software developers?
Would you support a software marketplace that built applications on top of a collaborative software projects that supports everyone or would this just splinter development and make it too difficult for a company to actually use the software. How does this affect tiny software projects that are really just components of much larger projects.
What are your thoughts on building a blockchain market for collaborative software projects? (does it solve problems or make things more complicated?)
Feel free to join in the conversation the water is nice!
All the best,
On Thu, Oct 17, 2019 at 9:16 AM Herbert König <[hidden email]> wrote:
> So now the hard part.
I started working on this in 1986. Brad Cox tackled these issues in his
"superdistribution" work. At the time I asked around if people would put
up with ads to be able to get software for free and the reaction was so
negative that I didn't expect our world to become what it is now.
> How do you determine the value of a contribution?
By 1997 I was working on the idea of bulding a metering system into the
virtual memory code. So a contribution (which could be any objects, like
a drawing of a cat, and not just code) would be rewarded a portion of
the user's monthly software bill proportional to how much it needed to
be kept in RAM compared to all other objects.
Distribution would be for free and there would be no cost to having lots
of software on your disk that you didn't actually use.
As a software stack grows, people are less and less willing to pay for
the older fundamental parts even though these still provide a lot of
actual value. So someone might think of forking $90 for just the Trumpet
WinSocket TCP/IP stack to access the Internet in 1995 but would think
even $1 totally absurd for just a TCP/IP stack in 2005 when it was such
a tiny part of an OS. This race to the bottom happens even without no
cost Open Source competitors, though that does speed things up.
My scheme was meant to avoid this trend as well as make each individual
contribution values (so you can get money for a single font and not have
to bundle it with 200 more before you can make any money with it).
> How do you determine the value of the software to a company
> to determine what they should pay?
The companies wouldn't pay anything at all, but could just build stuff
on top of other people's works. The end users (which might also be these
companies, but that is a different story) pay, and part goes to the
company for its efforts and part to all other authors.
Not completely unrelated, Arte TV just broadcasted an excellent "Thema" about work-salary-profit
and 4 more languages...
It's not about open-source, but gives some historical perspectives on retribution/organization of work in the past couple of centuries.
With these perspectives in mind, deconstructing and inventing new forms sounds like a good idea ;).
Like Jecel said, I don't buy the will to control the usage for ethical reasons.
What if a contributor of Squeak start to forbid usage to those supporting abortion, another to those eating meat, and yet another to those taking plane or working in transport industry, etc...
It's not like I'm against religion, veganism, ecology, whatever. I'm pretty sure that the intentions are good.
But we want to be protected from such arbitrary restrictions, don't we?
It's also not my religion to restrict access to knowledge. Knowledge is patrimony of mankind.
The sharing of knowledge and know how is an important property of open source.
That does not necessarily imply free usage of ready-made artifacts, including source code, documentation, ...
On the license side, everything is possible, like restricting free usage to non profit activities.
But then the value for profit activities has to be negotiated.
And I don't believe that the market will ever turn at the advantage of the producers (the contributors).
Historically, it's always been to the profit of distributors (of services for the software), today more than ever.
So it must be by organizing services around the code, not by the code itself IMO.
Maybe that's what you get in mind about a guild?
For avoiding gaming strategy if we ever start to retribute contributions, every metric creates a bias, but it shall be possible to mitigate by randomizing or caping the rewards... We're not yet there. Also interesting is who controls? Elected, co-opted, votes based on contributions? Weight of older contributions gradually fading away?
Le ven. 18 oct. 2019 à 02:46, Jecel Assumpcao Jr. <[hidden email]> a écrit :
In reply to this post by Eliot Miranda-2
Cannot resist :)
First off, the discussion seems to have moved away from the stated premise, as quoted by Eliot, which talks about morality. I will address that part first.
I could not disagree more with the author's position. He seems a pretty typical armchair quarterback, not contributing, yet pointing accusatory fingers at the people who do. More than that, what he is accusing them of is quite ridiculous: yes, openness and open-source might have been good (sometimes), but why don't open source developers solve all of humanity's problems? Well, duh, because that's not why they set out to do. People who are actually doing something, especially people who are creating something, need to focus on what they are doing. There are many people who earn a living as programmers, and clearly not all of them are the creative type, but, among those contributing to open source projects, I think a disproportionate number of them are - that's what drives them to contributing in the first place.
Similarly, while software in general is not quite a science or an art, it is more so for the creative people who practice it. In that sense, they are closer to artists or mathematicians or scientists, at least having similar aspirations/drive. You don't/shouldn't expect mathematicians to solve humanity's problems, they already contribute a lot, whether they even care about the contribution aspect or not. Sure, there are exceptions like Bertrand Russell, who seems to have been a very moral person, but at least as likely one can find mathematicians closer to popular culture caricatures of the character, people very awkward at social interaction and much more removed from society than the average person. Somebody like Grigori Perelman. Now that would be a funny image - somebody asking Perelman why doesn't he do more for how mathematics are used, and why mathematicians are always so focused on mathematics, resulting in a system that sadly neglects people, And also if he thinks that mathematicians should maybe not publish their work in the open, they should rather discard openness as an axiom.
Let us also not forget mathematicians of the past - why didn't Abel, who died young, poor and unrecognized, neglect his moral obligation to stop nefarious people like the NSA from using the results of his work?
Which brings us nicely to the reward for contributions part, and acknowledging that most of us are more "normal" people, who would rather not still live with their mother on her pension, I think we have to recognize that, among the creative types that I mentioned, especially artists, we (alongside mathematicians with their NSA jobs) are the lucky ones. We do find employment, which, even if it does not allow us to fully pursue our interests, it is at least close enough that it can give us some satisfaction. We don't have to take jobs as waiters to allow us to do some programming on the side. But on the whole, we do live in a city of pigs. We have no use for poets, just like we have no use for pure mathematicians, why should we programmers be treated any differently? It's true, unlike poets, the powers that be do need our work, and there are a lot of us, so theoretically we do have some potential power to influence things. But I think this is all part of a bigger trend. A lot of jobs are going to disappear pretty soon, and society will need to find a radical new solution, hopefully one where we can all pursue our creative drive. Maybe we can try to influence things in that direction, and I think this kind of activism is a good thing, but I don't think it has anything to do with open source, and it is certainly not the open source movement's responsibility
On Thu, Oct 17, 2019 at 6:14 AM Eliot Miranda <[hidden email]> wrote:
I like the idea of a metering system and that makes a lot more sense than counting number of contributions or lines of code. It gets difficult if a company that wants to pay has difficulty figuring out how much it will cost them. I really like the concept of paying more for features used because it highlights what contributions are important. Maybe we could consider having a set price for licenses but we use a feature metric that determines who gets what share of that payment. It would also help people to understand what features are being used and where to focus efforts to improve the system. Bounties for developing new features would also be interesting but it doesn't encourage collaboration and coordination.
If you have a metering system how do you then determine how people get credit for the work they put into that system? For example the VM seems quite important! Who gets paid for that? Can we form teams and let the team leader give out percentages? What percentage does the VM get of an overall license? How do you choose where one feature ends and another begins? There are also tools in the image that are not part of the running system. They are just as important for design and productivity so they should count.
We need to also think about the impact of changing licenses. For businesses that want to use the software will they accept different license terms? We had a number of people that worked really hard to move us to MIT! We did that in an effort to get more adoption and hopefully build a larger audience and get more contributors. What impact would we see if we changed the license to something else? How does the RedHat model fit in here? If we did something new, are we interested in relicensing to make sure people get paid or do we just want to take the open source code and repackage it, add support, security, additional features and professional services and call it something else?
All the best,
On Fri, Oct 18, 2019 at 4:28 PM Florin Mateoc <[hidden email]> wrote:
|Free forum by Nabble||Edit this page|