Logbook group 8
This is the logbook of PRE2020 3 Group8
Meeting Notes
Week 1
Meeting Monday 1 February
Topics:
- Introducing ourselves to group
- Figuring out how wiki works
- Discussion of ideas, organization
- Create GitHub repository
- Create Discord server for communication
- Next meeting: Thursday 4 February 2021
Done
- All: meeting (70 min) (Emi took notes: [1])
Do for next time:
- Search for literature, read a bit -> figure out what feasible, what already done (State of Art), what is new about our idea
- [optionally] write down ideas, summaries, edit wiki, etc.
Week 2
The wiki was down for most of the week
Meeting 11 February
Main decisions:
- We are going to narrow the variables that will be recorded down. Emi and Fanni are deciding which information needs to be gathered and how it should be presented back to users.Having the users decide on which variables to track made it difficult to research how people could be motivated,as most scientific studies focus on motivation in a very specific context.
- Edwin and Lulof are going to do literature research how to create an anthropomorphized interface.
- Morris is still researching the GUI.
Carnival Holiday
Meeting 15 February
Only with software subteam (Edwin, Lulof & Morris)
Agenda
- Current state:
- Psychology team decides what data to track and how to give feedback based on it.
- Need at least a database.
- Need at least a GUI.
- Decided that try to increase user-engagement and perceived social presence via anthropomorphism.
- Discuss literature research
- Mixed results on what does and what does not work.
- Responses that take context into account seem to work significantly.
- Decide how to continue
- More research?
- Make programming plan?
- Individual tasks and deadlines.
- Inform psychology team on results of meeting.
Minutes
- Extensive discussion of literature.
- Graphs may provide better insight that a textual description.
- We keep the restricted input. Since users need to input the same data every day, it does not make sense to ask for complete sentences every day.
- We will focus on natural language generation.
- Whether we will use GANs or other architectures requires more background research.
- We will explain the output in a way that is not the same every day.
- We may accompany the output with graphs and numeric data. Perhaps we could generate a textual description of the data presented.
- Morris is playing around with the Kivy framework, to figure out what it can do. It appears promising and efficient.
- Planning:
- Week 3: Lulof -> Create design for communication between components. This will be a UML class diagram.
- Week 3: Edwin & Lulof -> read more on Natural Language Generation. Experiment where possible.
Week 3
Meeting 24 February 2021
Present: Lulof & Edwin
- Discuss of class diagram of communication components, managing questions and answers, output rules, etc.
- Discuss challenges RNN.
Plans:
- Start with question generating part while also reading Dialogue generation literature.
- Code sessions:
- Tuesday 13:30 ~ 17:00
- Thursday 10:00 ~12:00 (One time: Friday 24 February 10:00 ~ 12:00)
- Use unittest (Python)
- Make installable package
Meeting 25 February 2021
Present: everyone
- Lulof and Edwin worked on the backend design
- Morris worked on the GUI. He already got a textbox, shapes (smiley) and buttons
- Fanni and Emi described user cases, with specific characters, and extended the Wiki
- User-centered Design
- Economical perspective
- Problem statement and objectives
Do for next time:
- Read each others work (Wiki, class diagram, etc)
Meeting with teacher:
- The wiki uses outdated software, that is why many things broke and are still broken.
- No strict set of requirements. Present what you know and what you have. Important to reflect and communicate. Technical part must be aligned well with user analysis part. Really need to solve a problem.
- Do use academic style argumentation.
- Ensure that things come together at the end. Prevent people specializing and forgetting to communicate.
- Time sheets are not required. But an overview of who did what is useful for the teachers.
- Minutes especially useful for decisions and recording who did what, not required by teachers.
- It is possible to customize the style (font, fontsize, etc.) of the wiki page.
Week 4
Meeting 4 March 2021
Present: everyone
- Edwin and Lulof have been working on the software:
- Edwin is working on the question scheduling, he will try to do it alone
- Lulof implemented a simple SQLite database
- For sleep cycle: need 11 questions, too many to demand for people. Can probably give option to skip a few. Need extra object that GUI can send to back-end to tell that the question is cancelled.
- The GUI may need an hourglass. Giving rewards are important to motivate people. Emi did literature research that advised this. Such as collecting XP, level up and this gives some visual rewards (e.g. new smileys, background decorations, e.g.). Gamification. Does not need to be hard to implement.
- Morris: seems feasible.
- Fanni: it is unique because it combines:
- Behavioral mechanisms: asked for feedback etc.
- Gamification and motivational aspects.
- GUI:
- now it looks like a chat between the user and the agent, in which text and images can be send.
- It is possible to scroll back in the history.
- Sliders and multiple choice questions are in.
- Also minor animations.
With teacher
- There is an off-the-shelf voice recognition library for Python.
- Morris demonstrated user interface.
- The implementation of the rules is important. They should give feedback that reflects whether things are positive or negative. Synchronize with he face.
- Do but technical details on the wiki. For code GitHub is good enough. Not too much details, hard for the reader to keep track of the main points of the wiki.
- Can always discard stuff from wiki later, but don't do thing just to put it on the wiki.
- Maybe add the class diagram In an appendix.
- During exam weeks, we got time to finish up the wiki.
- Presentation free to do what you want. Video / demo / presentation. What was problem, how approached and implemented.
- Not yet known if final presentation is on Uni, online live or a prerecorded video. A screen recording of a Teams meeting will do. A real polished video is allowed but not required. They just want to know if you mixed user-needs with tech. Can add a bit of documentation as well.
Post-tutor meeting
- Additional meeting on Monday 16:30 (and still on Thursday 13:30)
- The teacher was probably confusing a class diagram with a use-case diagram or a manual.
- We will call the avatar Motus.
Week 5
Meeting 08 March 2021
- The simplified syntax for rules has been introduced (by Lulof), the team thinks it does indeed make the job easier for domain specialists.
- GUI (by Morris):
- Motus now looks at cursor and blinks. It seems much livier.
- There is a progress bar added, can level up and unlock new backgrounds.
- Colours improved, slider has number.
- Settings screen: theme, max amount of questions a day.
- Emi's ideas:
- would be helpful if Motus refers to the user by their name. Literature promote it. Just asking it the first time?
- Upgrading Motus itself also engages users a lot. Let Motus evolve
- Lulof realized he forgot about adding the Evaluation to rules.
- Possible GUI extensions:
- Overview of unlocked backgrounds
- Undo button?
- Makes changes to Motus default, but also disableable.
- Discussed the paper Using Health Chatbots for Behavior Change: A Mapping Study a bit.
- Fanni: how expensive to set up a server and website:
- Probably depends on the scale, amount of users and bandwidth needed
- Could look up what companies offer?
- Trying to compute how soon a startup would become profitable. Fanni is working on abussiness model.
- Meeting with Edwin at 15:15 on Wednesday
Meeting 10 March 2021
Present: Edwin and Lulof
- Discuss with others whether questions should be able to be cancelled/snoozed, or should reoccur.
- The design of the question-generation process has been revised together.
Meeting 11 March 2021
Present: All group members
- Updates from all group members about the conducted work from the past week.
- Software team: Decided about what if people don't answer? If people don't answer the question, just discard it and come back to the question.
- Psychology team: Fanni showed the economical analysis she did for the system, discussed it together. Emi: More theoretical background about design parts for anthropomorphism, the advantage of chatbots... Also: The papers are collected about average values of mental health/diet/exercising (and more) and are converted to a stata-dataset that is usable as a reference point.
- Also include in problem statement: From papers, it can be stated that many people don't seek for help when they have some problems. An app does not judge and could serve as a nice 'starting point' for people who do not want to seek out for human help.
- It is also decided that there is not going to be a lot of syntax checking done (of the rules), because it will take too much time that can be spent on better things.
- Design: Structure of code is changed, and some of the discussion points of the meeting of 09-03 are implemented in the design (username + moving eyes + smiling etc.)
- New meeting planned: Monday --> 16:30 //
- Questions for tutor: Do we need to implement the rules? More information about the final presentation?
Meeting with Supervisor 11 March 2021
- About final presentation
Most probably, there will be two sessions in which the group will present. In this session, you get 20 minutes as a group to present your idea in any way you like (presentation, video, questions, prototype-showing). Half of the groups on Monday, and the other half on Thursday.
- New agenda point: Discuss about the kind of presentation (video/presentation, video has preferences over a live-demo). In terms of content, we are free to do whatever we want.
TO DO:
- Impact section: Write about the things that are out of the scope, but that can be added to the system to make it even better if there is enough time (smartwatch connection, GPS, stappenteller...).
- Quality of Life of end-user + Ethical parts is also VERY important.
- Broaden the horizon --> Talk about ethical threats, and state out of the scope things.
- Serious gaming --> Write about this. Gamification etc.
- Is the app only increasing in levels, but can it also decrease? We could substantiate whether the question is good or bad, and then decide if the level bar should be decrease/increase.
- POSSIBLE ETHICAL PARTS NEED TO BE CONSIDERED!!!
Week 6
First Meeting 15 March 2021 (10:00)
Present: Edwin, Morris, Lulof
Agenda
- I (Lulof) made a demo for multiprocessing
- Do we give messages an ID, as to synchronize them? Or will we use a more opportunistic approach -> just handle whatever messages come in. The former makes it possible to check for questions answered twice, asked twice, etc. The latter is much less error-prone and simpler, but may lead to unintended messages becoming accepted.
- I am currently starting 3 processes, but we could start only 2 new ones and continue the existing process as one of the three. I think the latter is slightly more confusing and memory efficient.
- The programming is really boring and uneducative at this moment, at least from my (Lulof) perspective. Only things I have done before. Life is short, there is much to learn and I am wasting my time. I do not mean to be egoistic.
Minutes
- We send a mail with our preferred timeslot (1 April) to the teachers.
- We keep spawning 3 new processes, this is easier to read.
- Keep rules as simple as possible, write on wiki that ideally extend with a GUI for creating rules.
- Keep message checking as simple as possible:
- Write on wiki that can check if answers correspond with questions.
- Now we will ask questions once: discard it from the queued questions after asking.
- Regard answers as entries to database: do not check if they correspond to an asked question.
- We will try to finish the question generator on Wednesday (Lulof and Edwin). 15:15.
Second Meeting 15 March 2021 (16:30)
Present: Fanni, Morris, Lulof, Edwin, (Emi has no WiFi)
Minutes
- Emmi wrote a lot about ethics.
- Fanni finished the cash flow calculations. It will become profitable in December. There is a histogram now, but a trendline is still WIP.
- Ethics and privacy part now mostly done. Also Fanni's public data analysis is on the wiki.
- Probably most practical if Emi and Fanni do the voiceover, rather than editing many different recordings.
- We will try to get the backend sort of working before the meeting on Thursday.
- Morris is working on adding things to Motus, but Bezier curves are too clumpsy for that, working on getting it to work with SVGs.
Meeting 18 March 2021 (13:30)
Pre-teacher-joined-meeting
- Edwin working on the RecurringQuestionSet, slow progress.
- Lulof finished up most of the rules and the output-generating process is mostly done.
- Part of the transscript is already written, esp for the GUI.
- Morris will record a demo
- Emi will do a voiceover
- A few problems with importing the GUI from the startup script.
- Tomorrow morning Lulof and Edwin will try to get the RecurringQuestionSet working.
- Software in Video:
- 5 min probably more than enough
- We could show similar diagram as the 'project_architecture_v1' (But a bit updated)
- Motus now can have a breathing body shape, a hat, and a mustache.
With tutor
- Timeslot division is a bit mysterious, but we can probably do it on Thursday
- Add pictures to the wiki!
- Emi did add writing on ethical threats, privacy issues, serious gaming.
- Guidelines what Motus should and should not do, also keeping potential extensions in account.
- Make privacy issues concrete for specific case (we already did).
- Fanni's dataset evaluation -> what does it mean/how does it connect?
- Mental health issues, most people don't ask for help, this data helps find evidence for the need of the app
- Make it more explicit which questions are answered by the data evaluation
- Now it appears as just arbitrary detailed data to a reader.
- Also add a conclusion, need to connect to rest of meeting.
- Cash flow:
- If referring people further from our app -> could earn some money from that.
- Really needed -> "I consider as extra". Bonus if got the time, can leave out if insufficient time.
- Got ~1 week left for new content.
- Would be strong if can get some convincing evidence -> e.g. related real projects.
- We are allowed to do it, relevant enough. Esp if can show some graph.
- Must be realistic, not wild fiction.
- Backend:
- Finalize what already doing, try do that well, rather than adding things you cannot finish.
- If AI too much work, explain how could be improved. Could do theoretical as well.
- "7 weeks with two programmers is simply too short"
- Think bout things did achieve and how to connect
- Better reflect on the meaning of the system, USE view, rather than process reflection.
- Write Future work session
After tutor
- Recommendation Emi to Morris: read wiki in depth about Motus specification, add images.
- Should add some quick and dirty output formatting to OutputMessage.
- They are going to build a 3-floor underground building for some quantum-computing research.
Planning
- Next week (week 7) -> last week before presentation.
- Work on presentation and finish up software.
- Lulof will work on some diagrams for the video as soon as possible.
- Would be nice if everyone can review script, will be shared this weekend.
Week 7
Meeting 22 March 2021 (16:30)
- Short meeting with Morris, Edwin and Lulof
- Discussed a few technical details (in particular a typo in type hinting that caused a lot of confusion)
Meeting 25 March 2021 (13:30)
Whole group
- Edwin will add some about future work to the presentation
- The powerpoint for the presentation is partially made.
- Lulof and Edwin are tiring/boring out of working on the back-end, nothing seems to be gained by finishing it.
- The teacher does not seem to care about it either.
- We are going to stop with the back-end, and focus on the wiki instead.
- Discussed how to content of Nudge (Thaler & Sunstein (2008)) fit into the Motis software.
- Edwin will continue working on possible extensions.
With tutor
- It is OK to prerecord and fancy editing.
- They will grade on technical depth, user perspective and USE stuff, end-user, enterprise, societal.
- We may upload it to YouTube in advance
- We should be visible when answering questions.
- Fine according to the teacher if not round up backend
- Need explain that real employment is much longer than shown in the demo
- Otherwise false expression
- Future work -> what others could continue to do.
- We can promise to finish things we did not finish in the Wiki -> they check on 8 April, can pretend it continues after 8 April.
- Don't make any promises in future work, but tell how should continue.
- Can improve more on current tech than on reflection, we already got a lot of it.
- Teachers won't install it
- Explain way how and why approached the software.
Post-tutor
- It seemed they are never going to install it.
- We still need to add images to the wiki.
- We need to write GUI part.
- Edwin please finish text for video ASAP
- Better if not too many different voices in the video, would be messier. Emi has good hardware for it.
- We will meet again Monday
- TODO Lulof:
- Paragraph on questions in config.
- Paragraph GUI for config.
- Images from presentation in wiki.
- Write about libertarian paternalism and finish reading book Nudge.
- Putting the demo early in the video helps to grab audience's attention.
- A small teaser/trailer at the beginning could be helpful as well.
- Morris will also prioritize the wiki for the next week.
Week 8
Meeting Monday 29 March
- Both Edwin and Lulof crashed while cycling this weekend.
- The powerpoint is mostly done. Only recording still needs to be done.
- We will add the bar chart of the economical part to the presentation.
- Emi will record it tomorrow morning.
- Fanni will work on the animations today.
- During the presentation, we can send the link so that people can see better quality version,
but show it via the Teams stream in the meantime for sure.
- We need to hand in a peer review. It is a zero-sum game: pluses for someone are minuses for someone else.
- We agreed to give everyone the same grade, Emi sent the mail.
Meeting Monday 2 April
- There are still some "TODO", "*image" and "....." in the wiki.
- Morris almost finished the part of the GUI, but still WIP.
- The link to the work-in-progress page has been removed from the wiki, but is in the Discord link-list.
- The deadline is 8 April (At least we think, it isn't written down anywhere).
Task division:
- Emi:
- Resolve the TODOs in "State-of-the-art" chapter.
- Resolve % our system does this by ……….. in Design and Approach/Competition.
- Fanni:
- Help with "state-of-the-art" section.
- Edwin:
- Future work of software section.
- Lulof:
- Add work section to "State-of-the-art" chapter.
- Maybe add more about liberal paternalism if manage with time.
- Morris:
- Finish section on GUI.
- All:
- Read wiki and fix whatever you find.
Contribution logbooks
Lulof Logbook
Week 1
- Update wiki page (abstract, logbook, etc.) [0.5h]
- Look up papers [1.5h]
- Read and summarize Li et al. (2016) [~5h:10min] --> Progress delayed due to issues with displaying math
- Visualize idea of organizing task division/software architecture [0.5h]
- Read NLP paper [2h]
- Meeting Friday [2:18]
- Read papers about GANs [6:40]
Week 2
- Meeting Monday [1h]
- Create this log [10 min]
- Work on user description, goals, fallacies and software milestones [1:50h]
- UML Use case diagram (30 min)
- Meeting Thursday [2h]
- Fixing wiki, starting literature research [1h]
- Literature research on anthropomorphism [6:00]
Carnival holiday
- Meeting Monday [1:17]
Week 3
- Class diagram for question production and storage [3:24]
- Update class diagram: add output process and update question process [2:21]
- Meeting with Edwin [~50 min]
- Large Thursday meeting [1:36]
- Friday coding session with Edwin (set up directories, Variable, create db file) [2:09]
- Sunday: work on database, functions to set it up and add variables (incl. testcases) [2:43]
Week 4
- Monday: implement remaining (i.e. most) database functions and DatabaseWriter [3:37]
- Wednesday: Meeting with Edwin, tweak DatabaseWriter, rethink design of InsertCommand, implement InserCommand. [2:27]
- Thursday: Meeting with whole team and teacher. [~1:50]
- Thursday: think about the implementation of Rules, look up if datasets are available, describe software on wiki. [1:30 ~ 2:30]
- Friday: working on Rule specification, some idea exchange with Edwin [2:11]
- Sunday: work on implementing Rules (but very tired and sleepy, didn't get far) [~2:30]
Week 5
- Monday: meeting with whole group [1:06h]
- Monday: work on implementing and designing Rules software [1:30]
- Tuesday: Work on implementing Rule-quantifier-substitution [~2:50-3h]
- Wednesday: revise question process design with Edwin and debug Rule-quantifier-substitution [2:09]
- Thursday: Meeting with whole group and teacher [1:24]
- Friday: extend rules with 'evaluation' (on wiki and in code), work on testing and debugging RuleExpressions [2:04]
Week 6
- Monday: work on multiprocessing, discuss with Morris and Edwin, make demo and startup script [2:20]
- Monday: work on RuleExpressions and implement messages [1:01]
- Monday afternoon: work on rules and meeting from 16:30-17:06 [~2h]
- Tuesday morning: finish up Rule class, work on function to put rule creation together [2:02]
- Tuesday afternoon: add Rule and Variable loading from config file to startup, sketch OutputInvoker [2:15]
- Wednesday afternoon: Meeting with Edwin, finish most of OutputInvoker [1:57]
- Thursday morning: Test OutputInvoker further, fix not-enough-data-in-db for Rule, start with QuestionCommunicator, meet with Edwin [2:14]
- Thurday afternoon meeting [1:30]
- Friday morning: work mostly on QuestionCommunicator, also make changes in many related files, help Edwin [2:15] (+ [~0:12] afternoon)
- Firday evening: finish up QuestionCommunicator, fix some other things [~1-1:30h]
Week 7
- Monday: meeting, working on wiki, helping Edwin, making diagram [>3h]
- Tuesday: create new use-case diagram and add software explanation to script [~1 - 1:30]
- Wednesday: Help debugging Edwin, quit when it became too stressful [1:30]
- Thursday: Meeting with everyone [1:37]
- Thursday afternoon: Work on software documentation wiki [1:15]
- Friday afternoon: work on software description wiki, update use case diagram [0:41]
- Saturday evening: work on powerpoint, video script and a little on wiki [2:08]
Week 8
- Monday: group meeting, discussion last things [0:48]
- Tuesday evening: record implementation part of video. [~0:40min-1h]
- Thursday morning: Cut and divide my recording over related slides [~25 min]
- Thursday afternoon: presentation session [2:10]
- Friday afternoon: Meeting about wiki [0:55]
Week 9
- Wednesday afternoon: work on wiki [~2-2:30]
- Thursday afternoon: add final tweaks and fixes to wiki [>1h]
Emi Logbook
Week 1
- Look up papers [1h]
- Update wiki page (conceptualized idea, problem statement + objections) [0.5h]
- Read and summarize paper: A note of caution regarding anthropomorphism in HCI agents [1h]
- Conceptualization of a Personalized eCoach for Wellness Promotion, read * summarize [1.5h]
- Meeting Friday with group [2.25h]
- Meeting Sunday with Fanni about project definition, approach, milestones, planning [2.5h]
- Work on proposal – in overleaf/word, since the wiki went down - [1h]
Week 2
- Read papers [2h]
- Meeting with tutor on Monday [0.5h]
- Meeting with tutor on Thursday [0.5h]
- Meeting with group on Monday [0.5h]
- Meeting with group on Thursday [1.5h]
- Read & summarize papers for problem statement [2.5]
- Start looking for papers for design/interface [1h]
Carnival 'Holiday'
- Meeting for USE-part with Fanni [1.5h]
- Summarize Meeting USE-part [1h]
Week 3
- Work on theoretical design part [2h]
- Defining users with Fanni [2h]
- Write problem statement for wiki from draft version [1h]
- Meeting with group [1h]
- Meeting with tutor [0.5h]
- Meeting with Fanni about the right questions to ask [2h]
Week 4
- Monday + Tuesday: Extensive literature research for design part [3h]
- Wednesday: Write wikipage design part [2h]
- Tuesday: Write wikipage chatbots [1h]
- Tuesday: User scenario's on wiki [1h]
- Thursday: Meeting with Group [2h]
- Meeting with Fanni [1h]
Week 5
- Meeting with Fanni about final presentation [1h]
- Write text for final presentation for the introduction/prototype part [1.5h]
- Read papers about ethical recommendations [2.5h]
- Write Section "Ethical Recommendations Motis must meet" [3h]
- Meeting with group [1.5h]
Week 6
- Meeting with Fanni about final presentation [2.5h]
- Complete the sections 'Chatbots', 'ethical regulations Motis must meet', 'user analysis'
- Meeting with group [1.5h]
Week 7
- Work on final presentation [2.5h]
- Record final presentation first trial [0.5h]
- Meeting with group [1.5h]
- Work on finalizing wiki [1h]
Week 8
- Final presentations [2.5h]
- Work on final presentation [2h]
- Record final presentation [1h]
- Make video for final presentation [1.5h]
- Meeting with group [1h]
Week 9
- Finalizing the Wiki
Fanni Logbook
Week 1
- Look up papers [1h]
- Read and summarize papers [1.5]
- Meeting Friday with group [2.25h]
- Meeting Sunday with Emi about project definition // approach // milestones // planning [2.5h]
- Work on economical milestones [1h]
Week 2
- Read papers for stakeholder analysis [3h]
- Meeting with tutor on Monday [0.5h]
- Meeting with tutor on Thursday [0.5h]
- Meeting with group on Monday [0.5h]
- Meeting with group on Thursday [1.5h]
- Summarize papers for stakeholder analysis [1h]
- Find + summarize papers for the right “Questions to ask” [2h]
Holiday
- Meeting for USE-part with Emi [1.5h]
- Work on outline for the economical value [1h]
Week 3
- Stakeholder analysis [2h]
- Define users with Emi [2h]
- Make user descriptions + persona’s and define target audience [2h]
- Meeting with tutor [0.5h]
- Meeting with group [1h]
- Meeting with Emi about the right questions to ask [2h]
Week 4
- Work on Economical part [4h]
- Meeting with Emi [1h]
- Meeting with group [2h]
Week 5
- Meeting with Emi (presentation) [1h]
- Meeting with group [1.5h]
- Stakeholder analysis [4h]
Edwin Logbook
Week 1
- Meeting Monday [1.25h]
- Search for papers
- Meeting Friday [2.25h]
- Read summaries made on GAN papers
Week 2
- Meeting with tutor on Monday [0.5h]
- Meeting with tutor on Thursday [0.5h]
- Meeting with group on Monday [0.5h]
- Meeting with group on Thursday [1.5h]
- Read papers on NLG
Holiday
- Meeting Monday software team [1.25h]
Week 3
- Meeting with Lulof [1h]
- Meeting with tutor [0.5h]
- Meeting with group [1h]
- Friday coding session with Lulof (set up software correctly, Question) [2h]
Week 4
- Wednesday software meeting with Lulof [2h]
- Thursday meeting with the whole groupe before and after the tutor meeting [1.5h]
- Thursday tutor meeting [0.5h]
- Friday software meeting with Lulof [2h]
Week 5