[Home] [Downloads] [Search] [Help/forum]

Gammon Software Solutions forum

See www.mushclient.com/spam for dealing with forum spam. Please read the MUSHclient FAQ!

[Folder]  Entire forum
-> [Folder]  Forum
. -> [Folder]  Problems
. . -> [Subject]  Always unread

Home  |  Users  |  Search  |  FAQ
Username:
Register forum user name
Password:
Forgotten password?
(New message)
Subject: Always unread
Name:
Your forum user name.
Register forum user name
Password:
Your forum password.
Forgotten password?
Message:
Message to be posted (in English, please).
Forum codes:
Check this if your message uses 'forum codes' or templates (auto-detected for new posts).
Forum codes Templates

Save this message ...


Subject review (reverse sequence)

Pages: 1 2  

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Fri 09 Oct 2009 03:30 AM (UTC)  quote  ]
Message
Oh, sorry. I thought you meant several login sessions of one user, as opposed to individual users. I would imagine that reading should be done on a per-user basis, not a per-PC basis.

I don't think that what the wikipedia section you quoted is a good proposal, to be honest, because I agree that it would be taking a step backwards.

Just to be clear, I don't think multiple logins really factor into this any more than they do for the current last-read-post time keeping.

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Thu 08 Oct 2009 08:15 PM (UTC)  quote  ]
Message
David Haley said:

It doesn't really depend on any given login session.


Well, it does. If you visit the forum, it has to know that David has read a post and not, say, Twisol. Now since the forum now allows for multiple sessions, would you want it to record across all sessions (ie. the reading is done by David, and is not specific to a PC?).

Now to quote from the Wikipedia page earlier:

Wikipedia said:

Session — when a user's session starts, this method relies on the user's "last visit time" to display all messages created since that date as unread. Everything that was posted before "last visit time" is considered "read" regardless of whether the user has actually seen it or not. Until the user's session expires, this method properly tracks read/unread messages, starting with messages that were selected as "unread" when the user's session started.


So we need to establish "when a user's session starts" - is this when you login a particular PC? What if you have multiple logins? If it is a particular PC (that is, the session starts at one PC), then reading some messages at work, they still stay unread at home.

Then it says "Everything that was posted before 'last visit time' is considered "read" regardless of whether the user has actually seen it or not." . That seems worse behaviour than we currently have. In other words, if you log out at work, and then log in at home, everything is considered read. I would say that is a step backwards to the present system.

I still don't see an easy way of implementing it.




- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Thu 08 Oct 2009 05:42 PM (UTC)  quote  ]
Message
Nick Gammon said:
For one thing, how do you define a "session"?

I'm not sure which session you're referring to? My proposal was to tie it to the user forum-side. Whenever you visit the forum (or just the post list) your (forum-stored) list of unread posts is refreshed w.r.t. your previous visit of that page. It doesn't really depend on any given login session.

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Thu 08 Oct 2009 06:08 AM (UTC)  quote  ]
Message
I suppose I could to that, which would just update the time of the last read post, effectively moving the "read/unread" line upwards.

As for the other ideas, I'm not sure how that would work. For one thing, how do you define a "session"? Especially if you are logged in at multiple PCs.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,230 posts)  [Biography] bio
Date Thu 08 Oct 2009 12:12 AM (UTC)  quote  ]
Message
Fair point. Maybe instead of changing how it works, he can just add a "Mark All As Read" button?

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Wed 07 Oct 2009 06:04 PM (UTC)  quote  ]
Message
Oh, sorry, I misunderstood what you said. Yes, it works on the last post you read. FWIW, I wouldn't want it to be based on last visit, because that would mean I couldn't scan the post list without all of them being marked as read.

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Twisol   USA  (2,230 posts)  [Biography] bio
Date Wed 07 Oct 2009 05:34 AM (UTC)  quote  ]
Message
*shrug* I thought Nick said it recorded the last post you read, not the last time you visited

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Wed 07 Oct 2009 03:59 AM (UTC)  quote  ]
Message
What you described, Twisol, is what the forum already does, right?

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Twisol   USA  (2,230 posts)  [Biography] bio
Date Tue 06 Oct 2009 09:58 PM (UTC)  quote  ]
Message
I was thinking of something more like storing the timestamp of their last visit, and just querying the database for all topics more recent than that. There would be no storing of separate "recent thread" lists per-user, just database queries based on time.

