moho_00 Curator Backer Posts: 6844 Registered: 6/10/2011
moho_00
# 1 - Posted on 1/20/2017 23:05:05

I know there's been some discussion / feedback on the forums here about the recently added chat feature on the Profile page, so I wanted to create a new thread to discuss some of the upcoming changes.

When I first pushed out the Chat section on the Profile page, I didn't anticipate it being used for threaded conversations, but that was a pretty cool surprise! I'm glad to see it's proving to be a useful feature That being said, it certainly needs some improvements to support the usage we're seeing.

It seems to me there are three major issues that need to be resolved:

  • Chat messages are scattered across different profiles, so it's difficult to keep up with everything
  • No threading support, so every message is an independent comment and it's tough to have an actual conversation
  • Notifications only trigger if a message is added to YOUR profile, which means you have to keep checking your friends' profiles if you want to stay engaged

After brainstorming with @smande00 this afternoon, I'm happy to announce we have a plan to address all of those issues! We reviewed all of the communication across the website and determined the Chat feature and the Feed should really be merged into one component, at least under the hood. This will require a rather drastic architectural change, but should put us in a much better place once it's all done. At a high-level, here are the changes that you'll see:

  • There will be a new Feed activity type called "Chat" (unless someone can come up with a better name, ha!) that will be filterable just like the others on the Feed page
  • Visually, the Chat section will remain almost identical to what it looks like today. However, when you add a message, it will actually go into the Feed, rather than a separate infrastructure like it does today.
  • Rather than showing EVERY message (like it does now), the Chat section will only show "top-level" messages (this will make more sense later, so hang on)
  • All items on the Feed page, as well as the Chat and Thoughts sections on the Profile page will be clickable
  • Upon clicking an item, you will be presented with a modal that displays the original content (i.e. the thought itself or the first "chat" message) as well as any comments that have been made on it
  • From this modal, you will be able to add a new comment to the original item or to an existing comment
  • All items on the Feed page, as well as the Chat and Thoughts sections on the Profile page will display a number and an icon (or something) to indicate how many comments have been made on it
  • Whenever someone creates a new message on your Profile page or responds to a comment you're thread in, you will receive a notification (i.e. an icon next to the My Feed menu item)

To illustrate how this will all work, please consider the following scenarios (for simplicity sake, assume no filtering has been applied anywhere):

  • jwcooley posts a new Chat message on dhobo's Profile page
  • dhobo will be notified with an icon next to his My Feed menu item
  • The message will be displayed on dhobo's Profile page
  • The message will be displayed on any of jwcooley and dhobo's friends' Feed pages

Since Marcelloz is dhobo's friend, he sees it on his Feed page and clicks on the item. From there, he posts a comment. The following then happens:

  • jwcooley and dhobo will be notified with an icon next to their My Feed menu items
  • The message will NOT be displayed on dhobo's Profile page since it's considered a "sub" message
  • The message will NOT be displayed on ANYONE'S Feed page since it's considered a "sub" message

WhitsEnd is another one of dhobo's friends and he responds to the original message (i.e. not Marcelloz's comment) and the following happens:

  • jwcooley and dhobo will be notified with an icon next to their My Feed menu items
  • The message will NOT be displayed on dhobo's Profile page since it's considered a "sub" message
  • The message will NOT be displayed on ANYONE'S Feed page since it's considered a "sub" message

Okay, I swear I'm not trying to confuse you, but this stuff can get complicated Next, penumbren sees it on her Feed, so she responds to WhitsEnd's comment and the following happens:

  • jwcooley, dhobo, and WhitsEnd will be notified with an icon next to their My Feed menu items
  • The message will NOT be displayed on dhobo's Profile page since it's considered a "sub" message
  • The message will NOT be displayed on ANYONE'S Feed page since it's considered a "sub" message

As you can see, the creator (jwcooley) and the target (dhobo) are always notified because they started the conversation. If someone comments on something and that is in turn commented on, they'll start being notified for anything in that thread as well. Otherwise, they won't be notified. Obviously, all of this would still be showing up in the modal if you were to click on the item on the Feed or Profile page, so when I say "notified", I mean getting the little icon next to My Feed.

What do you guys think? Does this sound like it's heading in the right direction? I sure hope so, because I was a little excited and already started working on it

