Is this really better than a mailing list?

(Jack Jansen) #1

I’m probably showing my age here, but do people really think that this is better than a mailing list?
It is pretty quiet still (unlike the pronounced-dead mailing list, where discussions about this forum seem to be ongoing), but that may be teething problems.

The real problems to me is that forums are an unstructured bunch of random discussions with no history, whereas a mailing list is at least structured temporally (as its major axis) so I can easily see what is new, and easily “feel the waters” about what is being discussed at the moment…

(Łukasz Langa) #2

If I understand correctly, you mean that given a previously “marked read” mailing list subscription folder, you can easily see which topics gathered new posts in the time you weren’t watching?

Well, Discourse has this (just like any other forum software if you mark things as read). But it has also more interesting things like the Top view where you can see which topics generated the most discussion this year, this month, this week, and today.

Topics themselves are linear which aids in faster reading and discourages digressions. But if you need to answer something out of band, you can with replies.

Then, while reading a long topic, you can see how long it will take you and where you are.

I agree we don’t have content to see this yet. Look at, say, to see what I mean.

(Donald Stufft) #3

If you’re asking does anyone at all think it is? Unequivocally yes. I was not involved in this particular decision, but I’ve suggested doing it in the past.

(Pablo Galindo Salgado) #4

Also you have:

  • Much better and granular moderation
  • Code highlight
  • Editing messages
  • Mailing list interface (if you only want to use email). You can answer by email and read only by email.
  • Much more granular subscriptions, based on categories, topics, mentions…etc
  • Search
  • API
  • Topic repetition and suggestions

(Donald Stufft) #5

You also have a UI that makes a lot of things easier, for instance you can selectively quote multiple people within a single reply by selecting the text you want to Quote, and hitting the “Quote” button that pops up. Not only is this pretty easy to do, but each of these quotes will, by default, link back to the original context so you can see each of them in the full context, even if the quoter omitted some text. I’m not aware of any mail client that makes both of those things possible much less easy to do.

Another nice thing is that as you’re writing your reply, you will see additional incoming messages (and can quote them etc). I won’t pretend I’ve used every mail client client or nntp reader or what have you, but I feel like this alone will help cut down on some of the repetitive “ganging up” that tends to happen in mailing lists where person A will say something, and then 7 people all chime in with practically the same message, because they all in parallel hit Reply to the email and were busy typing their reply instead of reading new incoming messages. For instance, I saw @ambv response come in as I was typing something similar, so I just edited the repetitive discussion out before I ever hit the send button.

I think these are pretty important features to help combat a growing problem on our mailing lists where discussions tend to amplify the total number of emails being sent because people are incentivized by their clients to either do a 1:1 mapping of replies to emails received instead of coalescing into a single email or dog piling onto each other in a race to response with the same content.

(Paul Moore) #6

I don’t know if adding a reply here is the right thing, or if I should start a new topic, but I have some questions:

  1. Is there a way of getting the threads to show “real names” rather than handles like “ambv”? I find not seeing an individual’s name when reading a comment a bit depersonalising.
  2. How do I see “all the new traffic”? My email shows me anything that’s new as unread in a list. I’m not sure how to see that here. For a while, I thought nothing was happening here, till I discovered (somehow!) this thread.

I’m not looking to say “but I hate change and want email”, but I do want some sort of beginner’s guide to how to gradually move from my email-based workflow to a forum based one. And I do want something that doesn’t try to tell me that the way I currently work is “wrong” (which is a feature of a lot of “we should switch” proposals on various lists I’ve been involved in).

(Donald Stufft) #7

This is an Admin setting, and we probably want to enable it (I don’t have that power though).

Discourse functions a little bit differently than email does in this regard. By default it doesn’t track your personal read/unread state for every single thread (since doing that on large forums would be wasteful, particularly if there are areas of the forums you don’t personally care at all about).

Instead, there are few levels that a particular topic (or category) can be in for you personally:

  • Muted: You will never receive a notification from this thread/category/etc even if you’ve been explicitly mentioned.
  • Normal: If someone directly replies to a post you’ve made or explicitly mentions you then you will get a notification.
  • Watching First Post (tags/categories only): You will receieve a notification for the first post in each thread, but otherwise each thread will be set to the default (Normal).
  • Tracking: You will not get a notification if a new post is made, however you’ve told discourse you want to track this category/tag/thread so it will record what the last thing you saw is, and show you unread markers etc.
  • Watching: Like tracking, except you’ll also get notifications for every reply.

Now if you just want to see the latest posts, there is a link at the top of the page that will show you them, regardless of your tracking state for the posts. If any discussions you’ve set to tracking or watching have any new activity, beside the Latest link will also be a Unread link (I forget the specific wording of it) that will show you threads that have had activity since you last looked. If there are any new threads that you haven’t seen, there will also be a New link at the topic.

