BadIdeaFactory / corporate

The corporate repository where we discuss our serious business
http://biffud.com/
MIT License
21 stars 10 forks source link

[Project Application] Bad Decision Maker #108

Closed chriszs closed 2 years ago

chriszs commented 4 years ago

Had some ideas about a possible Doodle replacement/Bad Idea Factory's workflow that I wanted to get out of my brain, into notes. Putting those in this discussion issue, which isn't a formal proposal.

Basically the workflow as it stands goes something like:

  1. Depending on the question, open an issue or PR in this repo with suggested changes or a proposal
  2. Talk about it in on GitHub, Slack or Zoom
  3. Create a Doodle poll and share it on Slack or Zoom
  4. Based on the results of that poll, act on the PR or issue (or don't)

Doodle serves decently in this decentralized workflow because it:

However, Doodle:

What might those look like? What could a replacement do?

  1. Establish a data store that we own of our corporate decisions
  2. Put serverless API that we control in front of it
  3. Add a simple, mobile-first web UI that replicates Doodle's core (non-scheduling) features
  4. Integrate into Slack with notifications of votes and results, as well as emoji voting
  5. Add Slack OAuth authentication
  6. Provide quorum/win-condition awareness
  7. Add a GitHub bot that can block/approve PRs pending votes
  8. Use computer vision to monitor Zoom meetings and register emojis on stick votes
  9. Hector overlords by email about pending votes
  10. Enforce a configurable time limit for votes

Realistically steps 1-3 are the most realistic for someone's spare time project and then some integration with Slack or GitHub would be a nice stretch goal.

What do you think?

slifty commented 4 years ago

I love the idea of improving our processes with better technology and fully agree that Doodle is rough for us. There is a lot of potential here, and on my end I would love if it could even automate it to auto-populate agendas with voting links as well.

(cc @boldenburg, secretary of code)

maboa commented 4 years ago

I love the idea of making something super simple and expertly implemented. The problem space seems well defined - in the end Doodle has validated the market for us, but screwed up on UX (especially mobile it seems). Maybe there is space for integration with Google docs or GitHub as a backend - but these are just thoughts I'm writing down as they float past. One important thing I think is that we make something that others will also find useful allowing us to diffuse the BIF brand far and wide.

chriszs commented 4 years ago

Hmmmm. If it's a brand exercise might it feature some bad UX?

chriszs commented 4 years ago

Roughed out most of steps 1-3 here. Poll creation and viewing work. Voting does not yet. Tried to keep this super simple and reusable. Notably does not have auth, editing, deletion or any integrations, yet. This is a good point to stop and ask, is this what we want? If so, a next step might be a project application.

chriszs commented 4 years ago

Votes work.

chriszs commented 4 years ago

I'm starting to think through the next phase of this and it's quickly getting into organizational process issues. One way our corporation could work is most official decisions are pull requests on the corporate repo and a merge happens when the required level of support is achieved — that way there's a record of everything in git. Then the decision maker could be implemented as a check on the PR that would pass after a vote, like an off-platform review request with levels of consensus. But that runs into some problems/questions:

  1. We're using issue templates to simplify application creation. We could use PR templates, but editing or creating a file to start one is somewhat involved. The decision maker GitHub integration could smooth this process, but that might tie it pretty heavily to one specific workflow.
  2. How does the decision maker know what the required level of support is? Someone would have to tell it, how?
  3. Does an off-platform review request even make sense? Or could the GitHub built-in one work? It doesn't, but why?
  4. Do we even need a UI for this, or can we use GitHub and/or Slack's? And relatedly,
  5. As we implement access control, what accounts are we comfortable requiring overlords to have? They kind of already need a GitHub account and if we go a GitHub-centric route that might open some opportunities for better integration. Or, we could go in an entirely different direction and use this opportunity to abstract away needing a GitHub account.
  6. How do we deal with backfilling all the decisions we made beforehand?
  7. How does that work for elections?

It has become super clear that we want to automate away almost any administrative work, because nobody has time for it.

Ultimately anything of this magnitude would probably require a bunch of elected officers to get on board. Maybe I'll just run for all of the positions like @knowtheory.

chriszs commented 4 years ago

(At least some of these thoughts are prompted by very roughly-styled GitHub flavored Markdown support and the beginnings of my work on GitHub integration and auth.)

chriszs commented 4 years ago

Or we could steer entirely in the other direction and completely decouple this app from the particulars of our organization.

chriszs commented 4 years ago

I HEREBY INVOKE MY RIGHTS...

As described in section 11.11.B of the BIFFUD Corporate Bylaws I hereby invoke my rights as a sentient being who has not uploaded their mind to the cloud for consideration of this project application by the BIFFUD Hive Mind. With this application I submit my interest in becoming a Member of BIFFUD and having this project supported and adored by all who can 🤔.

Project Information

Project Description

It’s an app to make collective decision-making simple, fast and fun.

Bylaw Questions

How is this project a bad idea?

Opening this to the public? We're gonna get trolled. Can we get a state party to run a Democratic primary through this app?

If this project were a D&D Character, what alignment would it be and why?

Alignment: Neutral Good

Where are the lulz?

I plan to add selfie voting in which the app runs live object, face and expression detection on a camera feed and tries to match a drawn, printed or facially expressed emoji to an option. Then the photo is shown with the vote.

How does this project make people thinking face emoji?

Is option A better, or option B? What about option C?! 🤔

Who is involved?

[For each member...]

Who will be the project's Comptroller?

Chris Zubak-Skees

Is this realistic to implement via BIFFUD?

Already well under way.

Next Steps

  1. Attend the next scheduled BIFFUD plotting session to plead your case.
  2. Address some of these issues
  3. Finish the mobile app
  4. Open to the public

How (often) will you be providing updates to the organization?

More often than they care to follow.

chriszs commented 4 years ago

Memorializing @slifty's suggestions:

  1. have a random chance it will randomly pick a result instead of tallying the votes, like, 1% chance (e.g. give everybody room to doubt it)
  2. incorporate a financial component so that you provide a donation to {something} as part of your vote, and only people whose donation was in the top 50% have their votes counted
  3. Everybody votes, then is paired with someone else who voted differently -- you have to reach consensus as a pair and vote together in order to cast a vote that counts
  4. You can use your vote to negate someone else's vote
  5. Use a deep learning algorithm to translate the voting options / poll question to emoji, so folks aren't EXACTLY sure what they're voting for
  6. everybody picks their bottom and top choice; 25% of the participants have their top choice selected, then 75% of the participants ACTUALLY vote by picking who they want to spite. Spite votes are counted as the bottom choice of the selected targets.

I do like number 3 a lot, because, as @mtigas and I both recognized, it's similar to a caucus.

@benlk and/or @knowtheory suggested the app itself gets a vote.

This was inspired by replacing Doodle, but Change.org and Kickstarter are other collective decision platforms.