1 Creating a new program and sections overview
graph TD
MopMan_Core --> orgs
orgs --> event_series
orgs --> programs
programs --> sections
sections --> attendance
programs --> curriculum
curriculum --> readings
The relationship between the π₯ programs table and the π£ sections table.
The basic process of creating a new program is:
- Create your program in the π₯ programs table. (Ex: MAIA AISF ML Fall 2023)
- Add the corresponding sections to the program by creating and linking them in the π£ sections table (Ex: MAIA AISF ML Fall 2023 Section 4 β Gatlen)
- Link a curriculum + readings to the program. This process is detailed in Curriculum & Readings for Existing Programs
- For each section, create an event series in the π event_series table and link it. Fill out the events series (Future automation: creating an event series creates multiple events and links them automatically)
- From the π event_series table, create events in π
events for each meeting the section is going to have. Feel free to link each event with its corresponding curriculum for that day.
2 Creating π₯ programs
An example of a program may include MAIA AISF ML Fall 2023. Things typically not seen as programs, such as member meetings, are still considered a program under this paradigm β just one with an ever-evolving curriculum.
I feel creating a program is fairly self explanatory while looking at the fields in the π₯ programs table.
3 Adding π£ sections
A section is a mostly fixed group of people that follow a programβs curricula often at the same place and time. An example of a section may include MAIA AISF ML Fall 2023 Section 4 β Gatlen. Some programs may only have a single section, for example: the Iris member meeting only has one set group of people that meet at a particular time and place.
I feel creating a section is also somewhat self explanatory, with the exception of a few fields
- π name β Note that the name is a formula which names itself based on other properties of the record.
- #οΈβ£ section_i β Within a particular program, what arbitrary but unique index should it have?
- #οΈβ£ global_section_i β Among all programs being run at a given time, what arbitrary but unique index should it have? (ie: even if AISF ML Section 4 and AISF Gov Section 2 are from different programs, they must have different global indices.)
- slack_channel β The Slack channel which notifications concerning the section should be sent. (ex: #section-gatlen) The channel must already exist.
When the sections are completed, make sure that they are linked to a parent program.