You can see it in action if you visit the BoingBoing forums (http://boingboing.net).
I'm not saying Discourse is bad, but if you plan to migrate an existing Disqus userbase, expect quite a bit of backlash.
Not yet very much integrated, but that shouldn't be a problem given the REST API of Discourse.
At the pure tech level it's not equivalent. One required the ability to cut and paste and be done in a few moments, the other requires you to implement your own interface against the REST interface.
For a drop-in replacement, although not open source, I think moot.it looks pretty good: https://moot.it/
They're aiming at the embeddable market for comments and forums and have a pretty nice product.
As always... what's the full use-case? What are they trying to achieve? What are the priorities guiding the decision making process?
Discourse wins if the important criteria here is open source and the person asking the question is fine implementing the integration using the REST API.
Moot.it wins if you just want a drop-in replacement and that trumps the open source.
Writing your own wins if you want a project that will take far longer than you anticipate :)
Or that the length of the comment and insight/wit/whatever increased?
Quality and length of comments has gone way up.
Turns out that the extra click required and registration weeds out a lot of the problem comments.
I also find that giving people space, proper preview and excellent followup makes a world of difference (Discourse has reply by email, notifications and so on)
Originally I was considering adding a traditional, add anon comment box, but I am not really that motivated to do so.
If you're going to install a commenting software locally, static hosts like Github and S3 are out of the question already. So you might as well take advantage of a complete blogging engine. If you don't like WordPress/PHP, just pick something else.
Looks like the best fit in this thread.
I don't need a login system, so it's fine, but I think it is lacking author urls, isn't it?
By the http://meteorhacks.com/ founder @arunoda
1. I host a static blog. this is not just for simplicity and cheaper hosting but also for security - running your own wordpress/php thing makes you into a huge target to get hacked with whatever zero-day was discovered in WP in the last four hours. some of us don't have time to upgrade/babysit wordpress twice a week. Running a standalone comment system would again open my system up to a whole world of potential vulnerabilities I'd rather not have to babysit.
2. a comment system in particular is like mecca for spammers, who are constantly, relentlessly trying to take advantage of such systems. Even if there were an open source comment system I could run myself, you still need to integrate with some larger-world "spam database" type of thing, to identify trends - with wordpress I used to use Askimet. So you need a 3rd party service anyway, why not just put the whole comment thing into it and have them handle the whole thing.
basically with disqus I can plug it into any old blog, not look at it for 6 months, and when i come back, it's still running, hasn't allowed my server to get hacked and isn't loaded with spam.
You will hopefully understand then that i don't like the idea of sending some service data (the information that i am browsing your blog is not something some other party needs to know, let alone my comment and potentially other data). Even worse, a non-tech-savy person may not even recognize that he is surfing two different websites in one and where he is sending data to. Then again, you probably don't care about my comment. But so much for my feelings about disqus and what i think about it.
I'm not at all happy about those things, but this is an issue of tradeoffs - the blog I'm talking about isn't my key business, it's merely a side thing for occasional announcements. My key software project is SQLAlchemy, I run my own Trac instance, and I regularly have to babysit it for when it is getting spammed or crawled or slowing down my server or whatever - but I want to own that data and not give it for free to github, so I make the effort. Similarly, I run my own Jenkins servers instead of relying on Travis and I host them on my own EC2 instances. Services and data which are important to me I self-host. Blog comments for me are not.
If I were running a political blog where I'd like to invite lively discussion from a wide variety of individuals, then I'd probably want to take the effort to self-host. But as we all know, if my political blog is visited by folks the US government wants to know about, I will be coerced into secretly sending all my data to the NSA in any case.
> just for your laziness to maintain a blog software (which _really_ is not that hard).
Of course it's not that hard - but when you say something is "really not that hard", you have to consider that as an OSS developer, I am babysitting literally dozens of technical streams, including services and hosting for my projects and technical issues for all kinds of people every single day, all of which is effort I put out for free, save for whatever I get on gittip. Every new service or software I have to host and babysit adds to what is already a formidable amount of plates to keep spinning - so those things that I do self-host have to be worth it. I write only a handful of blog posts a year which are themselves of little consequence and entirely technical. Nobody needs to comment on them and the people who do are certainly technical.
The existing solution, WordPress, is far too difficult to maintain, and it is some of the worst written software in history - I wrote about the many issues I had with it here: http://techspot.zzzeek.org/2010/11/21/how-coders-blog/ .
I'm in no way implying that a self-hosted comment server isn't a fantastic idea and something sorely needed - if a non-commercial, privacy-oriented organization wanted to host and maintain it for free use by others, I'd switch from Disqus immediately.
All in all, what you are telling me is that your own blog post is important enough for you to not just use wordpress.com, blogger, tumblr or whatever is out there but that your visitors privacy is non-important to you. But you're a tech-savy developer, you're on "hacker news", you should care for at least some basic amount of privacy! ;)
I already had my own solution, but it took too much time to maintain it. Now I'm looking for self-hosted alternatives.
While Django/Rails indeed make it simple to implement per-article comment threads, the hard part is not the collection, storing, and display of comments. It's the fact that you're accepting content from people you don't know or trust and publishing it.
- Can people leave comments anonymously? Few blogs think this is a good idea anymore. So now you need a user identity system.
- Does that mean you're going to have your own user management just for leaving blog comments? Probably not. You don't want to have to manage password reset emails, for example. Letting someone else manage that is more sane. Someone like Facebook/Twitter/Google/Yahoo.
- So do you write integration with all of them yourself? Bleh.
- Then someone leaves a comment. Is it spam? You need integration with Akismet or a similarly powerful engine to help stem that tide. Doing it entirely manually is a huge time sink.
- But not all bad comments are spam. Some of them are ascii-art genitals. Sometimes people just use your comment thread as a soapbox for their personal crusades or get into pissing matches with each other. If you have many comments at all, you need a moderation system to prevent them from creating a hostile atmosphere that drives nice people away.
- You have to ensure that people can't use your comment form to inject a XSS attack onto your page, or exploit some security bug in your web framework to take control of your server.
So people save some sanity by just using a 3rd party blogging service entirely (Blogger, Tumblr, Wordpress.com), or embedding Disqus, or putting a link at the bottom of the post saying "Discuss on Hacker News".
Edit: added the "like social networks" example in the second bullet that was in my head but didn't get into the text.
Ok, i get it, people are just to lazy to do that work (but they find the time to integrate disqus...) but from my point of view they are leading me to a website i don't want to use at all. Disqus is like a hidden website embedded in the one i want to visit. The difference is that I know that and i block that. Other people use that service and might not even recognize that they are leaving their tracks on some other website they don't even know about. And in contrast to the usual ad/cookie tracking they might even leave their email address there.
And seriously... an easy to setup CMS, that has a "user identity system, optional openID, an anti spam measure like recaptcha"? Does such a feature-beast even exist amongst the quadrillion CMS that exist since the dawn of time? (<-- sarcasm)
When i go to blogger or tumblr or wordpress and leave a comment i am aware that i leave a comment on that site, and only on that site. That's a big difference. To me at least.
From my point of view the hoster of a website is somewhat responsible for my user data. He shall not send my password to some other party, or he shall not send my email to some other party, etc. Using disqus only shows that he doesn't really care to the extent i would wish my data to be handled.
Of course it is up to me to use disqus, but, as i mentioned, 99% of people wouldn't know what is happening.
Not intending to sound ofensive nor harsh but 99% of people don't really care with what is happening.
And... as an experienced sysadmin (+15 years), I really disagree that get a VPS+Nginx+Apache+WP+MySQL+OAuth+Akismet running, and them, maintening it long term is as trivial as some Github/Tumblr pages (or a static site generator) with a pasted JS in the bottom of the theme file.
edit: added WP to the list of things to setup.
Why WP? See https://news.ycombinator.com/item?id=6822766
As an experienced sysadmin you are telling me that setting up some basic blog with commenting takes a long time? Why would you even need nginx?! (or apache for that matter)
Having a 3rd party solution for comments is thus necessary (if you want to have comments).
Also by the time you outsource a comment system due to CPU your site probably is big enough for a "real" CMS.. or atleast better hardware, it's not like a good vserver is expensive nowadays.
For example, I have a friend who runs a small business selling music samples. He uses WordPress because it is a simple solution that can do a lot for him without a super amount of technical savvy.
I think WordPress is disgusting, but the point is, there is a market for these products. If you feel strongly against this trend, you should consider developing one that drives your vision that has similar practical value.
That's an excellent question.
- Commenting systems are hard to write.
- Increased need for realtime and on-demand content loading, whereas parent system might be written in a primarily blocking language.
- Peer anti-troll / malware techniques.
talkatv is open source and free to use.
talkatv is embedded on any page and uses XMLHttpRequest level 2 and Cross-Origin Resource Sharing to post the comment back to the server.
Looks like early days but it's pretty progressing tech-wise, well worth a look.