TBD54566975 / open-source-programs

Issue tracking and milestone scheduling for TBD's Open Source Programs.
Apache License 2.0
247 stars 21 forks source link

[PROPOSAL] - Open Source Events Calendar #46

Closed ALRubinger closed 6 months ago

ALRubinger commented 1 year ago

Events Calendar

Desired outcome Simple way to add and view events. Open to contributors, or at least contributors with some level of trust. Best would be if there was one datastore for us to add/manage events in an open way, and we had tooling to surface these in a variety of mediums: Discord (like, "hey", event is starting at link in 5 minutes!), iCal/Google Calendar, developer.tbd.website.

Current Gaps Right now the only notion of "Events" we have is on developer.tbd.website/events, where the Markdown and images there are the single source of truth (datastore). This is probably fine for marquee events, but likely isn't the best place to keep routine meetings (for instance daily open source office hours on Discord voice channels, Twitter Spaces, ideas from core devs or the community, etc).

Implementation Suggestions From gleb#9120 on Discord:

You can use the events feature that Discord has, this is a video showing how to easily set it up: https://www.youtube.com/watch?v=Bi6ScSfWruk

You can also use a bot to link a google calendar to your discord events the link for that is here: https://top.gg/bot/903380664336928798

Discord Discussion (optional) https://discord.com/channels/937858703112155166/937858703820980296/1070482398799724617

ALRubinger commented 1 year ago

Contributors - what ideas you got?

DevVeles commented 1 year ago

What you could do is set up a public google calendar that you link to your discord events using the ChronicleBot. You could then either allow the public to edit the calendar however this has a high likelihood of getting abused so another option would be to have an extra discord channel or google form for event requests that would then be checked by a member of the team and consequently have relevant events added to the public google calendar.

ALRubinger commented 1 year ago

Awesome! Leaving this open as a proposal for awhile to collect ideas.

ALRubinger commented 1 year ago

Hooked together as recommended by @chaadayev - trial prototyping now:

image
angiejones commented 1 year ago

What you could do is set up a public google calendar that you link to your discord events using the ChronicleBot. You could then either allow the public to edit the calendar however this has a high likelihood of getting abused so another option would be to have an extra discord channel or google form for event requests that would then be checked by a member of the team and consequently have relevant events added to the public google calendarndar.

agree with this. preference towards google form so that it's not biased towards developers (who tend to be the audience most comfortable in our Discord).

ALRubinger commented 1 year ago

agree with this. preference towards google form so that it's not biased towards developers (who tend to be the audience most comfortable in our Discord).

OK awesome, so the TODO I see for this issue is set up a GH issue template for folks to request a new Calendar event - proposing this instead of a Google form for consistency in how the public asks things of the team. Makes sense @angiejones?

ALRubinger commented 1 year ago

Another task to do when closing this is to make an issue on developer.tbd.website for a page showing how to add the Calendar to Google Calendar via this link.

taniashiba commented 1 year ago

Proposal / feedback @ALRubinger -

  1. Add a single-sentence summary of what will be discussed / what the goal of the event is. Then add whether or not you are required to participate, if so how. Rough example: "developer.tbd.website Daily Sync recurs daily. Listen to what the team's up to and ask questions 1-1 in the last 5 minutes."
  2. Add calendar to welcome channel / message new members see upon joining Discord. This one is pretty straight-forward, but adding anyway!
  3. Next level: Add an !events or similar command to pull up recurring + one-off events in Discord, can potentially work with ChronicleBot. This way whenever someone asks about events or wants to know what's going on, they know how to pull up events.

Hope this helps! :)

ALRubinger commented 1 year ago

Appreciated @taniashiba!

AI for me: decompose into tasks for the developer.tbd.website project board. Link to here so @taniashiba and the rest of the community gets good tracking. To incorporate into the current Phase 2 work.

ALRubinger commented 1 year ago

@dayhaysoos One thing to walk through here will be how we differentiate the meetings on Discord from events @angiejones is currently maintaining in Markdown on the site repo itself. For instance, can Google Calendar become the data store for our events? If so, what would the new events page on developer.tbd.website look like? Do we need to show upcoming meetings in a different way than Spaces, Workshops, Conferences, etc? Let's link w/ @angiejones on this before coming to decisions, but we can do some R&D and see what's involved if we were to hook the events page to be driven from the Google Calendar backend.

Sydnee510 commented 1 year ago

So from my understanding, there needs to be a way to keep track and remind contributors about the daily meetings/spaces happening in discord and also do the same for upcoming workshops/spaces happening externally.

I think that the events tab should have two different sections where users can see the list of daily/weekly events and then there should also be calendar invites attached. So they can either subscribe to the calendar for all meetings or they can subscribe to individual meetings. The other section would be a list of the external events/workshops/conferences and etc. that don't happen on discord. Users should also be able to subscribe to a calendar invite for these individual events as well.

For one UI component there can be a visual calendar so users can see all the upcoming/recurring events happening on discord and externally. (The calendar can maybe sit at the top of the page above the list of events or it can sit below, whichever is more appealing to the eye.)

The discord bot reminders are also a great way to remind contributors about the events happening. The discord bot can give either 10-60min ahead to starting notifications to the server. Another idea would be to also send email reminders before the events/calls about 60min or so before the calls/events. The daily discord meetings could probably just utilize the discord bot and calendar invites. The external events/workshops could most benefit from those email reminders, calendar invites and also the discord bot reminders as well. Both of these reminders should happen automatically as folks have either subscribed to the calendar or are currently on discord.

Here is an open source community example (without the visual calendar):https://dagger.io/events

ALRubinger commented 1 year ago

@ALRubinger to decompose into tasks and perhaps phases w/ @dayhaysoos

ALRubinger commented 1 year ago

AIs for @dayhaysoos:

ALRubinger commented 6 months ago

Done on https://developer.tbd.website/community