Skip to content
This repository has been archived by the owner on Mar 23, 2023. It is now read-only.

Revisit the 1 Profile = 1 Network Architecture #900

Closed
doubled1c3 opened this issue Dec 30, 2018 · 11 comments
Closed

Revisit the 1 Profile = 1 Network Architecture #900

doubled1c3 opened this issue Dec 30, 2018 · 11 comments
Labels
Type: Feature The issue is a request for new functionality.
Milestone

Comments

@doubled1c3
Copy link

Problem

I have noticed a lot of back-and-forth and friction regarding profiles both on Github and elsewhere. On one side is the pro-profile camp and the other says profiles are unnecessary and just create extra steps. After reviewing all opinions and assessing the feature, I've found a disconnect between the way we define profiles and how they are represented within the ARK Desktop Wallet. This is likely the cause of the underlying issue.

We define profiles as a person or entity. I.e. "Justin" or "ArkStickers, Inc." This is shown with faces, persistent presence in the lower left corner, and instructions to "enter your name or nickname." However, as each profile can only attach to exactly 1 network, it forces the creation of multiple profiles (with multiple faces who don't even look like you to tell them apart) to use the desktop wallet as intended. I would have to create "Justin ARK" with face #1, "Justin DARK" with face #2, "Justin Bridgechain A" with face #3, and so on. This thereby removes the functionality of profiles in their own right. A single person plans to use multiple networks, after all.

Solution

We need to decouple profiles from networks allowing one profile to have multiple networks and their settings "beneath it." This solves all issues, makes the function of profiles clear and useful, and satisfies both sides. In this architecture, each profile can have multiple networks with unique peer settings (if desired) and instead of switching profiles, you would be switching networks within that profile.

Users who do not need/desire more than one profile would create 1 profile and have all their networks within that.

Users who do need multiple profiles can harness the power. Some examples:

  1. Bob creates profile Bob with multiple networks within that contain/manage Bob's personal wallets across those networks. However, Bob also creates profile "Bob's Business" that contains/manages Bob's business accounts across multiple networks.

  2. A family PC contains three profiles, "Dad," "Mom" and "Daughter". Dad, a developer, may have some wallets in ARK Mainnet and ARK Devnet. Mom only has ARK Mainnet wallets. Daughter has ARK Mainnet and GamerBridgechain wallets inside her profile.

  3. Billy Lonewolf creates only 1 profile called "Billy" that he uses to manage all wallets across all relevant networks. Billy doesn't care about profiles so he only needs one.

This is how the brain would assume profiles behave, and adjustments can be made to accommodate this.

Similar to the mobile wallet, profiles should have an optional PIN feature. On the setting of the PIN, a message like "Remember your PIN. The ARK Desktop Wallet offers no way to recover it."

On application launch, the wallet should not access the most recently used profile. It should start with a modal that allows you to select which profile to go into, with optional PIN if exist.

I recommend the priority of this be heightened, as I do not believe the profile arguments will go away until a solution is implemented that satisfies everyone on both sides.

@doubled1c3
Copy link
Author

This is an expansion of #797 which can likely be closed if this solution is accepted.

@doubled1c3
Copy link
Author

I also understand that this affect a number of aspects throughout the wallet and experience and may not be able to happen right away.

@zillionn
Copy link
Contributor

Yes, I believe this is a very big change, will take a lot of time.

Until then, maybe we could just rename Profiles to Networks and replace that avatars with network logos?

@doubled1c3
Copy link
Author

@zillionn Yes, I agree with a fast solution that handle most of the issue. I do recommend instead of renaming to "Networks" rename to "Network Profiles" because there is technically already a thing for Networks. Regarding the avatars, we can easily decouple the concept of person/entity by just changing the avatars to pick from. Later on when the full functionality of profiles are reintroduced, the faces can be brought back in.

I recommend for now to just get transparent versions of Oleg's "technology objects" as they can each refer to different network profiles.

Examples:

image

image

image

image

image

image

image

These two things would achieve 80% of the desired result while doing 8% of the work, then we can put profiles as a concept on hold until a later date.

@doubled1c3
Copy link
Author

Recommend closing #797 as this issue here details a good short term and long term solution that factors in thoughts from #797 and any further comments regarding profiles can be on here instead.

@j-a-m-l
Copy link
Contributor

j-a-m-l commented Feb 15, 2019

@doubled1c3 we have decided to implement this change, but we will do it slowly, to not break anything, so it may be released on the next months.

@j-a-m-l j-a-m-l added the Type: Feature The issue is a request for new functionality. label Feb 15, 2019
@doubled1c3
Copy link
Author

Copy that, and understood!

@stale
Copy link

stale bot commented Jul 22, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the Status: Stale The pull request is in need of updates but there has not been a sufficient response. label Jul 22, 2019
@doubled1c3
Copy link
Author

Bump

@stale stale bot removed the Status: Stale The pull request is in need of updates but there has not been a sufficient response. label Jul 22, 2019
@faustbrian faustbrian added this to the 3.0.0 milestone May 18, 2020
@faustbrian
Copy link
Contributor

Closing, no longer relevant for 3.0

@ghost
Copy link

ghost commented Jun 18, 2020

This issue has been closed. If you wish to re-open it please provide additional information.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Type: Feature The issue is a request for new functionality.
Projects
None yet
Development

No branches or pull requests

4 participants