Sign in to follow this  
  • entries
    375
  • comments
    1136
  • views
    297534

Reworking the journals

Sign in to follow this  

113 views

One of the things I've been working on - for quite a while now - is a rewrite of the Journal software. The main reason for this is that the way journals are currently structured - one huge thread per journal - is pretty poor from a performance point of view. Viewing a journal entails scanning the entire posts table for posts with a particular reply 'depth' and thread ID, which isn't great - even with an index on the reply depth (which is used by nothing else on the site) the posts table is still orders of magnitude larger than the topics table.

What we should have is an implementation whereby every journal entry is a new topic, and then comments are replies to that topic. Switching to this will not only be a performance win, but it will be a functionality win as well - some things are simply impossible to support under the current journal implementation (for example, closing comments on a single entry), while other things are needlessly duplicated (for example, RSS feeds - if a journal is just a collection of thread-first-posts, we can reuse the RSS we've got for providing feeds of a forum).

There are also other changes I want to make with regards to the way journals are actually retrieved and rendered - to the extent that I'm basically rewriting them from scratch, using tasty things like XML queries and XSLT to make it clean and fast.

One of the things I can change is the way the right-side bar is rendered. I'm not massively happy with the way the bar looks on journals currently; the calendar isn't particularly useful, the RSS button is obsolete, and the monthly links are just run together into a single unstructured list. You can see my proposed replacement here.

The biggest thing I'm not sure about is whether people will be upset by me dropping the Calendar. I think it's fairly useless, but I know some people enjoy making little patterns on it and so on. Implementing it will take a fair bit of work - there's a whole extra DB table that appears to be dedicated to it - so if I can get away without it then I'd quite like to, but what do you think?
Sign in to follow this  


13 Comments


Recommended Comments

I might well have said before but I prefer the proposed side bar to the current one.

Also, a couple of 'requests' for a re-write would be;
- a 'post to journal' button which takes me straight to my posting page, right now having to go via the control panel is just annoying and often I'll be checking my journal before I post in order to tie entries together or reply to replies others have made.

- talking of replies; it's slightly bothersome that you can't see a copy of the post/entry you are replying to below the reply box as you can in the forums. This generally leads to me writing the reply in notepad or, in most cases, simply not bothering to reply due to the extra effort involved.

Share this comment


Link to comment
I like it. It provides much more useful information than the existing design. [smile]
Quote:
Original post by phantom
- talking of replies; it's slightly bothersome that you can't see a copy of the post/entry you are replying to below the reply box as you can in the forums. This generally leads to me writing the reply in notepad or, in most cases, simply not bothering to reply due to the extra effort involved.
Yes, this is rather annoying but understandable given the current architecture. I'd imagine that changing the design to a single topic per entry would fix this, as well as correcting the bug where replies are displayed out of order? (Unless that, too, has already been fixed).

Share this comment


Link to comment
I like the idea, but erm.. is this why I'm seeing all the journals out of order? Also, are you planning on changing the RSS feeds so they show ALL of the most recent ten posts rather than snippets?

Share this comment


Link to comment
No, I accidentally broke something else, which I've now fixed. Journals should be back in order now.

And yes, we're going to turn on full post content for the RSS feeds. We're also going to support RSS 2.0 and Atom, so HTML will come through correctly.

Share this comment


Link to comment
I would agree with all of the statements made above. The calendar is pretty much unused by me. I guess since everyone is pushing their wishlist...

1. Make the screen width independant of the poster's screen resolution. I hate having to scroll to the right to read someone's journal posts...

2. A while back you mentioned WYSIWYG editting - please implement this!!!

Share this comment


Link to comment
Actually the calender has been very useful to me because some entries get lost to the void and show up nowhere else but the calender. An example of this in my journal is the December 31 2005 entry that can only be seen or found by the calender.

Share this comment


Link to comment
Jason: The journal page as a whole /is/ independent of screen resolution; the problem is that people sometimes post wide images that stretch the whole table. It's quite difficult to solve that one; I can see about an approach that only stretches the post containing the image, at least. And yes, WYSIWYG editing is planned but will come as part of a much larger site upgrade, rather than just in the journals.

bakery2k1, Corman: Yes, I'm aiming to fix all bugs like that during the course of my rewrite. Doubtless we'll end up with a whole new set of bugs instead, but a more robust design means it should be less "entire entries going missing" and more "slight formatting glitches."

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now