Skip to content
This repository has been archived by the owner on Nov 16, 2022. It is now read-only.

Operating Agreement #1074

Merged
merged 8 commits into from
Jun 16, 2017
Merged

Operating Agreement #1074

merged 8 commits into from
Jun 16, 2017

Conversation

chadwhitacre
Copy link
Contributor

@chadwhitacre chadwhitacre commented May 22, 2017

Closes #72.

Preview

https://gratipay-operating-agreement.herokuapp.com/big-picture/operating-agreement

Todo

  • specify record-keeping
  • sort out {member,manager}-managed vis-a-vis active/passive membership
  • access
  • twyw
  • profit-sharing
  • minimize code changes required to put this into effect
    • figure out digital signatures … punting, keeping it general in here for now
  • have Janelle look it over? … out of time, maybe later
  • members may not sell their membership
  • publicness?
  • revise the rest of the big picture … out of scope
  • something about no self-merging?
  • review vote thresholds
  • say something about capital contributions
    • zero required
    • but what about when we do?
  • figure out allowances and splitting expenses
  • sort out capital allocations

Deploy

  • replace CANONICAL_URL with ASPEN_BASE_URL What was this for? Site is working, so ...

@chadwhitacre
Copy link
Contributor Author

I'm looking at setting up a sandbox for easier real-time review.

@chadwhitacre
Copy link
Contributor Author

I've got a new app created and I'm trying to get Travis to build and deploy to it. Currently:

Skipping a deployment with the heroku provider because the current build is a pull request.

How do we get back to building twice?

@chadwhitacre
Copy link
Contributor Author

Built twice ... did one deploy!?

@chadwhitacre
Copy link
Contributor Author

Yes!

screen shot 2017-05-22 at 10 54 42 am

@chadwhitacre
Copy link
Contributor Author

Getting weird behavior:

@chadwhitacre
Copy link
Contributor Author

Seeing Process exited with 139

@chadwhitacre
Copy link
Contributor Author

Uuuuh ... segfault!?

@chadwhitacre
Copy link
Contributor Author

Using Python 2.7.11.

@chadwhitacre
Copy link
Contributor Author

Yeesh. Lucked out on that one! Upgrading libsass seems to have worked.

cc: @dmk246 ;-)

Drop local implementation in favor of Aspen's.
@chadwhitacre
Copy link
Contributor Author

@chadwhitacre
Copy link
Contributor Author

Ping @clone1018 @rohitpaulk @mattbk et al. Rough draft is ready for initial review. Gonna let it sit a couple days and then revise. The one thing I still want to fold in from @clone1018's draft is the part about profit distribution in the case of dissolution.

@clone1018
Copy link
Contributor

clone1018 commented May 22, 2017

For each system, Gratipay invites members to have access to the system by a vote of 100% of the subset of members who already have access to the system

Love it so far

@rohitpaulk
Copy link
Contributor

rohitpaulk commented May 22, 2017

Gratipay makes guaranteed payments to its members on a weekly basis, using the same “take-what-you-want” (“twyw”) system by which it also distributes money to certain of its independent contractors.

Will we have people on the Gratipay team who aren't members of the co-operative?

At the end of Gratipay's fiscal year, which runs from June 1 through May 31, Gratipay's profits or losses are allocated to each member's capital account based on the amount of time they were a member during the preceding year. When Gratipay removes a member, the balance in their capital account is allocated to each remaining member's capital account in the same fashion. Gratipay retains all earnings. Gratipay does not distribute profits apart from guaranteed payments.

Does 'guaranteed payments' refer to the twyw payments? Is a capital account the one through which a member can draw gratipay-related expenses (also, is that the account to which the debit-card mentioned in the second paragraph will be linked)?

@rohitpaulk
Copy link
Contributor

The expense counts against their total monthly allowance in a ratio determined by consensus of the members involved. So, for example, payment of an invoice for $200 might be authorized by three members at 50%, 30%, and 20%, so that their available monthly allowance would decrease by $100, $60, and $40 respectively.

That... sounds like it'd be tricky. Can't we do equal splits, and the cases that require uneven splits can be considered as two different expenses? I might be missing cases where this would be required though.

@mattbk
Copy link
Contributor

mattbk commented May 23, 2017

What's the difference between "profits" and "earnings"?

Will we have people on the Gratipay team who aren't members of the co-operative?

That doesn't seem implied by

