ArkEcosystem / desktop-wallet

:computer: Archived, please use ARKVault
https://app.arkvault.io
MIT License
291 stars 192 forks source link

Notify users when delegates don't forge and integrate arkdelegates.io #1111

Closed TwerkingGorilla closed 5 years ago

TwerkingGorilla commented 5 years ago

Is your feature request related to a problem? Please describe. I think Ark’s DPOS system is very elegant in many ways but while it is strong in terms of scalability and energy consumption, it is often regarded to have obtained this by sacrificing decentralization, and in turn security. I am not a blockchain specialist, but I am a long-term Ark user, and from that perspective I would like to put forth some theoretical improvement suggestions on the problem of decentralization.

Describe the solution you'd like Two features:

Describe alternatives you've considered n.a.

Additional context

Drawing an analogy with a democracy: in a democracy, community representatives are voted into the government to do the governing work for the community. This prevents too many voices fighting over topics, which would otherwise cost too much energy and time (just like POS projects are not energy efficient, slow to evolve, and have slow performance). In order to select the best representatives, the community members need to be informed optimally and correctly (transparently). Likewise, it is key to have a community in a DPOS ecosystem optimally informed of their representatives and to have them keep their representatives in check, thus requiring frequent interaction/control with/on their performance and developments. Often, ecosystem members seem not to be informed of the ARK voting system, and even less on what delegates are doing. Though we create websites on delegates, and the delegates have their own information channels, all together the ecosystem experience still feels fragmented and a bit like figuring out how to send and email ~20 years ago (this being a common statement on blockchain in general recently). I feel the click-button user-friendliness, is yet to arrive in this aspect, so here are some feature suggestions to get there.

A single place is needed, where to find all the information you need to participate optimally in this ecosystem and to have the ecosystem perform optimally. No more fragmentation. Have it all together in an ecosystem portal. The Ark wallet is the obvious, and only candidate for this. Two suggestions to get the current wallet (desktop and mobile) towards becoming the ecosystem portal it can be:

ghost commented 5 years ago

Thanks for opening this issue! A maintainer will review this in the next few days and explicitly select labels so you know what's going on.

If no reviewer appears after a week, a reminder will be sent out.

ghost commented 5 years ago

A maintainer will review this in the next few days and explicitly select labels so you know what's going on.

If no reviewer appears after a week, a reminder will be sent out.

j-a-m-l commented 5 years ago

About your first point, I've an idea in mind. It's quite simple: when I'm voting a delegate that is not forging, a red dot would be displayed on my wallet screen (currently we show an orange dot to mark wallets that are not voting).

One thing that we have in our roadmap is displaying native notifications when receiving transactions. We could extend them to respond to more cases, like this one.

The second point couldn't be integrated since we don't have control over that page. Maybe in the feature someone creates a plugin for that.

TwerkingGorilla commented 5 years ago

First point: nice. But I think a nudge to the user that something is happening in the ecosystem would be something that users could appreciate. I think users would like to be connected, in touch, continuously informed, without having to check yourself every given time. Just like a notification when you receive a transaction. And of course, it should be optional. Edit: ah just read your comment correctly about that it could be extended. Great! Never mind the above comment to point one :D

Second point: arkdelegates is just an example, I just think the wallet should host a delegates section with this kind of information, to provide a platform for delegates within the same portal for maximum reach, so voters are better informed and users have everything in one place. Developing a plugin for that, might be something the ACF could sponsor? Or maybe the regular bounty program? I'm no developer, but I would like to help promoting the idea wherever, to push for a solution.

alexbarnsley commented 5 years ago

A plugin can be created to just show the arkdelegates website on a page in the app. It's unlikely we'll recreate the page ourselves, since it would be yet another place for delegates to have to go in and update

dated commented 5 years ago

I'm really looking forward to the plugin feature. If @roks0n adds (or maybe there is already?) an API to arkdelegates.io all information could even be shown in the same visual style of the wallet.

TwerkingGorilla commented 5 years ago

@alexbarnsley, I agree there should be only one place for delegates to be keeping up to date. And that place should be the wallet itself, because the arkdelegate website is yet another Ark related information gateway, making Ark ecosystem interaction fragmented, thus inefficient. Having it all in the same portal, in the wallet, is the push-button user-friendly way I believe Ark aims for in any aspect. Bringing it to the aspect of decentralisation in this way I think is important. So what I mean to say is: whether it is the current arkdelegate website or not, there should be an extensive delegates section in the wallet, like there is a news section, so to optimize the ecosystem user-experience, decentralisation, and security.

roks0n commented 5 years ago

There's already an API for this, but ideally all this data would be stored on-chain. Thing is we wouldn't be able to squeeze proposal into vendor field (I haven't done the math so I could be wrong). Let's say that we can, we would have to make a predefined structure how the whole proposal would look like, as a json object, but compressed so that it fits vendorfield and the vendorfield would need to have some sort of identifier so we'd know that it has something to do with a proposal.

So for example dated delegate would send a tx to himself with a vendor field starting with "proposal", eg: proposal: <compressed json object> and then arkdelegates/wallet would just fetch the latest tx for each delegate that starts with "proposal", decompress it and read the json object.

alexbarnsley commented 5 years ago

I agree. Just adding it in the desktop wallet doesn't make it decentralised. And if we (the team) starts storing proposals then that is still centralised. The only way to decentralise is to do what @roks0n says, on chain.

It is still unlikely we'll do this as part of the wallet. It will be most likely a plugin however it's done.

doubled1c3 commented 5 years ago

Delegate information such as payout specs would need to be a community 3rd party plugin because ARK.io has legal issue with promoting delegate proposal activity

stale[bot] commented 5 years ago

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.

ghost commented 5 years ago

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