-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update docs with guides and tutorials for blueprint #5641
Conversation
Size changes
|
6cfe1e8
to
dba9802
Compare
dba9802
to
315a488
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are some things I suggest fixing before merging but in general I think the content itself looks good. There are some bigger things I think we should address before the release but I'd be for a liberal approach to merging and then iterating rather than letting PRs linger too long.
There bigger things for me are:
High level organization
I'm not sure about the high level organization, i.e. what goes where. We originally set out to use the approach from https://documentation.divio.com/ with four types of documentation (tutorials, how-to guides, explanation, reference) but may have lost our way a bit over time.
Some pages feel quite long, which tends to make them harder to maintain. I wonder if that is because they are serving multiple purposes (e.g. both reference and how-to guide).
Missing pages
Reading through these pages it becomes clear we also a couple more pages such as:
- A reference page on available space views and visualizers
- A page about the conceptual model of "space views are deterministic views on data" -> "blueprint sets layout & local data transform". Should be placed under concepts and might be called something like "Blueprint and visualizers".
- A page about the heuristics
- A page about the execution model of the viewer (on each frame, query the blueprint database for what to draw, start drawing, where needed query the recording, etc)
- Probably most important, an overview page that orients the reader about how the pieces fit together (diagrams galore)
Related: we also need a blueprint section as part of the quick start guides.
Lacking context
These pages still mostly open assuming that the reader has the correct big picture concepts about what Rerun is in their mind, which is unlikely to be true for newcomers. There might be some reusable diagrams + orienting text snippet that we could sprinkle around to help new readers orient themselves.
Although the Rerun Viewer tries to do a reasonable job of using heuristics to automatically determine | ||
an appropriate layout given the data that you provide, there will always be situations where the heuristic |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have we established anywhere that heuristics run to automatically to determine an appropriate layout? This feels like a non obvious concept to start with and if we don't cover it elsewhere, perhaps it should be introduced here and even needs a page under "Configure the viewer"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What would go on that page other than the same statement made here: "the Rerun Viewer tries to do a reasonable job of using heuristics to automatically determine an appropriate layout given the data that you provide "
@@ -0,0 +1,389 @@ | |||
--- | |||
title: Blueprint API Tutorial |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure about this title and if it goes in the "How to Guide" section. We currently have the other tutorials under getting started so that might be a better place for this (closest analogy seems like the Logging data in Python/Rust/C++). Given that, the title should probably be something in the style of:
title: Blueprint API Tutorial | |
title: Controlling the viewer from code (Blueprint API) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that's a mouthful for the nav-bar
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should be careful about overly conflating the nav-bar organization and the names for the types of pages we create. The divio model doesn't dictate that we must organize the nav-bar exclusively by type of document.
This seems like too much to be a part of getting-started. And likewise, getting started is more than just tutorials.
|
||
After editing the viewer you may want to [save or share the blueprint](./rbl-files.md). | ||
|
||
## Configuring Layout and Contents |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This section starts to feel a bit like a reference which makes me wonder if the "How to Guides" section is the right place for this page at all. Also slightly worried this will be hard to keep up to date but perhaps it's hard to get around.
One suggestion would be to do something like list the things you can do and have a video showing a couple examples. Alternatively we could add a PR checkbox to update these videos on major UI updates or something like that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I'm generally against videos for that reason... they are going to rot. Those of us on linux aren't even positioned to produce the content or keep it up-to-date since we can't do video screencaps in the same style as the mac software. I don't have a great solution.
What
Checklist
main
build: app.rerun.ionightly
build: app.rerun.io