Lists and variables are confused?

Just write out the workflow here in a post, it will really help to make sense of the app and the blocks

You have almost written it already:

First of all, check your members. You can't start a reunion without members :). (usually the app starts with a list of members. If some changes occur to that list make sure to update it!). Second, make a reunion plan by adding topics you're going to discuss and time specified for each topic. You can also edit old topics. Finally start a reunion plan by choosing one and marking presence. Then for each topic, put in order the speakers for that topic and the app will automatically split the time allowed for that topic. You may add, deduct or skip during this process. At the end of each topic you may insert votes. When each reunion is finished, a file with a small summary will be created.

There is one in the how to use part of the app

I have to ask some questions to understand the proper data model for this app…

Are all the speeches given in one big room, so there will be no overlapping of speeches as would happen in a conference center with multiple rooms?

Do all the speeches on one topic need to happen immediately, one after another, or can they be scattered during the day?

Will there be lunch and potty breaks?

Who votes on what (Speakers, or speeches?)
Each member votes on speeches?
How many votes does each member get?

How are votes registered?

  • Through the organizer, through his device and by word of mouth with the members, or
  • Individually by members, through a central data base server?

Your app has a section on Reunions.
That’s not mentioned in the How to Use paragraph.
Can a member attend multiple Reunions?
does each Reunion have its own set of speeches, or can they overlap?

Thank you so much for asking. This is my bad for not explaining that part. So I started working on this à long time ago before the pandemic so it was made to help organize real life meetings for a group to evaluate current and future events and help protocol chief keep everything on time. He’d prepare the plan for the reunion and add lunch breaks or whatever he wants as a topic. Then they discuss each topic. There might be some overlapping but that’s why the chronometer is adjustable. It is a one part meeting not scattered. If that topic was an already done event members get to vote on it from 0 to 10 each member 1 vote only. Each member named will say outloud their vote and during all this time this app will only be held by 1 person the protocol chief. For the reunions section you make a new plan (or edit an old one) and then type in the topics and the time specified for each one then it is automatically saved. I hope that answers all.

This is still ambiguous.

A vote is what?

  • A numerical score assigned by each member to the idea for a topic?
  • A numerical score assigned to a particular speech on a topic?
  • A selection of which speech on a topic was the best?
  • A yes/no vote on whether or not that is a good topic to include?

The vote if you’ve seen the code is a number from 0 to 10 by 0.5 that each member chooses as I said in the comment. It can be 5.5 7.5 but not 5.6 or 7.1. The votes are meant to evaluate certain topics and how successful they were/how enjoyable they were according to each member

So the protocol chief works for the hall, or does he work for the group of people that wants to hold multiple reunions?

He is also concidered a member so yes he works for the group of people that want to hold the reunions. Let me just clarify there’s 1 meeting at a time!

Here’s my view of the data model …

The root of all data structures is the set of Reunions.

A Reunion has:

  • a reunion name (text) (“SuperHeroes 2020”)
  • a list of members (text) (“Superman, Batman, Spiderman, Green Arrow, Star Girl”)
  • a start and end time (datetimes) (5/17/2020 9 AM- 5/18/2020 5 PM)
  • a list of Topics (text) (“Privacy, Costumes, Real Estate, Nemeses”)
  • a list of Speeches (see below)

A Speech has

  • a speech title (“Mask or Glasses?”)
  • a parent Reunion (text) (“SuperHeroes 2020”)
  • a parent Topic in that Reunion (text) (“Privacy”)
  • a speaker chosen from the parent Reunion’s members (text) (Superman)
  • a start and end time (within the Reunion and not overlapping any other Speech in that Reunion) (5/17/2020 9 AM - 5/17/2020 10 AM)
  • a list of attendees chosen from the Reunion members list (Batman, Spiderman, SuperGirl)
  • a list of votes (see below)

A Vote has

  • a parent Reunion (“SuperHeroes 2020”)
  • a parent Topic in that Reunion (“Privacy”)
  • a parent Speech in that Topic in that Reunion (“Mask or Glasses?”)
  • a voting Member Attendee in that Speech (SuperGirl)
  • a numerical score (0-10 by halves) (7.5)

This looks like 4 tables if you use a table based approach.

