Star Wars Roleplay: Chaos

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Ability to see viewers.

Vual

Active Member
Basic suggestion, other forums have it and I am unsure why this one doesn't.

The ability to see who is viewing (and occasionally posting) the topic that you are looking at. It would help to see if someone is replying to the thread or to simply see who is reading it.

I see no real negative towards it, nor any excessive positive, it's more of a feature that's there and does it's job without causing trouble.

Thanks for reading, I hope this is considered and look forward to comments!
 
[member="Sarvus"]

Forums run on all sorts of different software. PHPbb tends to be the most popular as open-source with vBulletin being the most popular as proprietary (for commercial use). Chaos in particular uses Invision Power Board, if you believe the forum is lacking something you can generally find it here on their marketplace. Because IP Board is not open-source (to my knowledge) the administration cannot run around and start modifying the core software.

Of course, I'm not too familiar with it so I'm not entirely sure if this is a disabled feature but my hunch is it's one that doesn't exist at all for IP Board.
 

Vual

Active Member
The other forums I am apart of has this feature and both use IP.Board, I looked at the bottom right of the forums!

8866da06ebbcfcfba6a45f918fbcd56a.png


As a note, if you see it like that it means they are reading, if the name is in italics it means they are currently typing in the box (but only shows this if you join the topic as they are typing, otherwise it doesn't show in real time.)
 
[member="Sarvus"]

Do you know if the site uses a plugin/module for that? The only reason why is because the vanilla IP Board at least does not come with that feature, or at least that they don't have it active on the IP Board community... It'd probably be helpful for people to consider the feature if they know how to get it, unless of course it's part of the Vanilla but for whatever reason disabled.

Otherwise I'm not sure if it's a custom hook. (If that's possible)
 

Vual

Active Member
[member="Anja Aj'Rou"]

I have admin CP on that forum, I don't know if it has a module but if you know where to direct me to check, I'm more than happy to check!
 

Vual

Active Member
Mallory Pryde said:
Actually [member="Zambrano the Hutt"] it does do that, but this just shows ya how lazy people are if they cannot figure out a simple site feature.
[member="Mallory Pryde"]

Apologies, I don't quite understand who that was intended towards. If towards me, I know of the feature of being able to hover over someone's name and seeing what they are currently viewing, but that's not exactly what I'm asking. What I'm asking is the bar on the bottom of the threads (that other forums have) to be there, showing who is reading the thread at that time. I don't exactly wish to go to every single member and hover over there names, hoping that I will find a couple viewing my threads haha.
 
Sarvus said:
[member="Mallory Pryde"]

Apologies, I don't quite understand who that was intended towards. If towards me, I know of the feature of being able to hover over someone's name and seeing what they are currently viewing, but that's not exactly what I'm asking. What I'm asking is the bar on the bottom of the threads (that other forums have) to be there, showing who is reading the thread at that time. I don't exactly wish to go to every single member and hover over there names, hoping that I will find a couple viewing my threads haha.
yea right good luck
 
Bunker-level Normal
Very likely it's disabled to improve database performance. That's the short answer.

The long answer is:
Every time you load a page, the forum page talks to the database, which is called a query. It asks it who you are and what you can see. If you can see information on a page, it has to grab that, and it's not all done in one go. There are lots of checks to make sure that, maybe you can see topic names but not the posters, or categories but not one board inside it, or maybe you can't see anything at all. There are also checks in case you are an admin or moderator (who have special powers and see things we peons don't) and if there are any other special features afforded to your user.

Then the database has to feed all this into the page. It takes a fair number of queries (sometimes 15-30 queries for a page). Some are quick and easy, like pulling down information on users. These are itemized and indexed, which means they're quick to grab. Others are more lengthy because of the way they're stored, like posts. Posts are hard because they aren't stored specifically with the topic they're posted in, there's not one place you can go in the database and see all the posts in this thread and only the posts in this thread. You have to know how to find them and do so carefully. It takes the database a bit of time to retrieve all this. (Admittedly, this is all happening before you can blink, but it's still a fair amount of time in computer terms.)

Now imagine adding in the list of people who are looking at this. That not only means you have to grab that information from the database, but it has to continually update who is doing what at all times. At the moment it only does this when you look at someone's profile. That's it, when you pull up someone's profile, the database is literally going to your user, checking if it's logged in, and seeing what you're doing. Otherwise, it doesn't care. So by adding this feature, the database is going to have to ask your user, every X seconds, what its doing. Tthat takes a lot of work, and decreases performance.

Also consider that it's doing all this work for someone else at the exact same time. A lot of someone elses. In fact, everyone who is loading a page at the same time as you, which could be hundreds of people. That's not just logged in users, but guests, search engine spiders, archive.org, and other Internet site crawlers. And the database is serving all these people/bots at the same time.

The database deserves a medal.
 

Vual

Active Member
Though, and I say this with no disrespect intended, that's not exactly true. Sure the database does feed all this information to you, but not on a constant stream as a live stream, more so when you attempt to do something it does it once and that's basically it. Depending on what you are doing, if you are typing it periodically checks for that, if you hit "post" it checks if you have clearance for that and if you load the forums it checks for that, it's not a constant stream as you seem to explain in your post. In fact, it's probably one of the least impacting implementation on the forums and the shoutbox would be more stressing than this. This is simply, once you load a thread (or reload) it grabs the names of those that are currently in the same thread and displays a text list of their usernames at the bottom.
 
Bunker-level Normal
[member="Sarvus"]

I'm not sure where I said it's a constant stream. It's not. I was attempting to simply it for non-technical users, so that may be where you're not seeing all the specifics.

It's not about the database loading the information when you request it. It's more about the database keeping track of that information in the first place. SELECT queries are relatively easy, cost-wise, for a database. UPDATE queries are much more resource intensive, and that's what you need in order to keep track of users.

Load a board? UPDATE the user tracking table.
View a topic? UPDATE the user tracking table.
Make a post? UPDATE the user tracking table.
Read a profile? UPDATE the user tracking table.

Now see how many people are viewing Chaos right now. At this moment, I see 487 users online. That includes members, anonymous members and "guests" (which is IPB's default category for non-logged in users, not just real people but also spiders and bots). That's 487 different sessions to keep track of, and potentially 487 different UPDATE queries at a time. That puts a lot of stress on the database. All just to have a simple list of the people viewing each topic.
 

Vual

Active Member
[member="Captain Jordan"]

I can only base my information off of the forum that I am also a member on. At present there ate 543 members online there, which isn't even near peak time and the forums don't seem to be affected at all, even when it was peaked at 1,000 during a special event. I can't exactly push the idea past this point as anything beyond would be speculation of what may or may not happen, apologies if I come off as aggressive or rude.
 
Bunker-level Normal
[member="Sarvus"]

There's a lot more to it than pure users. The database itself, what database is being used and the actual settings and configuration, whether it's on the same server, whether it's on a server dedicated to that database, what the connection is like between the database and the forum (local, hardwired together, over the network), what other tasks are happening on those servers or network connections, etc.

You don't come off as rude, btw. I hope I don't either.
 
[member="Sarvus"]

I know it's not a perfect resolution, but the site does have a feature which allows you to look at what everyone else is looking at on the forum, found here.

It does mean you'll have to do a fair bit of scrolling, and it *does* show guests too which means sometimes there are a lot of pages, but you can toggle that at the bottom so it only shows registered users.

It isn't in real-time, however, so it only updates once refreshed.

EDIT: To get to it normally, scroll to the bottom of the front page; find the Users Online box and click "See Full List"
 
Ages ago, the site used to have a Friend Activity button at the top of the page next to your avatar and sign-out button, etc. Clicking on it revealed a list of all your friends that were online at the time and what they were doing. It was removed due to the strain it put on the database to constantly keep track of your friends and what they did.

Not a bad suggestion, though. :)
 
Why are there so many people guessing as to why there is or isn't this functionality? Why can't we just express our support or lack thereof?

There's so much postulation, incorrect postulation, in this thread that you're diluting it to a game of software. If enough people want something, and I think it's a really cool idea, and it's within the budget to get it - we'll get it.

I'm good at figuring everything else beyond "should we have it." So let's focus on that first step, and the rest will follow.
 

Users who are viewing this thread

Top Bottom