Git Product home page Git Product logo

Comments (8)

drllau avatar drllau commented on June 3, 2024 3

Zee, yes I confess to being a systems thinker because I distilled what normally would be a THREE day design workshop into the brainblurt above ... let's concentrate on your 4 customer avatars for now (subset of the wider VAR)

  1. Scenario A for alpha: Individual contributor starts a company
    Before starting an entity, a personal can contribute using an email:[email protected]. The problem is that if the ENTITY owns the title, there are international complications. I address this via the Harmony contribution generator using License Zero as the default for /core material (strictly speaking the literary rights granted under US law) plus and CC BY-ND /contrib and treated reciprocally under Berne Agreement and later WIPO treaties. The full eyesore (which is legally valid internationally, I checked) here
    Zinc Collective LLC-Entity Assigment of Rights by Corporates.pdf

    • it is an eyeful so someone needs to simplify it to a visual form akin to
      Public Zero
    • In return at this point, you give them the License Zero Public version plus a waiver for trial to extend until 1.x is released, afterwards the 1 month switch-over period (stay or upgrade) is triggered.
    • if the timing is they contributed BEFORE starting a company, most likely a License Zero Private version (plus waiver). Once the company grows to be above a certain size/revenue, my question @zspencer is do you charge them the $4.5k difference between individual vs firm? You do realise that the owner of LicenseZero wants commissions as well? Another reason I said it was problematic.
  2. Scenario B for beta: Individual contributor starts an open-source project that uses Compensated

    • currently if they are just playing around, then the Private license might be adequate. They have rules for relicensing
    • Currently under the terms, they can include just the version they'd either paid for or at the time of grant. However, you wanted to give them ALL 0.x so that means for the life of alpha development they can bundle as per License Zero without your permission. You can limit this by making the waiver specific to that person and not sublicensees.
  3. Scenario G for gamma: Individual contributor starts a commercial project that uses Compensated

    • License Zero recommends the Parity License in this scenario akin to AGPL which is their game theory logic to encourage people to pay
def parity_license:
  if building_software:
    if release_software_as_open_source:
      return 'free to use'
    else:
      return 'need to buy a private license'
  else:
    return 'free to use'
  1. Scenario D for delta: Individual contributor from Company A brings on additional workers/owners

    • if the $5k covers an entity, then the whole firm is covered. What is a little tricky is if there are subcontractors who are not directly employed. That would have to be treated as work-for-hire and you can give them a nominal $10 to assign all rights to Zinc directly and not company.
    • this is valid since you are concentrating on the core stability and not the UI/UX which is brand specific.
  2. Scenario E for epsilon - adapt from the Non-Violent Public License remove IPI from someone Zinc objects to

    • whilst I have great respect for those ethical programmers, my legal objection is that this is UNENFORCEABLE within the license cum contract. A great premise in law-making, legislative capture aside, is never pass anything which cannot be implemented.
    • Zinc can define an Internet Payment Interface with great technical precision.
    • you then can assert that it is an ECONOMIC tort (basically harm) if
    1. Anyone deletes the IPI without permission of the owner (aka digital equiv to killing their income)
    2. Disable (permanent or temp) by cracking the server or DDoS
    3. Disdirect (vs maldirect or indirect) through phishing and changing the payment channel to an unknown (contractually a breach of privity).
    4. You can then come up with internal coop policies for what are legit reasons for disabling an account you manage or refer to licensees ... the defense subclause in the License Zero comes to mind here
    5. So you see there is a distinction between contract (debt based obligations) vs tort (harm based damages). It might be (barely) tolerable if someone waves a gun in your face but as soon as they pull the trigger (even if not directly at you), you have reasons under stated policy to pull their account.That's the reason why people like myself are rare who understand both law and tech because it takes years to master each discipline.

I can define service about stability and security, and leave it up to the commercial lawyers to fight out the specific contractual terms. What you want is commonly called moral rights in EU (not really valid under US copyright) and are hard hard hard to implement because ethical becomes subjective value standards after a certain point. As someone who subscribes to Geek Manifesto, I much prefer objective and therefore deterministic.

from compensated.

drllau avatar drllau commented on June 3, 2024 2