Oh and one final note, all of the existing chat messages will be ported over, they just won't be threaded or anything, so it might look kinda funky. But the content will be there and of course, you can start commenting on them for realz.

Post Edited on 1/24/2017 23:17:44
dhobo Curator Backer Posts: 1965 Registered: 1/5/2015
darwinsocialism
# 2 - Posted on 1/21/2017 7:04:15

Despite being horribly sleep deprived after being sick all night long, that convoluted example actually made perfect sense to me and sounds good. Seems like just the right level of notifications being issued and not getting too "spammy."

penumbren Curator Posts: 157 Registered: 9/13/2014
penumbren
# 3 - Posted on 1/21/2017 7:51:42

That sounds like a good overall plan. The example made sense to me, even with the day-long headache. I'm impressed that you've come up with something for this so quickly!

(One small non-example-related correction: It's "she," not "he." ;)

gamerlance Posts: 31 Registered: 1/7/2017
olsenpotter
# 4 - Posted on 1/22/2017 21:42:35

That sounds awesome! And will alleviate having to open 60+ windows when I go to check to see if any of my friends have responded.

Thanks for update.

moho_00 Curator Backer Posts: 6844 Registered: 6/10/2011
moho_00
# 5 - Posted on 1/24/2017 23:20:26

Glad to hear we're heading down the right path! I wasn't able to get nearly as far as I wanted to last weekend due to house stuff (eventually I'll be fully moved in...I think). This coming weekend is mostly out as well, but I'll hopefully have it ready by the first weekend of February! I'm thinking for the first release, I will actually not let you respond directly to comments, thus creating sub-threads. The infrastructure will be in place, but I'll restrict it for now since I have to come up with a good way to build the UI :P

@penumbren - My apologies!

Marcelloz Curator Backer Posts: 277 Registered: 9/14/2014
Marcelloz071
# 6 - Posted on 1/25/2017 11:11:14

Finally took the time reading and it all sounds really great. I also use it a lot more so enhancements would indeed be welcome!

penumbren Curator Posts: 157 Registered: 9/13/2014
penumbren
# 7 - Posted on 1/25/2017 23:35:03

No problem, moho. :) Congrats on the house stuff and I'm glad things are going pretty well for you.

I look forward to seeing the chat changes whenever you have the time and energy to put them out. :)

moho_00 Curator Backer Posts: 6844 Registered: 6/10/2011
moho_00
# 8 - Posted on 2/5/2017 18:30:49

These changes are well underway, but not having the internet and having my house be a construction zone again kinda wrecked my progress :P I'm hoping to polish things up a bit and we should finally have a new release next weekend

Marcelloz Curator Backer Posts: 277 Registered: 9/14/2014
Marcelloz071
# 9 - Posted on 2/6/2017 20:08:00

take your time but when it arrives : \o/

moho_00 Curator Backer Posts: 6844 Registered: 6/10/2011
moho_00
# 10 - Posted on 2/11/2017 12:41:49

The new features are live! While it's pretty much what I previously described, here's what all has changed:

  • Underneath the hood, everything found under the "Chat" section on the Profile page is actually a part of the Feed. These were previously two separate components. All existing data was moved over.
  • You can still enter a comment on someone's profile (or your own), but it goes in as a Feed post that's tied to a user instead of a game (which was previously the only way a Feed post could be generated).
  • If you hover over an item in the "Chat" or "Thoughts" sections on the Profile page, you'll notice the cursor is a pointer. You can actually click anywhere on the right-side of the entry and it will pop open a modal where you can view the original post and any existing comments. You can also enter a new comment.
  • On the Feed page, there's a new activity filter for "Chat" which covers these new posts. I noticed a bug this morning where the number of filters applied isn't working with the new type, so I'll be working on that one.
  • Each item on the Feed page is clickable, exactly like the ones on the Profile page mentioned above. They all pull open the exact same modal.
  • There's a new comments count that shows up and the existing likes count has been redesigned a bit