Here is a bundle of table filters and a very nice group-by value procedure …

select_where_equijoin.aia (9.0 KB) select_where_sample1.aia (10.0 KB) select_where_sample2.aia (7.3 KB) SUM_test

Can you explain what these blocks serve I’m a bit confused and overwhelmed xD

The blocks came from this project and doc …

This sample project is a starter project to learn about rows and columns in tables (lists of lists).

I see from the blocks in your project you have not tied your data together using either tables or dictionaries, only lists. Tables and dictionaries are like the bones and cartilage of your data. Without them, your data just lays in a puddle.

Besides the sample app, see the How to Work With Lists article link at FAQ Section: Lists

What does this exactly solve? Im a bit new to this method and I hope you can bear with me for a bit… It’s a sort of way to organize data? And hopefully avoid any problems?

Your app requirements are complex enough to require tracking the links between your pieces of data through a data model.

A data model is like a blueprint for a builder.
A blueprint from an architect helps the builder understand how the parts of a project will fit together.
image
image

If you have worked with a spreadsheet like Excel or Google Sheets, you are a step closer to understanding the relational data model and its fundamental ideas of tying together tables with primary and foreign keys.
Search for Introduction to SQL
to see the powerful things that can be done with tables if you use SQL (extensions available, not from me.)

Im getting a better idea… Still a bit foggy but are you talking about work inside or outside of the app or both? I get the data model is something outside of the app but then you sent code about a table and I don’t know what tbh xD

The code I gave you may have been premature, assuming you would be using tables instead of dictionaries for your project.

At this phase of my (and your) understanding of the project,
what do you think of the sample data model and its sample data (Superheroes 2020) ?

A data model is an important tool early in a project, to make sure you are building the right thing.

You don’t want to build a garden string trimmer, only to learn later from the customer they wanted you to build a helicopter.

I still have no idea what you're talking about... I've been reading and trying to understand what you're sending me but I just can't... I'm not a professional coder and not even close to being one. The only thing I think I got was that instead of creating a bunch of "initiate global value" you want to create 1 list/table that has all the variables? I don't know and I really hope you can make it as simple as possible.
As for the data model it is what I need and actually a bit more than what I had in mind: Here's what I had in mind now that you've given an example:

Unnecessary.

No. I'll explain in a bit.

Nothing. Absolutely nothing. Speeches are litterally just a chronometer for each member to talk. That's all. No need for titles. A speech is a window of time specified by dividing the time for a topic by members who want to speak. So all that I'll leave is:

You can't vote on speeches. Because it's less of a speech and more of an opinion/discussion. You give your opinion. others may comment on it but that's it. You don't vote it.
I hope this clarifies things a bit more. It is supposed to be a simple app. The more info and data there is the less easy and quick it is to use and it gets crowded too quickly.
Here's a quick summary of the app: Get a list of members, Create a reunion plan that has topics to discuss and time for each one then save the plan. When the meeting comes you open the plan and mark presence then choose speakers for each topic. The time for each speaker is the time specified for that topic divided by the number of speakers for that topic. You may tweak the time. When all speakers spoke, all present members get to vote on the "topic" if it's a finished task or project. Then on to the next topic. At the end, you get a text file with a small summary ( Presence, Topics, speakers, votes)

Can you show a small sample of that text file (using recognizeable sample names and topics )?

Reunion n23:
Date: 5/20/202
(Location added manually cuz it’s always last minute and a problem)
Present members:
Superman
Batman
SuperGirl
Absent members:
Spiderman
.
.
.
Topics:
Superheroes in 2020.
Mask or Glasses.
Superheroes visit a children’s hospital.
Superheroes rebuild a house.
Superheroes’ festival
.
Superheroes in 2020
(we leave some space to later on manually add notes and stuff outside of the app)


Mask or Glasses


Superheroes visit a children’s hospital

Final note (sum of votes divided by number of voters): 8.5


and so on… that’s it! I can add people who spoke in each topic… If needed but for now that’s all.

I notice on Screen1 of your app sample you had the Members list picker before the Reunions List Picker.

May I assume you plan on reusing this app for different groups of members, that will attend different reunions?

If so, the Reunions should be first, with the option to copy in members from old reunions?