I've been doing a bit of work with the ethical source working group to figure out the intersection between open source licenses and ethical licenses, but at present, they do not seem "baked" enough to use. Meanwhile, the Prosperity Public License attempts to limit everyone who has not acquired a license (even contributors) to personal use.

The problem is that most of the non-OSI standard licenses tend to overload them making more complications (and thus legal uncertainty) than necessary. Rather than muck around, I'll jump to an endpoint and apply backwards reasoning based on cryptoeconomics (game theory) that I sorta got exposed to in my Blockchain design thinking.

Faas

  1. People want 1" holes not raving about 1" Libre drills. If you look at above diagram we want an unambiguous Internet Payment Interface function at far right that acts as a permanent and persistent URI to do business by accepting payments (implementation details of course start to make life fuzzy).
  2. Already GitHub allows sponsors and according to documentation there are 4 spare links apart from supporting Patreon, OpenCollect and similar
  3. I have like many others have multiple projects so in context I might have @drllau(!work), @drllau(!home), @drllau(!play) @drllau(!pray), the last being a charity/cause. I need to pay taxes on work, accept refunds from personal purchases and the last just random pocket money from tips.
  4. As Zinc Collective at the end of the day is a business, it needs to provide services valued by everyone else. Now for good or bad the Prosperity Public License was selected which basically assumes 1 month free trial then an ongoing subscription. The reason I was not enamoured by this is that if you look at other OSI, they are basically saying you can "copy" (with a very technical but logically correct definition of distribute) under certain conditions, otherwise no-go. You don't get wishy-washing about commercial or ethical, the latter being non-deterministic in even legally you can't reduce this to english much less code.
  5. Function as a Service can be defined and you can offer @zspencer (%work) free for each Coop member or paid the first tier (originally priced $500 flat but can be $10/wk@50wks) and perhaps 10 Internet payment points for the next tier (wife & hubby = 7 with a couple spare for pocketmoney for kids and dog) or just an SME with ~10 state outlets to manage the wholesale taxes. Again you can deterministically measure uptime, %completion, etc all the things that matter for service quality control. I can't say must not use for drug-running or XYZ because it questioning upstream and if you have zero control, then logic suggests don't make a rod for your own back (cf common carrier or ISP safe harbor). A payment END point is not the place to be policing the source of dirty money. Sufficient data needs to be captured for any regulatory purpose but no more to preserve financial privacy.
  6. Now lets say that instead of a hosted service, someone gets a license so they can implement anything from
  • IaaS (barebones with source code), with Compensated, Apatche and all the other wierd & wondering frameworks out there to commit CMS atrocies at scale. Like all customers you can refuse sale so basic due diligence is necessary but once sold, there can be no regrets as according to Prosperity License, so long as they keep paying (until next version different story), since it asserts

The contributor licenses you to do everything with this software that would otherwise infringe their copyright in it.

  • Container as service - as a value add they can sell containers with code already rolled up. It would be nice to capture this but because Zinc is indemnified, there's probably not much that can be done
  • Platform as a service - here it is possible to ask for a slice of the action, perhaps 50% of any unit sales after the original $1500 has been recouped. The analogy is akin to an artist getting a % of any resale of art since the license is perpetual, if improvements continue with the original code base and waiver of the upgrades to 0.x, then value is accruing to the platform. Of course if the payment URI is only a small portion, then perhaps 1% of the deemed unit sales or whatever is mutually negotiable.
  1. I'd note that there are emerging standards for web commerce such as openpayments so for future proofing you probably need:
  • plugin encapsulating existing compensated code to trigger payment processor
  • a shim to select one of the allowed GitHub payment channels
  • a shard to basically redirect to any future payment standard
  1. Now it is possible to put numbers on the pricing and volume to create the right economic incentive. Because @zspencer wanted a flat rate for the 0.x alpha code including all upgrades you basically waive the requirement for trial to be only 1 month, setting it to until 1.x is released. By doing differential pricing or discounts you can encourage licensees to upgrade rather than sticking with perhaps outdated code, itself a security risk.
  2. So you can see from above, I'm applying backwards reasoning, figuring out what the end goals should be (open for debate), putting some tentative pricing, and then work backwards removing the subscription but having a higher one off. Look at how to create a server component and per unit client pricing so you can cross-subsidise the many small non-profits with a charge on the few high volume clients

