Exactly. That’s what I meant about features being a plugin vs. bloating the Core.
I don’t see optional core functionality as bloat - at least not if the required code modules are loaded on demand, which I believe happens with RequireJS within Discourse.
Besides, I think much of this is terminology. I see any code being developed by the core team as core - whether they decide to implement it as optional, user installable modules or not. Whereas, 3rd party modules I see as plugins. This differentiation allows a systems integrator to understand risk, in terms of future support, when undertaking tool selection.
For example, I’m more likely to opt for a system that met 80% of my needs from core, rather than one that met 90% of my needs from a mixture of core and 3rd party plugins.
Edit, and when assessing the risk associated with 3rd party plugins, I’d think twice about using a 3rd party plugin to deliver event messaging functionality - which I see as core, or not at all. Perhaps this is my investment banking training where absoluelty everything had to be tested to exhaustion and every issue found, subject to the most rigorous of forensic analysis. Mind you, these were systems moving $trillions a day, so perhaps a slightly different use case. Although everybody expects their software to run cool, fast and reliably, immaterial of sector or price.
What about some simple kind of “ownership” of messages. Post xyz is “owned by” a specific user, with options to assign/take ownership, maybe even for specific groups only? Wouldn’t that solve the original issue?
(Could be a fairly simple plugin even)
An added advantage would be that this fits in nicely with the support portal work in assigning and grabbing support group messages.
Do you mean something like what GitHub does?
I think this seems great! It can be a plug-in if @sam doesn’t want it to be enabled by default.
@cpradio: But not all sites that use Discourse are there to discuss things. While there are discussion sites like this, many sites like Sitepoint and Codecademy use it to provide a suppot portal kind of experience where one user question has a particular definitive answer. In that case, even if multiple users type replies - they are bound to be the same thing.
If @sam isn’t interested in “typing now…” feature, then even the “Assignee” feature could be great. The first user to see a post which he can answer could assign it to himself. But the very large downside of this is that not all users can use this feature (only Moderators/Admins), can they?
Yep. Exactly something like that.
Except, for Sitepoint, I still stand by my statement. In fact, I know Sitepoint wouldn’t want it. Although we get a lot of question/answer topics, we don’t want to discourage others from replying, even if they give a similar answer.
Oh, I just noticed you are Sitepoint staff
Perhaps it is only me, but I don’t see the point in giving the same replies. Aren’t they a waste of time and energy? And this feature wouldn’t completely discourage similar answers, in the sense that once person A posts a reply, then, person B can see that reply and post his own if he feels A’s reply isn’t satisfactory. While A is typing, B can wait and go to any other topic.
Just speaking for SitePoint, we get a lot of CSS questions, for example, which can be solved multiple ways. Having several different members offering slightly different solutions is actually more beneficial than only allowing one reply.
And not only CSS and not always different solutions. But said differently.
By coincidence we recently got this one
How do I remove the "zz" from top-left corner? - HTML & CSS - The SitePoint Forums
Three toe-to-heel replies
The first member posted the HTML code where the problem was.
The second posted this, explicitly identifying the problem area, (and Liked the previous post)
It’s contained in a
<p>
tag inside a<div>
with a class of ‘wpb_wrapper’ - if you can find out what’s generating that, you’ll be able to amend it.
Edit: @Rubble beat me to it.
and the third posted this specifying the line number.
Bravo Rubble you beat me too it… line 412
<p>zz</p>
Which one helped the OP the most?
For me seeing the mark-up would be enough, but for others knowing the line number would be the most help. others might prefer searching for the class attribute.
I went all out on my thoughts in that Presence Feature topic. What I said in there, I stick to today and forever.
To where the very feature suggested in this thread is to be part of a plugin I am determined to make as a “first project” in learning the languages in Discourse’s stack.
I do a lot of “chatting”. Rather, I use “chat rooms” for intense writing sessions with others (aye, Roleplay).
Also, for actual discourse. I may not look like it in some ways, but I am heavily into philosophy, esoteric topics, spirituality, religion, mental illness issues in society, stigma; the heavy stuff.
Knowing when someone is typing allows me to shut up and wait. But, aye, I look like the type to turn something “dry” and “pedantic” into a textual high-contact sport.
Someone like me needs “the flag” so I slow my intense drive. I do not want to overwhelm those brave enough to take me on in discoursin’. *grunt*
I Hate chat rooms. Hate them. Reduced to some basic text field, no buttons for markdown akin to a well-loved word processor, no safety saves on my current writing 'cause I already congested that dinky text field with 500+ words in ~10 minutes. To lose that? Happened before; made me go into a panic attack and require Ativan. Then, no preview of my markdown and no ability to go back and edit my writing once I do enter it. No wiki features; that would elevate my writing so others can contribute. I am getting the heart-racing now just thinking about it; the possibilities.
But I feel cramped with “chat”. Monster Guy; tiny writing space.
Discourse (with nominal capital D even though it start th’ sentence here) is a dream for someone like me, a discourser (a philodator). Truly, the name of this web app was a snare; reeled me in and I consented to the seducing gravitational pull.
And why I am here today, help out as I am able, despite a lot of problems in my life preventing me from truly digging into this gift and helping out even more with that hands-on, intimate experience under my cranium.
Biggest problem is this lack of presence feature; especially the one detailed here. And why my mind stops me from installing Discourse locally and get to work.
Without something like that, I truly feel I am going in blind. I used that same word from the previous topic.
Chat is too quick in nature. I get the sensation of needing to hitting enter with every few bits of writing I make. Hate that. Makes it look messy too. Not like the neat presentation Discourse provides so well. And from this behavior, when someone sees a discrepancy in my cognitive process and the logic chains from it, they want to type. They see “Tarak’ha is typing.” and they suddenly stop.
The mere celestial epoch I see the flicker of letters near the place my mind expects "<name>
is typing." --I stop. They see that. They know what I did. But, I further it with my own “flag”.
(Two separate teams. Second one scrolls down to five more of the Xerox-copy same.)
(That is Mattermost; great open source Slack alternative. But not great for what I do.)
Not spamming you all with *listens*
here. Maybe with my verbosity but not chat lines.
But, here on Meta, I do have the frustration of typing ~100 words and then suddenly a reply pops up, with a form of the answer, or another question I now feel the need to address, and change some of what I have down already, go on a new path.
Aye. *exhale*
I say all this as I do not want anyone to think my original intent was to turn Discourse into a chat room. Makes me think of the noise I personally associate with social networks. Oh, you know my ire for them.
Said my bit, again, as in the Presence Feature topic. I know I am only one person, with a unique reason. I see all these reasons to not have this feature be like high school drama, or at least it sounds that way. Not to devalue the concern those whom be against this feature. Hell no; you love Discourse as much as me to be here and stand with your words. I respect that. Thank you for caring and being overwhelmingly passionate like I am: a serious psycho-psychologin’ community manager, and someone writing to be heard, to find peers and make a difference.
Thank you for your *listens*
Ok, so this thread is being stretched in different directions. Let me again detail my point and provide proper explanation:
Why is this feature needed?
Often, I find myself writing a reply and after having reached say 100 words another member posts a reply. So, I lose my energy and valuable time that could have been utilized in answering some other topic.
As you’ll see in Argument Against 2 below, this could be a plug-in or a core feature that can be disabled forum-wide or in specific categories if the forum staff thinks so.
How will it work?
- When you will open the “Reply” dialog box, even before you start typing, you will get this:
see the text near the bottom
that way you will know that someone is working on the topic and you can go and answer any other topic. If you’re really interested in what the other person might post, you can simply set the topic to “Watching” status so you get notified when the reply is psoted.
Argument against 1:
This won’t happen. I can explain like this:
- Two persons A and B are online.
- Person A opens a topic and starts writing a reply.
- Say 5 seconds later, B reads the topic and launches the “Reply” dialog box but hasn’t yet written anything.
- B will see the small text near the bottom saying that A is working on this topic. But, since B hasn’t started writing, A will not see that B is working on the topic.
- So, while B will leave the topic so that A can answer it, A will not leave the topic because he never came to know that any body else started writing.
- Even if B started writing:
- As soon as B realizes that A is typing and B deletes all what he had written/closes the tab/navigates to another webpage, the notice for A that “B is typing…” will disappear, since B really did stop writing.
- (I think there is a very low probability of this ever happening, because most of the time B will leave, but I got to cover all the cases) A might wonder why is B writing? So, he can just PM him or chat on Babble.
Argument against 2:
You made a good point. But not all sites that use Discourse are there to discuss things. While there are discussion sites like this, many sites like Codecademy use it to provide a suppot portal kind of experience where one user question has a particular definitive answer. In that case, even if multiple users type replies - they are bound to be the same thing.
Argument against 3:
I don’t know how this got conveyed to you, but I never intended to say that I want replies from other people to be prevented. As I said before, when you’ll see that other person is working on a reply, then you can always set that topic to “Watching” (and till the time inspect other topics) and when the other person posts his reply and you think that no this isn’t satisfactory then you can always add your own reply next to it. Remember that the notice is a polite “n users writing” not “YOU CAN’T PROCEED BECAUSE N USERS ARE WRITING”
Argument against 4:
It will eat up bandwidth
Discourse already has real time notifications for likes, replies, etc. I don’t know how much bandwidth will be eaten due to a text less than 50 characters long.
Now, please stick to this format while providing any argument against this feature proposal. Thanks!
@sam Please provide your feedback on this improved version of the feature.
You are making a very strong assumption here, you are assuming every white box I filled has been submitted. I have lots of drafts, lots of other people do as well.
Just cause I started typing does not mean that I am going to finish typing now and click submit.
The information that someone is typing is a deterrent to replying on a topic, by-design. I am very uneasy shipping a feature that deters discussion.
As I said, I am open to having this feature where “deterring” posting is desirable, we have 1 spot in the system for this, replies to “group” messages by “group members”.
Technically once it is built for that it can be enabled globally, but I am not that keen on the effect it will have on communities. At least “Sam is online” somewhat encourages participation, this feature stops it.
This is not really a concern to me.
Thanks for the super quick reply @sam
Is it possible to implement this in a way that if a person wrote something, left it as a draft and then closed the tab/navigated to another webpage, then the notice that “he is typing…” will disappear for other users?
Sure, but I can not build a time machine
- @codinghorror starts typing
- I see that he started typing when I open composer
- I go away
- @codinghorror does not submit reply
- Profit ?!
I did not take that into account Can we think of ways this thing can be prevented? Like, currently what pops into my mind is:
- a “remind me” feature that if the other person does not post his reply in say 15 mins then give me a notification.
- That post will remain in the category (or the Latest tab) from where I originally reached it. So, while I am browsing other topics, if I see that the topic which i left for person B hasn’t yet received a reply then I can again go and check it out.
- the 3rd bullet - “I go away” - might not happen if it’s a discussion site like this. In a discussion site, if there are n people typing, then they might be posting n different things.
- A built-in one-click Babble message like - “Please let me know if you don’t know post a reply to xyz”
Thoughts?
This. I only need to know when they are typing. A long pause makes it clear they stopped. Same as in Mattermost and previously, Skype (ugh).
I picked Mattermost for this reason. Just to get away from Skype, and know Discourse is not a full option for me yet. No problem at the moment where ~4 individuals are taking turns by this simple flagging cue. Same as looking at someone in person, and understanding those body cues speaking the same thing: “I would like to speak.” “Go ahead.” *listens*
Now, in Sam’s defense, I see what he is saying here. You go to a topic fresh off the composer, and already you see three people typing. “Oh, dammit. They might be saying what I wanna say. Ehhhh. —Ghrrrr.”
NodeBB has this precise feature, with blinking icons denoting typing, pausing, or having left the thread/closed the composer. I participated briefly on a forum powered by NodeBB. That feature was the only saving grace and I was high. NodeBB has a lot of dedication and drive put into it; I outright feel that. Just, everything else about the software does not feel right to me for really good, simple discussion. And have Trust Levels; the feature that keeps me coming back to Discourse. Based on real research and also helped me discover great new books to learn more about it. That too makes me high.
That presence feature nearly made me go to NodeBB; could not do it.
So, this feature is already in practice. Why not Discourse.
Also I am not the type to continue fighting when Free Will not mine decides. That I respect as that is life.
EDIT: Want to clarify my intended use of Discourse will not consist of a few users. I plan on using Discourse to fuel the blog I want to use to brave the open and share a lot of what I feel and what I know. And, revive my ten year community, as some members are still waiting for the re-opening, knowing I am doing all of this for them. Will not give them anything less I would not use for myself.
You made some good points @purldator!
Perhaps, @sam could discuss with NodeBB forum managers regarding whether there has been a reduction in forum activity due to these features? The scenario you listed is definitely possible and something that needs to solved before implementing this feature. You could think of this scenario, surely you can think of a solution as well, can’t you?
That’s a zero sum game. Why? Come back in 15 minutes and if somebody else has started typing in the meantime what do you do?
Don’t get me wrong, I am pro this feature. But it needs to be elegant, simple and most off all conducive to generating traffic, not preventing it.
Perhaps the solution is very simple. Allow the feature to be turned on or off dependent on the type of communication being discussed. For example, if anybody here would like to discuss the relationship between Paine and Jefferson with me, I’d expect each of our replies to be considered, widely spaced and probably quite lengthy. Presence feedback needed here? No. I’d post because I want my point to be recorded there and then, immaterial of what anybody else is doing.
On the other hand, in fast moving forums, especially where there is ordinal significance, presence would be welcome - even if we only show which logged in members are currently viewing the thread.
As @purldator put it:
To that I’d add, not just NodeBB, which incidentally I feel has much more going for it than presence, but even many of the most skeuomorphic of old school forums have this feature available in one form or another. And I worry that when I read discussion about potential new features on Meta, that they often become dead dogmas, simply because folks frequently focus on the negatives, rather than the positives.
This feature is now supported by a plugin:
https://meta.discourse.org/t/discourse-presence/48420?u=erlend_sh