Just wanted to let you know that after asking for permission, we’ve created an experimental Discord server for OCaml real-time discussions. Use this link to join.
Discord is becoming an extremely popular venue for online discussions, and our sister community ReasonML uses it quite regularly. We therefore thought it would be a good idea to at least try it out, and see what it allows for in terms of community development.
One of the attractive features of Discord is that it allows for rooms within the channel for isolated discussions. For example, ReasonML’s Discord server has rooms titled ‘look what i built’, ‘events and meetups’, and ‘bikeshedding’, among others. Rooms are cheap to create and obviously help focus discussions. We’d love some input on what kinds of rooms you’d like to see in the OCaml server. If you need a particular room for your project, please let us know.
Discord also supports the now-common web 2.0 upvotes and emoticons, reducing the amount of in-band communication needed.
Another nice feature of Discord is its ability to facilitate voice conversations if those are needed between members.
And of course, once you’re in the OCaml server, switching to ReasonML to say hi or answer questions is trivial.
Assuming that this server is a success, we can also consider running a bridge between the IRC channel and the Discord server. This would require creating a bot running on one of our OCaml machines, but is fairly trivial to do.
I suppose Discord is nice… Unfortunately it is blocked by security policies in some institutions, including mine, and there’s no chance for me to be able to have this policy changed.
More generally, I must admit I am a bit sad to see that proprietary solutions are gaining so much traction in our communities.
Putting philosophical debates about non-foss IM protocols aside, the problems I have with discord are:
Yet Another Web Client. I want all my IM concentrated in one client and I hate web clients. A lot of people that currently animate the IRC channel are like me. Apparently, Discord doesn’t even support bridges at the moment, which is absurd.
Redundant communication channels that splits an already small and fragmented community.
In this context:
If this is done correctly (i.e., in an almost transparent fashion), this would go a long way towards solving my issues.
Sorry about that. You should be able to use the phone-based client. Should be ok unless you’re in a government-based institution that prohibits phones.
I don’t disagree about that. From my perspective, this is partly driven by ReasonML’s previous decision, and partly by the fact that this is where users go nowadays (which probably also motivated Reason’s decision).
Thank for sympathizing Anyway I don’t want to enter into too many details about the problems I encounter on my side, I rather wanted to stress that it may not be obvious that such new services may be allowed or usable for many people.
Besides, there is a price to pay that I find hard to accept from an ethical point of view, all the more for a language that stems from the scientific community. If you read the terms and conditions of Discord, you can see that there are very serious problems (I will gloss over granting Discord a license on all I write, Discord having to apply the DMCA, etc.): in particular, people from some countries may be forbidden to connect to Discord, due to US export laws. Seriously? Do we agree for fellow researchers, engineers, etc. fans of OCaml, to be excluded from discussion about our favorite language just because they were born in this or that country, and all this for us to enjoy a slick chat interface?
Yes. But that’s basically the reality most of us are facing today already. I have Discord for ReasonML and a gaming community, Slack for my research groups, riot.im for OCaml IRC. It helps, in my experience, to get the desktop clients rather than using up browser tabs I’ll never find again. Plus, OCamlers should already be on Reason’s Discord anyway, so effectively it’s not another client – they already made the choice.
That’s one side of it. The other is that we need to get more people into the language, and this may be a good way of doing that. Let’s be open to the possibilities. For the record, this wasn’t my idea, but I think it’s worth trying out.
It’s self-hosted, which pretty much kills any chance that it’d be up in a reasonable timeframe, since any action will require heavy debate, encounter resistance etc. We actually have what I think is a pretty good solution in riot.im. riot.im is what provides our easy guest connection to IRC today, and if more people moved over from IRC to riot.im itself, we’d have more integrated features available as part of the chat. Regardless, I still view this as a worthwhile experiment, and at the very least, a way to connect more to Reasoners.
@Drup I was pitching to set up the discord server. It was mainly motivated by the fact that there’s a reason one.
Regarding fragmentation, I think it’s a good thing. Discord, if it draws more beginners, is going to be pretty noisy and I think the community you have on IRC could see a significant drop in the quality of messages so to speak. It’s a bit brutal way to put it but I really believe so.
I suppose riot.im is a matrix-based solution ? Why not pich that instead of discord then ? Matrix has many bridges, is FOSS and does not suffer most of the shortcomming of discord, at least in the eyes of grumpy people like me (and @grayswandyr), while still offering a fresh interface for newcommers.
Thanks for doing this @bluddy. Seems like a good idea to me, on the whole.
There is already an OCaml room in the ReasonML server, as well as a Bucklescript room, so it’s not only Reason over there. Maybe this will confuse someone, but I can see value in having a separate OCaml server.
I’m looking into creating a bridge of the Discord server to matrix/riot.im. They’ve recently tried catching up with slack/discord in terms of having multiple rooms, which means we can have the popularity of Discord with the FOSS-ness of matrix, for those who prefer that.
Unfortunately, it looks like their Community feature (analog of Server in discord) is currently a mess. Somebody is apparently sitting on the OCaml community name, and there’s no visible way to join that community. The client in general seems to suffer from bugginess, which isn’t the case for discord or slack.
Also, if anyone would like a discord room under the OCaml server to facilitate their discussions, please post a request – we’re happy to add whatever room you want.
Thanks for setting up the discord @bluddy. I personally haven’t ever seriously used IRC: when I’ve tried, haven’t really kept engaged with it for long; it isn’t the most approachable medium. I understand the worries about it being a private company, but Discord is quite user friendly: which makes it more amenable to growing and diverse communities.
I fail to see how you can “grow a diverse community” when the service imposes an enclosure (you can’t even have read access unless you comply with Discord terms of service; some countries are purely excluded from access; the non-web apps is AFAIK proprietary software) which goes absolutely against the open nature of the classic web. This is not about grumpiness or being fond of less user-friendly tools like IRC or being a radical liberal or being against private companies, this is about giving everlasting, uniform, non-committing, open access to all. Any user-friendly service that provides with this is OK.
Fair point @grayswandyr. The user friendliness is the most important factor. An additional concern however is maintenance: if you go with self hosted, someone has to ensure that the server is up to date, vulnerabilities are patched and databases backed up. This is a lot to ask of someone, and that energy could be served elsewhere. Haven’t used matrix/riot, but if all of those factors are covered, then that’s perfect.
I feel everlasting is a bit of a strong requirement though: communities and community preferences evolve and change. Trying to choose a communications platform based on the criteria that it be everlasting means you’re potentially constraining your future audience. I feel it should be good enough to solve community communications now with the knowledge that this might not solve communication problems in the future.
I haven’t talked about self hosting. Some hosting platforms provide such services.
By “everlasting”, I mean that we should be able to keep archives of such discussions in a format suitable for searching (at least). The OCaml mailing-list archives dates back from 1992. @whitequark has taken care of archiving the OCaml IRC channel for a long time. I hope we can do the same with tools from 2018.