hivewallet / hive-js

Hive digital currency wallet
http://www.hivewallet.com
GNU General Public License v2.0
81 stars 57 forks source link

Assign generic avatar to new accounts #97

Closed haustraliaer closed 10 years ago

haustraliaer commented 10 years ago

Referencing the discussion here: https://github.com/hivewallet/discussions/issues/23

We'll need to:

haustraliaer commented 10 years ago

https://github.com/hivewallet/hive-js/tree/feature/avatars (branch) has the files added for curated icons - currently distributes to each transaction item based on it's index (looping every 10 transactions).

Much more work would be required to implement this into the actual profile picture and complete the tasklist above, so will wait until we've all discussed and come to a decision on whether to do it this way or to generate avatars somehow instead.

weilu commented 10 years ago

The "loop 10 placeholders" approach could be confusing to the user. Say I created two transactions with money going into the same address. One of the transactions shows up immediately after the other with a different icon despite the same destination address.

If we just want to show a placeholder picture in the history page, I think we are better off with a single placeholder.

mattatgit commented 10 years ago

So we can't work out those 2 transactions are going to same address and assign the same icon to them ?

haustraliaer commented 10 years ago

we could but it would be more complicated + sort of not solving the problem anyway right?

weilu commented 10 years ago

We can of course ;) but then what happens when you have sent to more than 10 addresses? then you will have transactions sending to different addresses but with the same icon

mattatgit commented 10 years ago

idea is to have around 20 icons so unlikely you'd see the same ones on one transaction screen. Your problem as described is about transactions next to each other no ?

haustraliaer commented 10 years ago

I'd argue that it's pretty likely.

How will we assign the 20 icons? If it's in a loop as I've set it up, but then we match addresses to make sure they have the same icon... which icon do we choose? Maybe we could bump the loop back to the position of whichever one we're at (once it moves on to a new address). At the end of the day we're creating a lot of code to avoid all the scenarios where we might end up with two icons the same next to each other, but with different addresses. But once you've reached 20 transactions to different addresses you're going to start using the same icons again anyway, so what's the point.

The way I see it if we're going to go with this approach then we are accepting there will be collisions / potential confusion for the sake of better looking generic icons.

mattatgit commented 10 years ago

The alternative being all transactions & users all share 1 icon ?

haustraliaer commented 10 years ago

The alternatives being:

  1. No icon
  2. All share same (and at some stage contacts attach their avatar if they have one)
  3. We use the generator weilu found: https://github.com/hivewallet/discussions/issues/23

I think we should probably discuss this as a key point on the call tonight so we can come to a consensus as to what can get done by Tuesday - and the better scenarios will have to come after.

mattatgit commented 10 years ago

1 will look pretty sad/ unfriendly & 2 will be confusing to most people i'd say. 3 will work, but we'll look the same as Coinjar, as it looks like thats what they use. Not saying looping icons are the best solution, but the other options are not so amazing either. Not an easy problem to solve.

haustraliaer commented 10 years ago

No it's definitely trickier than it seems on the surface - we may unfortunately have to wait for more development time to create something ideal. And in the meantime compromise one way or the other.

Re: coinjar if they do use that library I think that we could customise it enough to look different, their icons are more jagged / angular...

coinjar

The retricon ones looked closer to githubs (but again, we could adjust some of the parameters to make it slightly more unique).

mattatgit commented 10 years ago

Where are we with this now ? I have more icons designed, if needed.

weilu commented 10 years ago

I'm continuing on @haustraliaer's branch. Once it's done I'll merge it back to master and @mattatgit you can decide if we need more icons :) It's already looking better :D

haustraliaer commented 10 years ago

Going to implement as follows:

New wallets get assigned a random number from 1 - X for their avatar. If they set a gravatar it replaces the icon (but should probably still store it on the account in case they remove gravatar).

When broadcasting with waggle send whichever is set.

History page has no icons except maybe a send/receive icon to distinguish transactions (for anyone outside our conversations around this it's just too hard to map contact pictures to transactions until we have a centralised account system in place).

mattatgit commented 10 years ago

ok. Guess its the best we can do for now. Though having no icons on history page at all will take us straight in Zork territory, so i would suggest having sent / received icons at least.

weilu commented 10 years ago

@mattatgit check staging(heroku) in 10 minutes. It's being deployed