Sort of skimmed most of this thread, so if this isn't relevant, ignore me.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Tue 06 Oct 2009 04:40 PM (UTC)  quote  ]
Message
Nick Gammon said:
Well, to keep track of *unread* posts, every time a new post was made, you would have to add 4,905 records (at present), for maybe 3 or 4 posts a day. This would significantly add to the time to make a post. A problem too is that a lot of users may be dormant.

Sorry, I must not have phrased my idea correctly... what I meant is that you don't need to track it at the time the post is made, but rather, you can keep track of the last time you synchronized a given user with the unread post list. Then, when the user next visits the site, you update their unread post list with all posts made since their last sync time.

For example:

David's last time sync: Oct 4th. Currently unread: threads 2, 3.
On Oct 5th: David doesn't visit. Thread 1 gets an update, thread 4 is created. (Nothing happens to David's unread post list.)
On Oct 6th: David visits.
- posts made since Oct 4th (time of last sync): threads 1, 4.
- threads 1,4 added to unread list. Current unread list: 1,2,3,4.


This way, you have several advantages:
- You store nothing for dormant users.
- You don't delay individual posts.
- The cost of synchronizing the post list is probably relatively small: you're already doing (almost) exactly that, in some sense, with the current method. Just now, you'd be adding the posts to a list somewhere.

You can store the "last visit" as a cookie, a database field, whatever. (I'd actually prefer the database field, so that it persists across all of my login sessions.)

You would probably want a "mark all posts read" button or something so that somebody can just wipe out the entire list. Maybe "mark posts read" per forum section, too.

Does that make more sense?

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Tue 06 Oct 2009 06:38 AM (UTC)  quote  ]
Message
I'm not sure how what they describe there works, possible the "Session" system creates a small number of database records of the unread posts of that session, rather than the thousands of posts that might exist.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Tue 06 Oct 2009 06:35 AM (UTC)  quote  ]
Message
See:

http://en.wikipedia.org/wiki/Comparison_of_Internet_forum_software

and scroll down to: "Unread message tracking".

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Tue 06 Oct 2009 06:32 AM (UTC)  quote  ]
Message
Well, to keep track of *unread* posts, every time a new post was made, you would have to add 4,905 records (at present), for maybe 3 or 4 posts a day. This would significantly add to the time to make a post. A problem too is that a lot of users may be dormant.

I'm not sure how other forums handle it - maybe a cookie or something? Even then there is potentially a lot of information you need to store.

I know the current system is slightly annoying however I am not sure that the cure is not worse than the disease, If someone can outline a sensible way of doing it I would be pleased to hear it.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by David Haley   USA  (3,881 posts)  [Biography] bio   Moderator
Date Mon 05 Oct 2009 06:42 PM (UTC)  quote  ]
Message
For the record, I haven't had any issues with the 'unread posts line'.

I wonder how other forums handle this. There are several forum packages that track things on a per-thread basis; do you suppose they keep an entire record of the threads you've read? Probably not, because as you point out, that would be rather prohibitive.

I think that it would be better, storage-wise, to turn things around and store the posts you haven't read. You would have a timestamp of last visit, and at the next visit, update that list with all active threads since that timestamp.

This way, you only store unread posts, although certainly the update mechanism is more complicated.

The main thing I don't like about the current global solution is that occasionally I want to skip certain posts I know will be quick to read, but am not ready to read a post I know will take longer to read and/or reply to. So occasionally, I need to let several threads pile up.

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
[Go to top] top

Posted by Nick Gammon   Australia  (18,801 posts)  [Biography] bio   Forum Administrator
Date Sun 04 Oct 2009 08:37 PM (UTC)  quote  ]
Message
In the graphic, after 8:11 am, someone must have posted a couple of more points to the other theads. I read them, and since that person was not me, it updated the "last post read" number. Thus, posts after 8:11 am were marked read (in this thread's case at around 9 am by you, Worstje). Then I replied to a couple of them at about 10:38 am. These replies (since they were by me) are not counted.

However I state again, that I know I don't need to go back and read them again, as my name appears as the last poster.

So basically, "above the line" you skim and see if any posts are there by a person other than yourself, in which case you need to read them.

You haven't explained how I might "fix" this - apart from maintaining a table of over 272,732,715 entries, which would not only be large, but have to be constantly updated, and checked, as people read forum posts.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


7,307 views.

This is page 1, subject is 2 pages long: 1 2  [Next page]

[Reply to this subject]  Reply to this subject   [New subject]  Start a new subject   [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

[Home]

Written by Nick Gammon - 5K

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( http://www.gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Internet Contents Rating Association (ICRA) - 2K]    [Web site powered by FutureQuest.Net]