Gratipay maintains membership records on Gratipay.com [https://gratipay.com/Gratipay/distributing/].

Any member with control over access to a subsystem may withdraw access from any other member at any time for any reason.

I assume this will be recorded in the onboarding ticket as a matter of course.

Does 'guaranteed payments' refer to the twyw payments?

Yes (although if more than TWYW is added for other projects, will it be an option for the Gratipy project as well, or are we stuck on TWYW?):

Gratipay makes guaranteed payments to its members on a weekly basis, using the same “take-what-you-want” (“twyw”) system by which it also distributes money to certain of its independent contractors.

Members are entitled to a debit card,

Sounds like https://github.com/basecamp/handbook. 😉


The rest sounds pretty good, as far as it goes. I assume more rules may be needed as time goes on. Simple majority to change the operating agreement? Is an operating agreement the same as bylaws?

@chadwhitacre
Copy link
Contributor Author

Is an operating agreement the same as bylaws?

Yeah, basically. LLCs have operating agreements whereas C corps have bylaws.

@chadwhitacre
Copy link
Contributor Author

Will we have people on the Gratipay team who aren't members of the co-operative?

Yes, I was thinking the Gratipay team on Gratipay would encompass owners and contractors, as well as volunteers post-gratipay/gratipay.com#4299.

@chadwhitacre
Copy link
Contributor Author

chadwhitacre commented May 24, 2017

Does 'guaranteed payments' refer to the twyw payments?

Yeah, basically.

Is a capital account the one through which a member can draw gratipay-related expenses (also, is that the account to which the debit-card mentioned in the second paragraph will be linked)?

No, the capital account is where profit accrues. Gratipay-related expenses come out of our checking account at PNC bank, via the debit cards mentioned.

What's the difference between "profits" and "earnings"?

They're basically the same thing. The phrase "retained earnings" is a term of art in accounting, but yeah it basically means "retained profits" or "profits that you didn't distribute to the owners but kept in the company."

One big wrinkle with LLCs as a structure is that even when profits/earnings are retained, they still count as income for individual members. So if there are four of us and Gratipay earns $10,000 in profit in a year, then each of us will have to report $2,500 extra income on our personal tax return to the IRS, even though the $2,500 is still "locked up" in the cooperative (that money isn't actually available to us personally). The reason we want to keep some money "locked up" in the cooperative is simply for cash flow. Apart from needing cash for daily operations, the cooperative ought to have cash on hand to handle emergencies and respond quickly to opportunities. I am anticipating that the amount we end up keeping on hand will be a subject of negotiation in our weekly takes, since weekly takes are the mechanism whereby each of us has access to the cooperative's money to pay ourselves (vs. access to pay vendors via the debit cards linked to our operating account at PNC).

Our weekly takes are "guaranteed payments," which means that even though they are technically distributions of profit (they are a "draw" against the profit that we'd otherwise supposedly receive at the end of the year when we settle up), they are distributed a) independently of Gratipay's income (cf. available), and b) in view of work we each perform as part of providing the cooperative's goods and services. They're a quasi-salary, in other words, for owners (vs. employees or contractors).

@chadwhitacre
Copy link
Contributor Author

if more than TWYW is added for other projects, will it be an option for the Gratipy project as well, or are we stuck on TWYW?

I hope we're not stuck with anything. 😛

That'd probably mean voting on an operating agreement change, though ...

Simple majority to change the operating agreement?

Yeah, maybe. Noted in ticket todo as "review vote thresholds."

@chadwhitacre
Copy link
Contributor Author

chadwhitacre commented May 24, 2017

That... sounds like it'd be tricky. Can't we do equal splits, and the cases that require uneven splits can be considered as two different expenses? I might be missing cases where this would be required though.

I'm looking for some kind of co-budgeting here. I'm thinking about our recurring expenses as well as one-time things. I want us each to have the flexibility to sign up for new services, buy new domain names, go to conferences, etc. But I also want us to be able to spread the burden, so that, e.g., @clone1018 doesn't end up with all of our Heroku cost against his allowance, even though it might be his card that ends up getting used for it. I want a way for someone to take initiative and purchase something, and for the rest of us to come along and say "Yeah, I agree with that decision" by sharing in the authorization of the expense.

- fold Details in other sections
- revise vote thresholds
- rewrite Money section for profit/loss based on twyw
@chadwhitacre
Copy link
Contributor Author

Alright @clone1018 @rohitpaulk @mattbk et al., I've made a second draft of the operating agreement in 3ad3fa0, and I've spun up the staging dyno again so you can read it more easilier:

https://gratipay-operating-agreement.herokuapp.com/big-picture/operating-agreement

The biggest change is in the Money section, which I overhauled to better specify how we allocate profits and losses. The tricky thing about LLCs is that profit/loss counts as income to each of us even if we keep it inside of Gratipay. If Gratipay has $20,000 in profit and we split that five ways, we'd each have to pay tax on an extra $4,000 of income even though we don't personally benefit from it. I think the fairest way to deal with that is to allocate profit/loss on the total twyw distribution amount. It puts downward pressure on the people who are taking the most, which I think is right.

Can't we do equal splits, and the cases that require uneven splits can be considered as two different expenses?

I relaxed the language around this to say it's equal by default. S'okay?

I also fine-tuned the details of voting.

Let me know what you think!

@chadwhitacre
Copy link
Contributor Author

Per slack we are aiming to work on this and hopefully land it tomorrow.

@rohitpaulk
Copy link
Contributor

I think the fairest way to deal with that is to allocate profit/loss on the total twyw distribution amount.

That makes sense to me.

@clone1018
Copy link
Contributor

I've read through the new update and it all seems great to me.

@chadwhitacre
Copy link
Contributor Author

slack

@chadwhitacre
Copy link
Contributor Author

With +1s from @rohitpaulk and @clone1018 I am going to go ahead and self-merge this. I am the sole owner of Gratipay right now, so it is my prerogative to adopt an operating agreement. Once adopted, I will be the sole member of the co-op, and I can propose to invite new members! :-)

@chadwhitacre chadwhitacre merged commit b018de6 into master Jun 16, 2017
@chadwhitacre chadwhitacre deleted the operating-agreement branch June 16, 2017 19:31
chadwhitacre added a commit to gratipay/finances that referenced this pull request Jun 24, 2017
We adopted the calendar year in
gratipay/inside.gratipay.com#1074. Closes #47.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants