New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improving IRC experience #1357
Comments
|
TBH I think we should be using Gitter or Discord anyway, but ehh. ;) |
|
As for using whatever IM-du-jour beyond IRC, I think setting up a bridge between any given service and the IRC channel is the most inclusive approach, whose maintenance might be made scalable by advocates of that service taking on the responsibility for making whatever arrangements need to be made. My preferred protocol in this regard is Matrix, and conveniently enough for me as its advocate, Freenode and Matrix.org already have arranged the bridge, which Anyway, the Matrix side of the bridge is accessible through the web manifestation of the riot.im client through this link: https://riot.im/app/#/room/#freenode_#hy:matrix.org but a great deal of its utility comes from its fairly reasonable experience (eg, one can get a local copy of continuous channel history despite intermittent network connectivity) using the mobile apps. |
|
The traditional way of dealing with this is MemoServ, or some integration in your irc bouncer to send messages answering questions when a user comes back. Freenode supports MemoServ already.
|
|
On Fri, Sep 15, 2017 at 06:41:57AM +0000, Jay Kamat wrote:
The traditional way of dealing with this is MemoServ, or something in your
browser. Freenode supports MemoServ already.
/msg MemoServ help
MemoServ is a one-to-one push system: If an intended recipient is offline,
one can give memoserv a message to hold until the recipient re-connects to
the channel.
So, yes, this does provide some ability to communicate via IRC despite
intermittent connectivity.
What MemoServ does not supply is continuity of access to ongoing discussion
not funnelled through MemoServ to third-parties: Alice and Bob discuss a bug
in the channel. Charlie's client was disconnected during that discussion,
and so not only does he miss the content of the conversation, he may not
even know it has taken place.
Some individuals address this by following the channel using bouncers or by
maintaining long-running clients on well-connected machines (eg,
ssh+[tmux|screen]+[irssi|weechat]) and accessing discussion using backscroll
or other more explicit logging features of their clients.
Some channels address this via making logs of the channel public so that
someone without a client connected at the time of the conversation can go
back to read it later.
MemoServ has its uses, and perhaps should be more widely known and used, but
it does not offer the same experience that we're talking about here.
|
|
Thanks for the tip on Matrix. I've started using Riot.im. I'll try MemoServ too. |
|
Looks like MemoServ only works on registered nicks. That makes it a lot less useful. @ekaschalk, I missed you over IRC, but-- => (import builtins)
=> (builtins.eval "(1, 2)")
(1, 2) |
|
TBH is there a particular reason we're using IRC, over something like Gitter (which has great GitHub integration and is used by a ton of projects) or Discord (which is user by RPCS3)? |
|
On Fri, Sep 22, 2017 at 03:15:42AM +0000, Ryan Gonzalez wrote:
TBH is there a particular reason we're using IRC, over something like Gitter
(which has great GitHub integration and is used by a ton of projects) or
Discord (which is user by RPCS3)?
There are several.
For me IRC remains, at the very least, first among equals. It has very low
overhead and is very easy to start using. It has a wide range of access
modalities from web-hosted clients (IRCCloud, Mibbit, etc) to console to
mobile clients, including bouncers, etc.
Every other approach has its adherents, but tbh every other approach is a
baby compared to IRC. Nearly all other approaches suffer from not being
federated and standardized, not being end-to-end free, or relying on a
single company's continued support and infrastructure (making that company
a single point of failure) (eg, the Google Reader problem).
XMPP is the one thing that avoids most of these problems, but of course not
having a single company promoting it in their attempt rapidly to gain
network-effect dominance, it doesn't have the mindshare of all these other
things. It is more powerful than IRC in many respects but that comes at a
cost in complexity.
Every other option shares IRC's marked disadvantage of not being somebody
else's favorite thing that a ton of projects use.
|
|
Why not a free Slack account for hy? #Clojurians is a great example of vibrant Slack programming language community |
|
The IRC channel has been retired as of #2037. |
Two ideas here.
First, our README points to the #hy channel on Freenode. I see new users on there asking for help pretty frequently. But I've occasionally been frustrated when someone asks an easy question and then logs off before I see it. I can't realistically answer everything instantly, even if I enable alerts. Sometimes I'm busy with other things. Sometimes they're in a distant timezone and I'm asleep.
We could mention in the README that if nobody's talking on the channel that you should wait in the channel about a day for a response.
Better yet, we could set up a server message in the channel itself explaining this. But I don't know who the admin for the channel is.
Second, it would be nice if we could evaluate code snippets to demonstrate things to the new users. This could be done with a bot. I noticed we have one of those https://github.com/hylang/hygdrop, but nobody's touched it in years, and we don't seem to have any active bots watching the channel. Just
omghythat occasionally pops in and out.Once we demonstrate this, users could private message the bot and try things for themselves.
It would be nice if the bot could optionally use both the latest master or the latest stable, so we could demonstrate appropriate code depending on which version the user is asking about. I don't know if github has a way to push updates like that, but it might have to be set up here in this repo. (Otherwise, the bot could check for updates once a day or something.)
We'd naturally want to sandbox it and set output length limits to prevent abuse, and timeouts to deal with infinite loops. And there should be a command to reset it.
I propose naming the new bot🦑
cuddles.The text was updated successfully, but these errors were encountered: