Hi Ben, Communication is a topic that benefits from many different technologies and approaches, and your project sounds like it might have a nice new angle to add to this. Welcome to the Guile community - I look forward to seeing your contributions to this list and Guile as a whole :) Best wishes, Alex Sassmannshausen On 7 Nov 2017 5:05 a.m., "Sutter, Benjamin" < benjaminsutter@aurora-schools.org> wrote: > Hello, Guilers. I'm a relatively new face for most likely all of you, if > you've seen me at all (I'm bms_ on IRC, which is where I've been), but > today I'd like to write the first of my papers on the extensible, federated > instant messenger: Message (msg). I'll begin with a brief description of > the program before I move into some theory on social systems. > > Message is an instant messenger written in Guile and designed with small, > tight-knit communities in mind. Crafted to foster socialization naturally, > instead of through intrusive alarms and alerts, Message (the command is > msg) servers can be started with one command. In fact, it's the same > command that starts the client. In theory, anyone who can run the client > and can run a small server. Message configurations (think .guilerc or > .emacs) are written in GNU Guile Scheme, the same language through which > the program can be extended. There will never be a central server for > Message, as the entire design focuses on small, friendly communities, > rather than large, forbidding groups like you often find on IRC. Message is > currently in very early development and I do not have an up-to-date Git > repository or website to use as a central location for updates and news. > However, I can often be contacted as bms_ on #guile, #guix, or #gnu at > Freenode or at this e-mail. Now onto my theories on humans and why small > groups are better than large. > > ### > > Oftentimes I've gone to join an IRC channel just to find that the current > memberlist is huge and there's very rarely anyone there to say "hello" back > to me. I attribute this to the prevalent -- and incorrect -- notion that > social interactions don't matter when we're talking about code. For years, > this lack of the exact social cues which I've so begrudgingly grown > accustomed to in real life has frightened me away from even giving myself a > real introduction. Now, I don't see how humans, as social creatures, could > possibly see a good reason to not say "hello" in response to "hello", but > online interactions tend to remove the stress that face-to-face > interactions have on saying the right stuff. To an extent, this is helpful. > You're given time to formulate ideas, but it seems awfully impolite and > even asocial to ignore newcomers to your group. > > I'm not going to blame anybody because there's no one to blame. Instead, I > have some ideas to fix the problem. > > > 1. *Keep groups small and intimate: *No one likes joining a group to > find that it's memberlist is in the 1000's. Now, I realize that this isn't > optimal in all instances. Some groups are naturally large. I will never put > any fixed limit on server memberlist size in Message. I will only encourage > small groups. > 2. *Don't allow multiple users with the same name in one server at the > same time:* Part of the importance of small groups is knowing who's > who. You can't do that with ten different incarnations of Kevin online. > 3. *Good friends need privacy: *Therefore, every message should be > encrypted by default and without any extra work for the user. > 4. *Don't discourage private messages or pings:* This isn't quite as > specific to any one implementation, but it always bothers me when > administrators in a group disallow average users from messaging or pinging > them without being requested to. It doesn't hurt anybody. > 5. *On that note, groups should be democratic:* Choices that affect > the group (permanent banishment, name changes, new rules) should be voted > on by every active member of the group. Naturally, the server administrator > has the power to veto any decisions made by the masses, but even his > decisions should be liable to democratic law. > 6. *Be nice:* As with the PM/ping rule, I can't do anything in Message > to help this, but in general, please be good to everyone else. It makes the > groups happier as a whole. > > I hope that this paper was informative, inspiring, and also a good > announcement for the Message project. I'd ask for development help, as I'm > the only one, but currently I don't have easy means to collaborate (Git, my > own mailing lists, etc.). Eventually, I'll submit to the GNU Project and > then maybe I'll be better off in that regard. Anyway, if you've made it > this far, thanks for reading and please do try to continue to follow the > project. I'll keep you updated. > > Sincerely, > Ben Sutter, > bms_ >