By default all categories are set to “Normal”, but if you browse to a category you can alter the settings for that specific category by hitting the circle in the top right and selecting a new default for that category.

On the individual thread level, the default will be whatever the default is for that category. But you don’t have to manually track or watch each thread you care about. Under the Notifications area in your settings are settings that let you control the automatic flagging of topics as tracking or watching (outside of changing the entire default for a particular category). By default if you’re reading a thread for more than 4 minutes it will set that thread to tracking for you, will set any thread you’ve replied to to tracking, and will email you the first time a thread is liked. It will also consider any threads made in the last 2 days as “New” threads.

Personally, I’ve changed this so that any thread I’ve replied to automatically gets marked as watched so that I get email notification of new replies-- I figure if I cared enough to respond, I probably want to see new replies via a pushed based notification. I’ve left the automatically setting to tracking after 4 minutes alone, 4 minutes is enough that if I click into a thread and immediately decide I don’t care and click away it won’t get marked tracked, but short enough that if I spend any reasonable amount of time there it does get tracked. I also set “Like” notifications to Never, because I don’t care to get those, and the “New” post threshold to a week since checking in once a week seems reasonable to me. I might end up setting “Watching First Post” as a default on categories that I care a fair amount about, but not enough to auto watch every topic.

You will probably want to tweak those settings to your liking.

Hopefully that was helpful. We might want to consider changing the defaults here too, I find the tracking after reply default particularly annoying personally, especially coming from mailing lists, but others might feel differently.

(Łukasz Langa) #8

I enabled it. It’s a bit more verbose but I guess this is acceptable.

@pf_moore, the usernames are important in that they are used in quoting and mentions. As for “new user tips”, I find this useful:

(Donald Stufft) #9

Oh one thing I forgot to mention, if you’re currently active on the site, by default Discourse will not also send you an email as a notification, with the idea that if you’re on the site you’ll see the badge that appears on your icon in the top right of the page and sendign you an extra email is just noise. However there is a setting that will have you still get an email even if you’re currently active (I believe active is defined as having requested a page within the last N minutes).

(Paul Moore) #10

OK, so that’s a major issue for me, as that’s completely fundamental to my workflow (skim-read the whole firehose, pick stuff I want to contribute in more detail to). I’m going to struggle to develop an effective workflow without that facility. The best I can assume at the moment is that I’ll miss some threads I really would prefer not to. How bad that will be remains to be seen.

You talk about notifications. I’m going to ignore email notifications on the basis that if I interact with this solely via email, I get none of the benefits of the new tool, and the email experience will be at least somewhat worse, as it’s by definition a compromise. I view it as similar to github email notifications,which are adequate but suboptimal (I have notifications on for everything to get the feed I want, but then always have to click on the “View in github” link to interact - it’s just about sustainable for the level of traffic pip gets, but breaks down for anything higher like cpython).

So what notifications would that mean? Where can I see them within Discourse? And is there a way to get the workflow that’s effective for me, namely:

  • A per-category list of “New content in this thread” links that I can click on to open up the discussion, with already-read content de-emphasised and content I haven’t read marked somehow.

That’s basically my workflow at the moment. It enables me to read stuff I need with little or no “getting back into the flow” switching time, context available when I need it but no need to remember for myself what I’ve seen and what I haven’t. “Mark an item to come back to later for a more considered response” is a useful extra - too many of my replies end up being off the cuff otherwise. In email, I use draft replies for this. Is there a way in Discourse to do the same? I’ve just looked and see no obvious way to save the reply I’m currently typing and come back to it later to review and correct it before sending. I see it pops up “saved” occasionally - maybe if I just leave the conversation and come back it’ll still be there - but is there a list of “All my drafted but unsent replies” anywhere (the equivalent of GMail’s “Drafts” folder)?

(Paul Moore) #11

Hmm, in my head “active” = “Has a tab open in the current browser”. I can imagine Discourse’s heuristic being a little too conservative.

I’m also going to stop now, as I find keeping track of the discussions here far more tiring than doing similar in email. I’m very lost right now as to what’s going on in just the threads I’m contributing to, let alone anything else. I’m willing to assume for now that’s just a learning curve problem, but if it’s not, then I’m definitely going to be less able to contribute on Discourse than I was on email. We’ll see…

(Donald Stufft) #12

I think that your workflow is exactly what the Discourse setup is best at, skim through the new topics and find ones that you want to contribute to. If you contribute to them you’ll start tracking them more closely and will get unread counters and notifications depending specifically on what level you’re tracking them at (tracking or watching).

