Display options: global, or per-user?

19 views
Skip to first unread message

Sean Colsen

unread,
Aug 31, 2022, 3:06:17 PM8/31/22
to mathesar-...@mathesar.org

I’m splintering off this discussion from its parent thread “Re-ordering columns”, because I feel it deserves its own focus, beyond just the order of columns.

Should we store display options per-user, or globally?

That is, if I customize the width of a column, the order of columns, the format of a date, or the number of decimal places to show on a number – should other users see those customizations too?

In this email I make a case for storing them globally.

This is tricky though. I predict there will inevitably be some cases where users want the display options to be global and other cases where users want the display options to be per-user. So I see the choice between the two as an optimization problem. Theoretically, Mathesar could allows both per-user and global display options, but I imagine we would all agree that such a system is too complex for this early stage of our product. I think we should decide, in a binary sense, whether display options are per-user or global, perhaps even making separate decisions for separate display options.

In trying to find the optimal solution, here’s where my mind goes:

  • What are users most likely to expect?

    I looked at some competing products and gathered the following data on the scope of their display options:

    Product Display option Scope
    Google Sheets Column width Global
    Google Sheets Column order Global
    Google Sheets Date format Global
    AirTable Column width Global
    AirTable Column order Global
    AirTable Date format Global
    Google Tables Column width Global
    Google Tables Column order Global
    Google Tables Date format Global

    This data gives me a good indication that users are likely to expect our display options to be global.

  • What are users most likely to want? (Even if they don’t expect it.)

    Because this is subjective, it’s is harder to answer without focus-group style research.

    Personally, I would want them to be global in probably 98% of the use-cases I imagine Mathesar suiting. If I’m setting up a schema to use with other people, I want to make it nice and pretty for them so they can get to work right away without having to configure their display options.

  • Which solution is easiest for users to work around if they don’t like it?

    • With global display options, I can create an Exploration to view the data with different display options if I like.

    • But with per-user display options, there’s no way for me to share my work of configuring the display options.

  • Which solution is easiest for us to implement?

    • Global display options seems simplest. Columns data can be fetched without joining on user data.
  • Which solution is easiest for us to change later on?

    • If we start with global display options and decide to change to per-user display options, it’s straightforward to apply the global display options to every user.

    • But if we start with per-user display options and want to change to global, then it becomes unclear how to set the global options based on multiple users with separate display options.

I suggest we make all display options global because it’s the easiest place to start. Then, after user feedback we can explore ways to meet the needs of users who want per-user display options.


Kriti Godey

unread,
Aug 31, 2022, 3:14:15 PM8/31/22
to Sean Colsen, mathesar-...@mathesar.org
Okay, I'm convinced – let's start with global display options and figure out if we need per-user options based on user feedback.

Kriti Godey

unread,
Sep 7, 2022, 5:22:35 PM9/7/22
to Sean Colsen, mathesar-...@mathesar.org
I've removed the per-user column width saving from the Users & Permissions spec. I think we should spec out the global display options work in GitHub issues and put them in the post-release improvements milestone. Sean, do you mind doing that?

Sean Colsen

unread,
Sep 7, 2022, 5:23:50 PM9/7/22
to Kriti Godey, mathesar-...@mathesar.org
Sure

Kriti Godey

unread,
Sep 12, 2022, 10:39:32 AM9/12/22
to Sean Colsen, mathesar-...@mathesar.org
Apparently there's already an issue for this, it just needs to be edited: https://github.com/centerofci/mathesar/issues/1421
Reply all
Reply to author
Forward
0 new messages