Dev Meeting Notes - lumen-org/LumenReact GitHub Wiki

2020-09-30

Topics

  • short overview of standard plot functionality
  • possible goals for future
  • clarify data flow in backend and front end.
  • restructure specifications to be more flexible?
  • ids in backend (models and dimensions (for e.g. differential marginal plots)

2020-07-31

Topics to talk about

  • Glossary: is it accurate and are the terms well defined? Are there things missing?
  • Future pci graph: when is it planned to be included again? Other graphical representation of that might use a similar layout?
  • what should our rnd wrapper do? Like what should it do?
  • How to properly use the intermediate models?

2020-06-24

action items

  • PL Different visualization for specification -> User stories (Ask Laines for more details). PL: for now I cannot think of anything particular. But LS says it wouldn't be hard to add such a thing later in the architecture.
  • PL More user stories: so far, they were helpful and easy understandable
  • PL Check whether model training with pci graph works (not super urgent, just nice to see if the backend query would work)
  • SB Create page for glossary and start adding terms
  • SB create architectural diagram
  • all Meet again in person on the July, 15th

2020-05-27

action items

  • PL add architectural image and data flow image of current lumen version to wiki
  • PL adds a user story explaining why we need global dimensions
  • PL adds user stories that illustrate and explain the n:m relations in the ER-diagram
  • somebody draws an ER diagram and adds it to the wiki
  • KL/LS create a new board for the user stories
  • we meet again on June 25th

2020-05-20

action items

  • PL create wiki page for meeting notes
  • PL send links to documentation about API to others
  • SB finds a way for neat documentation generation in the fashion of readthedocs and sphinx
  • everybody lets PL know what they need to work efficiently
  • we meet 05/27 11am at FMI

information about API documentation

  • I added a wiki page about the API: https://github.com/lumen-org/LumenReact/wiki/PQL-API. I think eventually this should be part of our generated documentation (see action item of SB above). Let's keep it consistent and at one place.
  • other than that there is a couple of places where you can see how query (that is, a JSON object) is generated and send as POST request to the back end:
  • js/app/RemoteModelling.js: the member function essentially represent the queries that are possible. In each of the member functions there is a call to PQL.toJSON.<something> that converts/creates the JSON for the query to the backend.
  • js/app/PQL.js: it contains explicit conversion functions to generate the JSON necessary for queries to the backend. It also interesting as it has definitions for Fields (that is in our new terminology: Dimensions), FieldUsagses (DimensionUsages), and so on

content

Architecture

  • the current layout is just one way to interact with a model and one way of visualizations
  • in the future we want to implement different ones
  • the architecture you build should take this into consideration!
  • specifically that means:
    • The schema is just one interactable/widget that provides fields to drag / that characterizes the model
      • another one is for example the pairwise independence graph
      • another one is the details view of a model
    • the specification is just one tab to specify one type of visualization
      • another one is the PPC (posterior predictive check) tab that that i made
    • the canvas is just one container to hold visualizations of the model
      • in a sense the graph depiction is another view that shows a visualization of the graph
  • lets implement it in a way that makes rearrangement of components easy. Philipps understanding is that this sort of comes for free with react.

business logic

  • next big step is to transfer the useful parts of the old frontend to LumenReact
    • on step of this is to implement important types and classes
      • from Lumen:PQL.js.
      • Field (-> rename to Dimension): with name, dataType, domain, extent, varType, ..
      • FieldUsages: It is important to understand the difference to Fields. There is documentation about it. check it out :)
      • Domains
      • Model

things to implement next (as a mental note for our wednesday meeting)

  • implement spec and vis for Posterior Predictive Checks (PPCs)
  • implement DetailsView for a Model: concise information about modeltype, number of dimensions, number of data observations, ...
⚠️ **GitHub.com Fallback** ⚠️