As I alluded to in an earlier post, this is only version 1 of the changes. The following has NOT been implemented:

  • There are no notifications when someone comments on your post. If you look on your Feed, you'll see the number of comments, so you can manually track it, but that's obviously not going to cut it.
  • You can only comment on the "main" Feed entry, so no sub-threaded conversations at this time. The infrastructure supports it, but it's a lot of additional work, so I wanted to focus on the core functionality and make sure we actually need this before proceeding.
  • You currently cannot edit comments. You can still edit your "main" entries.

So that's what we have now and what's on the horizon (assuming the need is there). In addition to all of this, there are some feedback items I wanted to bring up with the community:

  • Are there any Feed items that you don't think are necessary? I've been eyeing the "Finished" and "Completionated" ones for a while since the site sort of pushes you into entering Completions and those other ones kinda clutter things up, especially when a new user registers and marks all of the games they've previously beaten. What about "Started Playthrough"?
  • Currently, we have all of the feedback ever generated. Over time, this can degrade performance and given what we use the data for, older stuff just doesn't seem particularly useful. Would anyone be opposed to automatically dropping off things that are older than x days? I'm thinking we would keep at least 6 months worth of data and I would never actually throw it away, it would just go into an archived table or something.
  • I know we had some feedback on the Feed page itself previously, so I'd like to open those discussions up again. If anyone has any ideas regarding the layout or what you'd like to see, let me know.
dhobo Curator Backer Posts: 1965 Registered: 1/5/2015
darwinsocialism
# 11 - Posted on 2/11/2017 17:21:41

I think the fact that we can enable/disable feed items makes the question of which ones are unnecessary... well, unnecessary!

For what's it's worth though, my current friends feed list looks like this (where bold lines are enabled):

  • Added game
  • Entered completion time
  • Completionated game
  • Accepted bounty
  • Posted thought
  • Chat
  • Started playthrough
  • Finished game
  • Added to wish list
  • Completed bounty
  • Completed goal

The main idea was that I wanted to keep the spammier ones unchecked since I hate scrolling through piles and piles of entries to find the ones I'm more interested in. Sure, I love goals and seeing what people are doing, but a lot of the time there are just too damn many in a row (I know I do the same when I get into a game proper...) but I'd rather spend my time looking at the more interesting items like Completions, Thoughts, and now Chat. If I want to see goals for a game I'm interested in, I'll look at someone's profile instead and pull it up on it's own.

To be fair, my lack of patience with spam is the same with most social media like say Facebook, where I started by blocking the vast majority of my friends list from showing up due to their spammy garbage posting habits. When that ultimately didn't work out, I effectively stopped using FB. At least with Completionator, these customization options for the feed let me tweak stuff a lot more directly so I can actually keep using it and not get annoyed.

Post Edited on 2/11/2017 17:22:58
Marcelloz Curator Backer Posts: 277 Registered: 9/14/2014
Marcelloz071
# 12 - Posted on 2/11/2017 19:57:56

Great seeing things moving forward again! Chat is really a 'hot' thing right now so happy to see the enhancements.
So thanks for the work done.
I know you appreciate some feedback (;-)) so : the first thing I noticed (missed) was (indeed) a notice that somebody has replied (or how many comments) on a chat message on the profile page would great. I also noticed that when you comment on a comment it gets placed above the previous one which is odd i.m.o. I would expect it lower just like a regular chat.
Also the feed page is pretty slow. I have most filters disabled but rarely visit it due to the time it takes to load.

moho_00 Curator Backer Posts: 6844 Registered: 6/10/2011
moho_00
# 13 - Posted on 2/12/2017 14:35:50

@Marcelloz - I optimized the query slightly, so it might be a little faster for you. I noticed about a 50% reduction in execution time in my development environment, but I'm not really seeing that in production for some reason. I'm going to be looking at it further to try and speed it up. Along those lines, just to give you guys an idea for how much data has to be crunched to show one page of data...For my account, I have over 58,000 feedback rows (for me and my friends) to look at to determine what should be displayed! That's where archiving some of this data could be really handy since I don't have the luxury of just adding servers like Twitter :P

Also, I changed it so the most recent comments are on the bottom instead of the top.

Post Edited on 2/12/2017 14:36:43
jwcooley Curator Posts: 983 Registered: 2/28/2014
jwcooley
# 14 - Posted on 2/13/2017 21:08:14

I like it. I know it'll get better as it continues to develop but think the small adjustments have been worth it.