So the tentative solution is how to price the tiers to foster a fee+rebate to cross subsidise the individual or non-profits.

from compensated.

drllau avatar drllau commented on June 3, 2024 2

@zspencer ... it is always useful mentally to work through a practical example.

  1. Zinc Cooperative as part of its Collective Action principle decides to offer 50% discount to members of the ZebraUnites dazzle. This is both a legal entity (US cooperative) plus chapter-members (outside US) plus non-members who ascribe to the movement.
  2. Zinc can license the Material+Media for $5k who in turn can sublicense to each and every member on the presumption they are smart enough to deploy on barebones. Zinc then charges time&materials x 50% for any customisations to get to container-as-a-Service. Or else DIY with all non-proprietary changes coming under the contributors agreement and grantback basis.
  3. An individual chapter member can do the same for $500, which get a waiver on all 0.x alpha upgrades. They develop say an internal Spanish version of the same codebase (grantback) and in the duration build up a customer base (hundreds of internet payment interfaces) with nice manuals (not contributed). When 1.x is released, the waiver ends and cryptoeconomics would suggest a win-win outcome if the translations are contributed back to Zinc in return for a waiver for more secure 1.x
  4. A Zebra independent coder likes Compensated and say writes the Vue version (Javascript framework). Without needing to pay $500, they get to publicly display (client) and perform (server) to generate consulting income from their code. When 1.x comes up they instead might consider paying $10/wk a suitable ongoing fee to pay Zinc for all the upgrades. Under the eat your own dogfood example, they would pay Zinc $10 who in turn test the internet payment interface by reverse charging the first week's service fee. It then measures the pingback discount (how much is lost using that FX or payment processor), perhaps suggesting less onerous alternative pathways. The coder is so impressed by the service, they are tempted to join Zinc (win-win).
  5. A chinese hackavist contributes code to feed Compensated into AliPay. Zinc is not sure of the providence of some of the libraries (which are curiously devoid of comments). So the best legal compromise is to treat as work for hire asking coder to self-certify all the work is theirs and indemnifying Zinc. This only goes into the /contrib level because it can either be clean-room reverse engineered (see MS vs Samba), wait until the correct title-holder rolls along to get copyright clearance (after which it moves into /core) or if a DCMA complaint comes along, remove. Since work-for-hire is a contractual basis, Zinc needs to figure out a policy of how long to hold payment (+90 days?) to do the clearance. If it does resolve to the satisfaction of all parties including AliPay as trademark owner, then Zinc can have a mechanism for encouraging open source self-help/reliance in China so long as the proper taxes are paid on the receiving end.
  6. Other ZebraUnites seeing the popularity agitate for their own private Internet Payment Interface. As per policy, they may wish to contribute a whole bunch but only for L3C/CIC/VCC, charities, B-corps and other evidentary certifications like constitutional amendments. These will be cross-subsidised by a levy on the paying participants above a certain threshold (implementing the fee-bate concept). But Zinc allows those using the function as a service to be entitled to future improvements automatically.

Anyway, I hope the above gives some starting points for deep discussion.

from compensated.

drllau avatar drllau commented on June 3, 2024 1

Heh ... this is an area which the legal eagles have spent centuries ... Let's start with the basics

  • cultural lore = social approbium (shame, guilt, ostracisation) ... this works only with small closed groups
  • common law = coercion (fear, threats, courts) - naturally states have monopoly on organised violence so this becomes centralised or devolve to warlords in their own little patches (can you say corporate towns?)
  • commercial lure = monetary incentives (greed, cryptocurrencies, markets) - where most of the world is currently at, works well at scale so long as you don't inflate the unit of account ... the problem is that this is essentially amoral, hence noise about ethical capitalism

There is a 4th school of thought that code is law, what you do to encode standards of behaviour via various mechanisms. Open source is example because with tools like sourceforge and GPL licenses, it leverages common law and imposes own norms (cultural lore) to promote a certain attitude which at the time was radical (information should be free). However, we now hit the economic stumbling block of non-rival goods, in that the first copy is expensive, but distribution of the 2nd, 3rd etc is near zero. So open source has always had the conumdrum of how to finance development and all the intermediate steps which are buggy to different degrees.