I’m not sure I understand how that’s incompatible with your current workflow… but if you want it to track unread counts for everything in a particular category for you, just set that particular category to default to tracking (or default to watched if you want notifications) and you’ll get that.

Notifications show up inside the discourse app as unread icons over your user icon in the top right of every page, and if you click on that it’ll show you your last few notifications (earning some badges is probably some of them). If you click the little down arrow at the top of that page, it’ll take you to a dedicated page showing you a list of all of them.

If you enable browser notifications, Discourse will also send you browser native notifications.

Set the topics or the categories you care about to Tracking (or Watched if you want push notifications), when there is something you haven’t read the word “Unread” will show up on the top of the home page and on each category page, a long with a number to indicate how many unread things there are (like Unread (5)). Click that and it’ll show you topics that have new conversation for you to look at, and when you click on a specific topic it’ll automatically take you to where you left off. Also if you’re just browsing a category, there will be a red line that indicates what topics have not received any activity since you last visited that category.

Saved replies does allow you to come back to a thing you’re typing and edit it like you said. I’m unsure if you can have multiple saved replies or if it’s just the one. I’d have to play around with it to determine that.

I’m not entirely sure what their heuristic is to be honest.

I think it’s part learning curve, and part that there are like 3 similiar-ish discussions happening on sort of semi random topics :). That should get better as people get used to the UI though, but it can be somewhat disorientating to remember which of the three semi random topics you made a similiar-ish sounding post (I know I’ve lost track of that). I don’t think that’s unique to Discourse though, I’d have the same problem in any medium.

(Paul Moore) #13

I don’t think in terms of topics/threads, I think in terms of emails/messages. In gmail, in each mailing list, I get all threads displayed to me, with the ones with new messages at the top. I open the oldest thread with unread messages, and the text of all the unread messages is visible to me (already-read messages are in the same view, for context, but are collapsed). I skim through the messages (from oldest to newest) paging rapidly through ones I’m not interested in. When I reach the end of the thread, I hit the “next thread” button to go to the next thread with unread messages.

Once I’m done with a mailing list, I skip to the next one. Mailing lists are presented to me in in a list view with the ones with unread messages highlighted, and the number of unread messages shown. That list is in a sidebar, so I can see it even while reading messages - so I can navigate between lists rapidly, and pick which list to read next based on number of unread messages (“I have 5 minutes, let’s pick a list with not too much traffic”).

How do I replicate that workflow in Discourse? The UI for reading and replying to individual messages seems great, but the overview seems to be missing. Right now, I picked to reply to this message, but I’ve absolutely no feel for how many other messages have been posted in the committers group since I last visited the site, much less how many there are in other lists. That’s where I fear missing stuff - for example, I don’t know if a major discussion has flared up anywhere.

(By the way, thanks for the helpful explanations - I know I must seem like I’m coming across as complaining that “it’s not like I’m used to” but really I’m not, I just want to know how to get the same sense of “having a feel for what’s going on” that I have with email.)


(Paul Moore) #14

Actually, I just noticed, that’s a critically-bad aspect of the Discourse UI for me. There’s nothing that shows which messages in a conversation I’ve already read, and which are new. That’s probably the key thing that’s contributing to my feeling that I’m floundering around trying to work out what to look at :frowning:


(Paul Moore) #15

Also, why is this thread showing in my notifications mentioning Eric Snow?


As far as I can see, he’s not replied to me, nor has he contributed to this thread. So why do I see his name? Am I missing a message somewhere?


(Łukasz Langa) #16

If you take note of the icon next to the notification, you’ll notice it notifies you that Eric liked a message you wrote. If you click through the notification, you will see which one.

For many people, this gives them a warm fuzzy feeling of being heard and agreed with. If you personally find no use for it, you can change this:


Discourse topics flow linearly so all Discourse needs to do is to show you which topics are new or updated. It does this by showing you when last “Activity” on a topic was, and even delimiting what’s new since your “Last visit”:


If you click on a topic with new replies, Discourse automatically takes you to the first new reply. Again, thanks to the fact that discussion is recorded linearly, this is all you need to read forward. I find this a big advantage over mailing lists where discussion tends to explode in a tree form.

This mental model will not translate well to Discourse. I’m not surprised this feels new, just like GitHub pull requests are nothing like posting patches on and reviewing them on Rietveld. I can see how this is disruptive to a well-tuned e-mail workflow but just as with the change to git from Mercurial, and to GitHub PRs from Rietveld, I believe that there are benefits to trying the new for a while.

(Paul Moore) #17

I don’t dislike the idea of getting likes, I’d just like them to be less obtrusive. I have the same problem with bpo - status changes are notified on an equal par with actual information, so I get flooded with notifications (emails, in that case). I’ll try changing that setting.

