Arbor Sync 2021-05-13
===
## Preliminaries
- Arbor has been going for three years (and some change), and we have raised about $1,000 over the last 6 months!
## Updates
- Jack
- Orchard patches submitted and under review
- Found and fixed nasty cross-platform test problems with temporary directory reuse
- Andrew
- Completed our first bounty by writing specs for the metadata we use!
- Chris
- Sprig
- fixed bug introduced by gio version change that broke spacebar filtering
- Ran some user interviews:
- Imagine that for some reason, your company has changed chat platforms. You need to get the attention of a co-worker named Alice. You have a question for her, but the answer can wait until after you get back from lunch. What do you do:
- <details><summary>mockup</summary><img src=https://i.imgur.com/BVJ8lpy.jpg/></details>
- If the user indicated that they would type @Alice, they would be presented with the following popup:
- <details><summary>mockup</summary><img src=https://i.imgur.com/gNJV6bg.jpg/></details>
- If they used ~Alice, that would be the end of it, but that doesn't represent their intentions very well. If they used !Alice, a second dialog would pop up:
- <details><summary>mockup</summary><img src=https://i.imgur.com/0uINorc.jpg/></details>
- I tell them that their `@` was rewritten to `!` or whichever option they chose.
- I then pose a different scenario: You're about to leave for lunch (in the before time when office lunches existed), and you want to ask if Alice is coming with your group. What do you type?
- Walk them through whichever dialoges should trigger based on their choices.
- Feedback (number of 'x'es indicates the number of users who gave the feedback)
- [x] [x] [x] Users would be more comfortable with the second dialog if it asked for concrete units of time, rather than "soon" or "whenever"
- [x] [x] [ ] I caught that the dialog was teaching me notation I could use later on
- [x] [x] [ ] Not obvious that the checkbox on first dialog will rewrite from then on
- [x] [x] [ ] I would use DMs for the specific things in this scenario if they were available
- [x] [ ] [ ] @mentioning people is percieved as aggressive, like "putting someone on blast" in public. (this feedback was from a female user tester, and she said that she thinks this is a female perspective)
- [x] [ ] [ ] Explore alternative text notations, ! is a negation operator
- [x] [ ] [ ] Should @@ => !! and @@@ => !!!
- Established our opencollective and transferred our balance into it
- forest
- minor refactors for clarity
- arbor.chat website
- updated our meeting schedule to be accurate (part of it said every other week, and part said weekly).
- gio
- implemented tooltip widgets, not quite happy with the API yet
## Finance
You can view Arbor's balance and transaction history live on our open collective: https://opencollective.com/arbor-chat
We need to find a budgeting solution. I'm open to ideas on this. Spreadsheet? Ledger?
I also need at least one person who is willing to help with accounting stuff. I'd prefer that they be involved in the project for at least a year.
```
$ hledger balance Checking:Budgeted:Chris:Arbor -f ~/Dropbox/Budget/budget.txt
456.11 Checking:Budgeted:Chris:Arbor:Available
200.00 Checking:Budgeted:Chris:Arbor:Coffees
240.00 Checking:Budgeted:Chris:Arbor:Infrastructure
52.29 Checking:Budgeted:Chris:Arbor:LiberapayFuture
--------------------
948.40
```
I have transferred Arbor's balance into OpenCollective. I over-paid to cover the transaction fees myself, which is why the transaction is $977.03.
Here is a record of every transaction during the time I held our funds in my account:
<details>
<summary>all transactions</summary>
<pre>
Transactions in Checking:Budgeted:Chris:Arbor and subaccounts:
2020-08-24 GitHub Sponsors In:GitHub Sponsors 1.45 1.45
2020-09-22 GitHub Sponsors In:GitHub Sponsors 1.00 2.45
2020-10-22 GitHub Sponsors GitHub Spo ***********P6N8 In:GitHub Sponsors 1.00 3.45
2020-11-02 STRIPE TRANSFER ***********Q9G7 In:Liberapay 75.14 78.59
2020-11-23 GitHub Sponsors GitHub Spo ***********X7O5 In:GitHub Sponsors 2.00 80.59
2020-12-05 DigitalOcean Hosting Ch:Bu:Chris -5.00 75.59
2020-12-15 STRIPE TRANSFER ***********F3X1 In:Liberapay 4.55 80.14
2020-12-18 STRIPE TRANSFER ***********S0B6 In:Liberapay 4.55 84.69
2020-12-22 GitHub Sponsors GitHub Spo ***********C4Q5 In:GitHub Sponsors 52.00 136.69
2021-01-06 DigitalOcean Hosting Ch:Bu:Chris -5.00 131.69
2021-01-06 Personal Arbor Contribution Ch:Bu:Chris 10.00 141.69
2021-01-11 Stripe In:Liberapay 4.55 146.24
2021-01-22 GitHub Sponsors In:GitHub Sponsors 62.00 208.24
2021-02-01 DigitalOcean Hosting Ch:Bu:Chris -5.00 203.24
2021-02-17 Personal Arbor Contribution Ch:Bu:Chris 10.00 213.24
2021-02-17 Repay chris for arbor domain Ch:Bu:Chris -30.06 183.18
2021-02-22 GitHub Sponsors In:GitHub Sponsors 162.17 345.35
2021-02-26 Stripe In:Liberapay 4.55 349.90
2021-02-28 DigitalOcean hosting for arbor Ch:Bu:Chris -5.00 344.90
2021-03-22 GitHub Sponsors In:GitHub Sponsors 332.00 676.90
2021-04-01 Personal Arbor Contribution (March & April) Ch:Bu:Pr:Chris 20.00 696.90
2021-04-05 Stripe In:Liberapay 4.55 701.45
2021-04-21 GitHub Sponsors GitHub Spo ***********H3Y9 In:GitHub Sponsors 232.00 933.45
2021-04-22 STRIPE TRANSFER ***********U0T4 In:Liberapay 24.95 958.40
2021-05-04 Pay Chris Back for 2 months DigitalOcean Ch:Bu:Chris -10.00 948.40
</pre>
</details>
## Discussion
- OpenCollective is the most efficient way to support Arbor. Other platforms essentially mean we pay transaction fees twice.
- Try doing our accounting with a cron job that reconciles the opencollective api to a ledger file