New approaches are coming from cryptoeconomics, if the distributed ledger is a tamper resistant historical record, then game theory is how you attempt to preserve desirable traits in the future. You also point out that enforcibility is distinct from enforcement vs compliance. Let me go back to harm-based damages of economic tort. Let's define that Zinc Coop (and by implication all licensees) has a duty of care in fidelity ... broadly speaking truth, that the payment goes to who it is claimed to be recipient, that the amount is as according to the fees and surcharges stipulated (nothing hidden unlike some payment processors) and that it complies with all relevant laws in whatever jurisdiction. By putting out the source code, you are transparent in that you run a payment interface service exactly as recorded in the code. You can ask all licensees to respect this and under contract, can remove their rights to future upgrades (or any such rights granted under copyright). However, you can't guarantee that it will be fair (in the sense of doctrine of equity). As for enforcement, if you eschew the coercion option, then the only logical alternative is a collective boycott, the old blackball approach. You can also have some sophisticated rules that if a supermajority of a group decides, then other things happen (sin-binnng) like a hiatus until dispute resolved (ie payment goes into escrow account rather than straight-thru processing. This can then be used as bargaining chip in the process of restorative justice

from compensated.

zspencer avatar zspencer commented on June 3, 2024

This is all super useful and I want to acknowledge that, and I'm having a really hard time keeping up with all the points you're bringing up. You're clearly a holistic systems thinker, and that's incredibly useful.

That said, I'd like this thread to be focused on the licensing to individual contributors side of things, with new issues being created for individual points or concerns.

My definition of an individual contributor is someone who has at least one commit in a release branch (for now, that's the 0.X branch.). My informal definition for commercial use is any project that creates or captures a monetary return for the project owners.

Per your request for clear examples, here are the scenarios I'm most interested in getting thoughts on:

Scenario: Individual contributor starts a company

  1. Person A contributes a patch, as a "thank you" we grant them rights to use compensated for commercial purposes personally.
  2. Person A starts Company A and is the sole owner/worker
  3. Do we want to allow Person A to use Compensated in Company A?

Scenario: Individual contributor starts an open-source project that uses Compensated

  1. Person A contributes a patch, as a "thank you" we grant them rights to use compensated for commercial purposes personally.
  2. Person A starts Project A, which they release under an open-source license and uses Compensated
  3. Do we want to allow Person A to use Compensated in Project A?

Scenario: Individual contributor starts a commercial project that uses Compensated

  1. Person A contributes a patch, as a "thank you" we grant them rights to use compensated for commercial purposes personally.
  2. Person A starts Project A, which they keep closed source and uses Compensated
  3. Do we want to allow Person A to use Compensated in Project A?

Scenario: Individual contributor from Company A brings on additional workers/owners

  1. Person A has been granted a limited license to use Compensated commercially in Company A because they contributed and they are the sole owner/worker
  2. Person A brings on a co-founder, Person B
  3. Do we want to require Person A to pay for a license now that they have an additional person involved who did not contribute?
  4. Or maybe we want to require Person B to also contribute?

I think what I'd like to propose is we allow any individual contributor the right to use Compensated in commercially, so long as those commercial projects do not violate the terms of use; (which I plan to adapt from the Non-Violent Public License)

Perhaps the underlying license for contributors is adapted from the Tailwind UI License? It seems to have had some really great thoughts put into it.

from compensated.

zspencer avatar zspencer commented on June 3, 2024

Thanks, this is helpful. I'm not wedded to License Zero; and since Zinc Collective LLC owns all the rights, we can easily relicense when we want.

Re: Ethical licensing as enforceable - This is the topic of much debate and I would like to work from the assumption that the license / terms of use we do wind up using is enforceable in this particular thread. When we start evaluating particular terms of use (or re-evaluating licenses) we can decide whether that particular document seems enforceable. You can read my most up-to-date thoughts on the enforcability of ethical terms in licenses here: EthicalSource/ethicalsource.dev#50 (comment)

from compensated.

maximegalon5 avatar maximegalon5 commented on June 3, 2024

Update: The business model is slated for discussion during ZC's upcoming meeting.

from compensated.

zspencer avatar zspencer commented on June 3, 2024

I believe we have decided to license Compensated for commercial use to contributors on a case-by-case basis; with the expectation that folks using it for personal use are free to do so however they choose; while folks who are using it within an organization must still pay for an organization license.

from compensated.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.