ChapmanCPSC370 / ShyHi

Location based anonymous messaging application that connects individuals around the world without profiles that create pre-judgements.
http://chapmancpsc370.github.io/ShyHi
MIT License
6 stars 3 forks source link

Allow for nicknames #20

Open baskervald opened 9 years ago

baskervald commented 9 years ago

I haven't tested this app in the slightest, as I don't have an android device, but one thing that I imagine would be useful (and that I don't see anywhere) is the inclusion of the ability to set nicknames for once someone's told you their name or even just for something to remember a person by.

My apologies if this is already implemented, but I didn't see anything about it after skimming over everything.

rugggg commented 9 years ago

Hey there, thanks for the idea!

We hadn't actually considered that idea, the plan was to just go with randomly generated nicknames, but this may well be a better way to go about it and I think it's definitely something to implement into the app! Thanks!

baskervald commented 9 years ago

No problem. Good work on the app, by the way. When I finally end up picking up a Nexus, I'll make sure to download it.

rugggg commented 9 years ago

Thanks, looking forward to getting the idea implemented into the app.

Have had a Nexus 5 for a year now, easily the best phone I've had, it kicks ass, looks great, and takes great pictures as well despite some complaints.

lancefluger commented 9 years ago

Interesting point @AshlynnInWonderland . Can weigh the idea of true anonymity to a pseudo-anonymous system where can have uniquely identifiable nicknames.

baskervald commented 9 years ago

Sorry. That's not what I meant. I meant that you, as a user, set the person you're chatting with's nickname on your device.

Even in your readme, the example first question is "Hi, what's your name?" and a name can make the difference between a comfortable conversation and an extremely awkward one, so it would make it a lot less confusing if you could just click a button and set a local nickname for them, either as their name or even just something that lets you remember it's them when you're scrolling through your chats.

baskervald commented 9 years ago

I'd personally implement this with an edit icon next to their name when you have their chat open, similar to, for example, the github "Edit comment" pencil icon that should be shown at the top corner of your comments on this page (assuming you're using the github website and not just email)

lancefluger commented 9 years ago

@AshlynnInWonderland Ah, I see so the nickname is only locally defined, they never know what nickname you have set for them :)

rugggg commented 9 years ago

@AshlynnInWonderland I'm on the same page in terms of having the user set a nickname for each person they are chatting with, there could be some merit as well in having a user be able to set their own nickname...maybe have the user set their own nickname and also be able to give a name to each conversation?

If you want to help get this implemented go ahead! Any help is appreciated

baskervald commented 9 years ago

@rugggg Well, I feel that doing that would be removing what I personally felt to be the... drawing point, I suppose, of the app. I could be wrong, but it almost seems like the way the app is designed is to allow for the natural flow of conversation to take place, as opposed to most chat apps where, even if pseudo-anonymous, the other user at least has something to go off of. I personally like the feeling of getting to know somebody and casually asking their name and everything, rather than having an artificial "starting point" as one has in most apps.

Of course, it's not my project, so if that isn't the goal in the slightest, correct me, but I think that letting a user set their own username would just give it a layer of artificiality.

Also, I would love to help with the implementation, but I'm really quite rusty on my Java. Sorry.

collinsmith commented 9 years ago

Nicknames is a good idea. You could do it a few ways, however the one that comes immediately to mind is assigning people genders and letting them input their own name in their own time (i.e., when it's convenient for them). Until they reach that point, they would be assigned a gender-relevant name (e.g., if I choose male, my nickname would be assigned randomly to "Michael").

This could be taken a step further by allowing people to communicate anonymously (as originally intended) until the point where one person (or all parties involved) choose to reveal their names. IMO, revealing the gender of the person(s) you're talking to is important from the start of the conversation, but people can always lie, so it doesn't really matter. The one thing that would need to be decided is whether or not gender is fixed once assigned (assuming someone made a mistake at the original assignment, and not so that they can just change gender at will [How would this effect auto-assigned and then custom nickname? How would this impact conversations if my conversation with John suddenly changed into a conversation with Mary]).

One problem with visible genders is that girls will naturally be sexually harassed in no time by guys. This could be turned around by adding preference, e.g., I'd prefer to talk to girls. It might also help if people could choose interests to help with matching.

Controlling the flow of what information about yourself is revealed is a neat feature though.

baskervald commented 9 years ago

I'm still of the personal preference that everything should only be done locally by the user. The inclusion of gender is a reasonable idea, but there are many problems with gender and gender-assigned names.

The first that comes to mind for me is the inclusion of transgender individuals who identify as something other than male or female. There aren't exactly a list of names that can be used for situations such as those, if you were to allow for genders other than male and female, and if you weren't, that could be rather exclusionary to part of your audience.

The second problem, which is less about political correctness, is that it would get very confusing for someone to be assigned a gender-specific name and you getting used to that, then suddenly their name is completely different. Even if it notifies you, you'll still likely be getting confused for the next couple of days, because that fellow named "Jeremy" you've been talking to is suddenly called "Chuck", and since chats will be mostly recognizable by name.

rugggg commented 9 years ago

@AshlynnInWonderland @collinsmith As we currently plan to do it, nicknames will be generated and assigned to each conversation, and won't be particularly exclusive to a given user and the nicknames will not be gender specific. ie My chat with say user1 will show his nickname as "Frisky Antelope" but another user chatting with him will show his nickname as "Puzzled Armadillo". And user1 will not be privy to whatever random username is assigned to him.

The gender issue is definitely one we are aware of and will be something that needs to be well thought out and addressed. It is almost always going to be one of the first questions posed in a given chat and the answer can, as ashlynn notes, result in harassment, douchebaggery, and other things that come with internet anonymity.

To address this, A train of thought we have kicked around is to have the user create a username, set their gender and maybe a few other fields about themselves. Each conversation would begin fully anonymous, with users not seeing each other's username or gender, but just a random generated nickname or '????'. As the conversation progresses, say 10 messages have been exchanged, then both users are presented with an option to request gender. One requests and if the other accepts, both users genders are revealed. A bit later, usernames can be requested in a similar fashion, then phone numbers, email, etc.

The bugaboo with that is the breaking of true anonymity. But the gain is a flow that has users begin a conversation fully anonymous and forces them away from opening the convo with "what's your gender?" (could prevent phrases such as this from being valid entries maybe) and hopefully would foster conversation about other topics. It also forces both users to divulge any info about themselves at the same time.

This sort of process would also allow for addressing the eventual question of what happens when the users exchange info? Do we allow them to just move to to other forms of communication or do we create a section of the app for non anonymous communication? With conversations being moved there once the convo has gone from anonymous->genders revealed->name revealed.

baskervald commented 9 years ago

I feel that, while it isn't actually anonymous, you shouldn't categorize it as "non-anonymous", even if it's technically true, because it's not as though you actually know who the person is. You just know some basic details about them.

Not to mention, what you're talking about is prone to... something similar to gamification, similar to how many users obsessively delete messages from their gmail inbox to achieve "inbox 0", except with people trying to move all of their convos to their nonymous section as fast as possible, which is a little counter-intuitive.