Giter VIP home page Giter VIP logo

Comments (13)

josevalim avatar josevalim commented on August 14, 2024 1

Sorry, the heir is from the table to the process. Everything else is perfect. :) Should we make the display of ETS tables opt-in or opt-out? Probably opt-in to avoid initial clutter?

from kino.

josevalim avatar josevalim commented on August 14, 2024

This looks nice!

Two questions:

  1. how can both processes be associated to an ETS table? Usually we have one as owner? Is that the heir?
  2. maybe the table should be inside the process box?

You can also try it out in a Registry to see how it looks, as it has two ETS tables.

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

Thanks!

  1. Correct. The solid line to the ETS table is the owning process and the dotted line is the heir process.
  2. good idea....I didn't even think about that. Do you picture it using Mermaid subgraphs?

from kino.

josevalim avatar josevalim commented on August 14, 2024

Correct. The solid line to the ETS table is the owning process and the dotted line is the heir process.

I would invert the arrow then (perhaps annotate it with (heir) if possible.

good idea....I didn't even think about that. Do you picture it using Mermaid subgraphs?

That would be the idea but I am not sure if it is better in practice.

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

Sounds good. I'll put together a couple hard coded mocks and post them here with which route we want to go.

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

Here are some hardcoded Mermaid diagrams for how we can render this:

Diagram without subgraph:
image

Diagram with subgraph:
image

We can also drop the arrows all together for ETS tables and label both owner and heir to be explicit
image

Thoughts?

from kino.

josevalim avatar josevalim commented on August 14, 2024

I think the original one is less cluttered. I would only add an arrow to heir, but pointing to the process instead. What are your thoughts? Any thoughts @hugobarauna?

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

When the direction of the ETS owner edge changes, Mermaid shuffles the graph in a not so intuitive way:

image

from kino.

hugobarauna avatar hugobarauna commented on August 14, 2024

I think the original one is less cluttered. I would only add an arrow to heir, but pointing to the process instead. What are your thoughts? Any thoughts @hugobarauna?

I think the original one is less cluttered.

Agree, without subgraphs.

I would only add an arrow to heir

From an educational point of view, maybe adding both "heir" and "owner" labels is a good direction.

For example, before that discussion, I didn't know an ETS table could have a relationship with two processes; I thought it was only related to one process. I just learned about the "heir" thing.

So, for someone like me (who is learning about ETS), if the diagram shows both labels, it can help me understand that an ETS table can have a relationship with two processes, one of which is the owner and the other the heir.

I'd keep both labels.

Regarding the arrows, the supervision diagram the way it is already has some implied semantics:

  • an arrow from process A pointing to process B means that A supervises B
  • a dotted line between two processes means they're linked (right? 🤔)

So, maybe we should use a different line from those two to imply a new semantic. Maybe just a simple line without arrows but with the "owner" or "heir" label.

from kino.

josevalim avatar josevalim commented on August 14, 2024

I would only add an arrow to heir

Sorry, I was not clear. What I meant to say is that I would add an arrow to heir in addition to the label. We should have arrows and labels in both. The reason I like the arrow in the heir case is because the "inheritance" happens by literally sending a message which transfers the table to the heir. But before the owner dies, nothing ever happens. The arrow in ownership is also important to say who owns who. For someone who is new, those relationships may not be clear, so I would emphasize them with arrows.

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

I think I got it lol. Reread all the comments a couple times and I'm pretty sure this is what you are both looking for (I also added the table access inside the DB diagram):

image

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

Sounds good. Pretty sure I have everything as discussed in PR #432

from kino.

akoutmos avatar akoutmos commented on August 14, 2024

Closing this as #432 was merged.

from kino.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.