I’m sorry, but that’s not true - and I don’t really like the implication that you know what I “need”. I need to see what messages I have not read, and not see those I have, otherwise I lose my position in a discussion. It’s (just about) tolerable in github issues, where the thread is typically short and to the point, but it’s not OK in the longer threads that we see in the discussion lists (and we’re already seeing here).

So how hard would it be to fold away the replies above that point (with a button to expand them)?

I don’t, and it’s nothing to do with “tree form” (I use GMail’s web interface, so I don’t see email in tree form, either - linear form is not new to me and I have a well-developed workflow for linear conversations. It’s to do with “if I scroll back up to read something earlier, I lose my place”.

I’m trying it - that’s the whole point of me replying here rather than carrying on the discussion on the mailing list. But so far I’m getting bogged down because I’m trying to express my requirements (not ingrained habits, nor preferences built up from emails, but actual requirements if I’m to participate effectively) and I’m getting told “try the new way” - which doesn’t tell me how to meet my requirements “in the new way”.

For an example, see above. I need to be able to have a clear view of “what I haven’t read yet” when scanning a discussion. Being positioned at a certain point is temporary, and so does not satisfy that requirement. Suggestions? (Please don’t suggest “learn to not need to know what isn’t read” or similar - that’s not helpful except in proving my point that my requirements are being ignored :-()

And to reiterate something I said somewhere else (which I’ve no idea if you’ve seen because I have no clear picture of the discussion structure here) - there’s an awful lot I like about the Discourse interface. I’m not commenting o thatbecause it’s good, and an improvement. I also hope I’m not commenting too much on “minor niggles” that are about preferences, or the difficulties of switching habits. What I’m commenting on is places where I simply don’t know how to do what I need to do to communicate effectively. And so far, I’m not getting good answers. The result is, that it’s feeling quite possible that I’ll end up not being able to interact in the Python lists as effectively as I have in the past. That’s fine (in general, not for me) as there will always be some winners and some losers in a change. But it’s emphatically not fine to ignore the fact that people are trying to tell you they are losing out.

Is there any work going on to collect data on how people were affected by the switch? Note that a poll or survey after the experiment is complete is not effectively, as it self-selects against people who are struggling to be involved under the new tool. People who are trying to tell you that they miss seeing important votes will, by definition, be unrepresented.

It’s early days, and not worth making it a crisis yet. But collecting early impressions and people who drop out at the start is something that can’t be done after the fact.

(Pablo Galindo Salgado) #18

I don’t, and it’s nothing to do with “tree form” (I use GMail’s web interface, so I don’t see email in tree form, either - linear form is not new to me and I have a well-developed workflow for linear conversations. It’s to do with “if I scroll back up to read something earlier, I lose my place”.

When the thread is long and you have unread messages you have a back button on the scroll bar. I don’t know exactly the details of this element (or if we need to activate it somehow) but the feature exists. Is this more or less what you were searching for?


(Łukasz Langa) #19

Sorry if I made it sound like I’m projecting what your needs should be. What I was trying to say, and I still believe is true, is that if you think of a “topic” as the main unit of discussion, and replies flowing “down” in this discussion, then taking you to the first unread reply when clicking on a topic lets you resume catching up.

Losing your place in discussion assumes you’re scrolling up, I guess to refresh your flow within the topic, or clicking through quotes to get to the source. That makes perfect sense to me. There is functionality to help you get back to the reply you were originally looking at (see the “Back” button):

Surprisingly, I don’t see it consistently appear, at least not on Firefox :frowning: I guess this is a bug we should report.

Now, a more general note.

It’s been less than two days since the introduction of Discourse. In this time you posted 14 times, sometimes using rather loaded language like I quoted above. Both the volume and the language undermine what you’re trying to communicate. Nobody is ignoring you, Paul, and I am confused by your claim that you’re not getting good answers when you thanked for helpful explanations in that very same thread above.

It’s natural to find things confusing for a while, I know the feel of losing your place, not knowing what a given notification wants from you, and so on. This is why @dstufft and I try in this thread to both explain how Discourse works and suggest you give it a few days. The point with this suggestion isn’t to shoot your concerns down. The point is to acknowledge that this new tool is necessarily different and some things might take a while to get used to. If your concerns persist and you come back after a few weeks saying “this thing is a critical loss of functionality to me”, then that will hold more weight than a set of what appears to be emotional reactions posted within the first day of using the tool.

To take this back on track: it looks like we identified a bug in the timeline functionality designed to help alleviate your valid concern around losing your place when scanning a discussion with new replies. This is helpful, we’ll report it and get it fixed. And in general, taking the Discourse test so seriously is helpful, thank you for that.

(Pablo Galindo Salgado) #20

I think it may only appear when the thread is long enough and you have unread messages. But it could be a bug as you say. We may contact the discourse support.