Skip to content
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

(DOCSP-39540) Consolidate Partition-Based Sync page #3279

Merged

Conversation

dacharyc
Copy link
Collaborator

@dacharyc dacharyc commented May 29, 2024

Pull Request Info - SDK Docs Consolidation

Jira ticket: https://jira.mongodb.org/browse/DOCSP-39540

Staged Page

Page Source

Note for reviewer: I've intentionally omitted some of the information that is present on some of the source pages. There's a lot of discrepancy between SDK docs re: the write copy API to copy between sync and non-synced realms. Some SDKs say you can use it with Flexible Sync, others say it only works with PBS. I started to include it on the page, but then omitted it. I think we should probably only doc it on the "Configure and Open a Synced Realm" page if it supports Flexible Sync.

The other thing is - Java and .NET have sections about opening a realm online vs. offline. I originally started to add that to this page, but decided it's outside the scope of PBS - it just happens to use PBS examples. We already have examples on the "Configure and Open a Synced Realm" page about opening a realm offline, so I think that content should only live there.

PR Author Checklist

Before requesting a review for your PR, please check these items:

  • Open the PR against the feature-consolidated-sdk-docs branch instead of master
  • Tag the consolidated page for:
    • genre
    • meta.keywords
    • meta.description

Naming

Links and Refs

  • Create new consolidated SDK ref targets starting with "_sdks-" for relevant sections
  • Remove or update any SDK-specific refs to use the new consolidated SDK ref targets
  • Update any Kotlin API links to use the new Kotlin SDK roles

Content

  • Shared code boxes have snippets or placeholders for all 9 languages
  • API description sections have API details or a generic placeholder for all 9 languages
  • Check related pages for relevant content to include
  • Create a ticket for missing examples in each relevant SDK: Consolidation Gaps epic

Reviewer Checklist

As a reviewer, please check these items:

  • Shared code example boxes contain language-specific snippets or placeholders for every language
  • API reference details contain working API reference links or generic content
  • Realm naming/language has been updated
  • All relevant content from individual SDK pages is present on the consolidated page

Copy link

github-actions bot commented May 29, 2024

Readability for Commit Hash: 3f4931f

You can see any previous Readability scores (if they exist) by looking
at the comment's history.

Readability scores for changed documents:

  • source/sdk/model-data/change-object-model: Grade Level: 6.4, Reading Ease: 57.94
  • source/sdk/users/authenticate-users: Grade Level: 12.9, Reading Ease: 14.12
  • source/sdk/sync/manage-sync-sessions: Grade Level: 6.7, Reading Ease: 57.23
  • source/sdk/sync/partition-based-sync: Grade Level: 9.2, Reading Ease: 50.73
  • source/sdk/sync/manage-sync-subscriptions: Grade Level: 10.9, Reading Ease: 24.61
  • source/sdk/sync/configure-and-open-synced-database: Grade Level: 6.8, Reading Ease: 56.93

For Grade Level, aim for 8 or below.

For Reading Ease scores, aim for 60 or above:

Score Difficulty
90-100 Very Easy
80-89 Easy
70-79 Fairly Easy
60-69 Medium
50-59 Fairly Hard
30-49 Hard
0-29 Very Hard

For help improving readability, try Hemingway App.

@dacharyc dacharyc added the merge to feature branch Unreleased feature - do not merge to Master label May 29, 2024
Copy link
Collaborator

@cbullinger cbullinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall lgtm!

source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved
@@ -4,10 +4,213 @@
Partition-Based Sync
====================

.. meta::
:description: Learn how to migrate a Partition-Based Sync app to Flexible Sync, or open a database for Partition-Based Sync.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
:description: Learn how to migrate a Partition-Based Sync app to Flexible Sync, or open a database for Partition-Based Sync.
:description: Use Atlas Device SDK to migrate a Partition-Based Sync app to Flexible Sync or open a database for Partition-Based Sync.

For some reason it's in my head that we want the product name in the description as much as possible... but that could be me misremembering things 🙃

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That may be true generally, but I think in this case we don't necessarily want to surface PBS when people are looking for ADS info. I'm gonna omit this, but if you feel strongly about it, I can be convinced.

source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved
source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved
source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved
source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved

.. _sdks-partition-based-sync-fundamentals:

Partition Value
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't make sense as its own section on this page, as it's organized now. It's a concept-style section stuck between two procedure sections. I suggest moving it down to the Open a Synced DB... section

source/sdk/sync/partition-based-sync.txt Outdated Show resolved Hide resolved
- You add or change functionality that involves reading or writing SDK objects
- You want to implement more fine-grained control over what data you sync

Make these changes to convert your Partition-Based Sync client code to use
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nit] Feels like these includes should be ordered lists, not bullets

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm. Combining this with your point below to make this a procedure with steps.

For examples of Flexible Sync permissions strategies, including examples of
how to model data for these strategies, refer to :ref:`flexible-sync-permissions-guide`.

Remove and Manually Create Subscriptions
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[future] This section is confusing since it's split out from above, which also mentions removing automatic subs and manually adding new ones. Possibly combine?

@dacharyc dacharyc merged commit 97d3e5b into mongodb:feature-consolidated-sdk-docs Jun 4, 2024
5 checks passed
@dacharyc dacharyc deleted the DOCSP-39540 branch June 4, 2024 21:24
@docs-builder-bot
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge to feature branch Unreleased feature - do not merge to Master
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants