sschwarzer
2021-11-9 10:01:06

What does “real replacement” mean? Isn’t the “real” replacement what we choose it to be? In other words, would using Discourse (instead of email) be less real than using Github? I’m confused.


sschwarzer
2021-11-9 10:04:17

I agree it’s reasonable to have one communication channel for quick responses and one for more persistent discussions. Theoretically, a mailing list or Discourse could provide both, but messaging services seem to be easier to use for quick responses.


sschwarzer
2021-11-9 10:06:26

Regarding the archiving: I used to ask for having a Slack archive, but meanwhile I have the impression that it’s totally accepted if questions are asked several times and I don’t think about the archive as much as I used to. :smile:


sschwarzer
2021-11-9 10:08:06

What bugs me more is not the loss of the public messages but of the private messages, and of course that can’t be helped with a public archive. :neutral_face:


ben.knoble
2021-11-9 11:50:34

Slack doesn’t even export the private messages


sschwarzer
2021-11-9 12:14:12

Yes, that’s what I expected. I mean, I actually appreciate that the owner of the Slack instance can’t read my private messages :slightly_smiling_face: (though Slack can read them anyway). As far as I’m concerned, I’d prefer a service where the private messages don’t expire or where it’s easy for me to save them, like in an IRC log.

That doesn’t mean that I think Slack is horrible. For example, I like that it’s easier than on IRC to use screenshots (though of course there are workarounds for IRC).

I’m not saying that we “must” use a different service than Slack, but if we do, it would be nice to consider the persistence of messages, including the private ones. :slightly_smiling_face: Or generally, I’d prefer if we could use a service that is open source and that we can (or at least could) host ourselves.


samth
2021-11-9 13:20:36

@sschwarzer what I mean is that much of the traffic that was once on mailing lists is now on GitHub


badkins
2021-11-9 14:00:20

@samth I think standardizing on Discourse would be a good thing. I’m not familiar with the current hosting setup. Is it hosted on Discourse? If we went to self hosting later, is the transfer of data straightforward? Do we currently have unlimited messages, or is that an upgrade?


samth
2021-11-9 15:03:26

It’s hosted on Discourse. The limits for our free plan are listed here: https://free.discourse.group/


badkins
2021-11-9 15:39:32

5 GB should be ok for a while (I wonder how much storage is used by the Racket Users mailing list?), but self-hosting later probably makes sense given their pricing plans. It’s nice to have that option.


samth
2021-11-9 15:44:42

I’m fairly skeptical about self-hosting, but hopefully we don’t need to worry about that for a while


ben.knoble
2021-11-9 15:47:20

For the record, the current set of incremental, compressed Slack archives weigh only 34MB; 288MB uncompressed


badkins
2021-11-9 15:48:48

Probably right. I’m using 5.5 GB of mail currently, and it goes back a long time. If Discourse becomes as useful as I’m hoping it will, I’d be willing to get involved in the hosting. Spinning up one more EC2 instance isn’t really a big deal.


spdegabrielle
2021-11-9 16:36:18

Racket relies on volunteer labour and donations - hosting stuff yourself is time consuming even if someone is willing to donate the hosting costs.

Even with free hosting on google groups/discourse/github discussions there are administrative tasks that have to be done. I’m very grateful that @samth has donated some of his valuable spare time to do this for discourse and google groups and typed racket github discussions.

In this case the value of hosting something yourself needs to be balanced with the risks - someone could host it for the community but is that someone more or less risk than the free tier from a corporation like discourse/microsoft/slack/discord.

I’m not saying we should not host things ourselves, just that the communication platforms a community use are critical infrastructure, and care must be taken.

NB Things that I think are self hosted: PasteRack, Packages. http://racket-lang.org\|racket-lang.org, Racket Stories.


samth
2021-11-9 16:40:20

That’s all true, but if people volunteer to do things then it’s of course possible to do more stuff (as in, if @badkins helps then we can host more stuff).


badkins
2021-11-9 16:58:05

Self-hosting is certainly not to be taken lightly, but it’s possible the benefits outweigh the costs. I’m not exactly sure what happens when we reach the 5 GB limit on Discourse, but I expect that we then either need to upgrade to a paid plan, or self-host. In other words, I’m not sure there is a Slack-like option of simply capping the storage at 5 GB and deleting older posts. Anyway, hopefully we don’t need to deal with it for at least a year or two.


spdegabrielle
2021-11-9 16:59:12

My apologies. Yes. I’m just nervous about the fora because searching them for an answer has saved me so many times.


soegaard2
2021-11-9 18:51:56

Rhombus: A new version of the spelling checker is available. I now use String annotations and made an operator -- for strings slices. Sample: def edits1(word :: String): def ok(s::String) : s.is_non_empty def clean(xs) : base.filter((fun(x): x),xs) defs: letters: "abcdefghijklmnopqrstuvwxyz" splits: for_list(i, list.range(word.length+1), [word[--i], word[i--end]]) deletes: for_list(s, splits, (fun(List(L,R)): ok(R) && L++R[1--end])(s)) transposes: for_list(s, splits, (fun(List(L,R::String)): R.length>1 && L++R[1]++R[0]++R[2--end])(s)) replaces: for_list(s, splits, (fun(List(L,R)): ok(R) && for_list(c,letters, L++c++R[1--end]))(s)) inserts: for_list(s, splits, (fun(List(L,R)): for_list(c,letters, L++c++R))(s)) set.from_list(clean(list.flatten([deletes, transposes, replaces, inserts]))) https://github.com/soegaard/rhombus-experiments/blob/main/spelling-corrector/spelling-corrector.rkt#L173