Arc Forumnew | comments | leaders | submitlogin
Self-hosting the Anarki community
4 points by shader 16 days ago | 21 comments
In the past, I've thought that it wouldn't necessarily be good for the Arc community to be split up amongst the 'official' arclanguage.org vs other less official and less likely to be supported community sites, but it has come up again and now I'm not so sure.

As krapp said, "would it be so bad for the Anarki community to be hosted on a forum running Anarki?" That's I think the key point - we're not really just the arc community any more so much as the anarki community. Most of us still here are here because we like hacking on the language, rather than because we like hacking in the language, and I'm not sure a new BDFL would change that. So it's not unreasonable to have our own site where we have more control, and yes - host it on anarki.

So, should we? I have a vultr instance I've mentioned before that I could run some anarki related stuff on, and apparently anarki.net is for sale.

One question I have - given the 'anarchic' state of the community (which I think is kinda cool), how could we manage updates to the service(s) in such a way that does not require intervention from a specific individual?





4 points by shader 16 days ago | link

For anarchic service management, what do you think about trying to set it up so that the service is automatically updated if the latest commit passes some form of CI testing? The CI tests themselves could be updated if the new version passes the latest working version of the site.

It would still be possible for someone to break things in two passes of "delete the tests" then "delete the server" but regular automated backups should mitigate the risks somewhat. And we haven't had many problems with spammers anyway...

reply

5 points by i4cu 16 days ago | link

Given the open nature of the anarki repo, it's likely that news will break. And when it does we wouldn't be able to discuss it.

So unless these tests could prove that the forum would work (which is highly unlikely) then my vote would be not to do this. It's akin to putting the services issue logging/tracking system under the same service [1]. It's a bad idea IMO.

1. http://arclanguage.org/item?id=20573

reply

4 points by shader 15 days ago | link

Or maybe the immediate and painful result of breaking the forum would motivate us to be more careful and fix the issues more quickly. It probably won't happen that often anyway.

I was about to say that an outage might risk killing the community, which would be bad, but 1) we still have this forum and GitHub (as krapp points out), and 2) if the community is really so weak that it can't revert a commit in order to get the forum running again, it's probably not worth hosting a separate site anyway.

The idea is growing on me, just because of how audacious it is. (^^)

I do agree with some of your point though; it would be good to have some separate logging and bootstrap systems in place so that we can detect and repair faults more easily, without the intervention of a specific admin. For one thing, the software that pulls the changes will probably not be arc-based, so it should still be running even if the forum goes down. Secondly, we could try to set it up so that it always pulls hotfix patches immediately when the logging / monitor system indicates failure.

Also, marking a particular branch (probably not master) as a more 'stable' version might be good.

reply

2 points by i4cu 15 days ago | link

Another option is to ensure the service has a robust failover procedure towards a secondary free service as a temporary measure. And maybe someway to safely automate an intentional failover.

edit: my original comment was in consideration of the arc forum potentially going away. Honestly I'm not sure I would move over if that wasn't the case. I'd have to see :)

reply

3 points by shader 13 days ago | link

Yeah, that's part of why I've never seriously considered it before.

The only reasons for thinking about it now are that 1) we want to add some features to the forum, and there's no way to test them here, and 2) it isn't actually a bad idea to have a community site for Anarki. The risk of weakening the community has deterred me from the idea of forking the arc forum, but if we still treat this as the 'official' arc community, and make a separate site more focused around anarki, I don't think that would be too bad.

It might actually help some, since separating more could allow us to really focus on and develop our unique points of experimental language hacking.

reply

2 points by i4cu 13 days ago | link

Don't let my comments stop you. Your thinking is quite valid. I'm just trying to contribute my opinion in hopes of helping you shape whatever you decide.

> It might actually help some, since separating more could allow us to really focus on and develop our unique points of experimental language hacking.

As far as I can tell, pretty much everyone has moved over to anarki, so I don't understand your comment. How does creating a separate forum for anarki help to "focus on and develop our unique points of experimental language hacking"?

reply

3 points by shader 11 days ago | link

Thank you for your opinions; it really does help me clarify my own thoughts. That and I rather dislike talking to myself for more than a few minutes at a time...

Currently, this is an Arc forum. People are drawn here from pg's posts about Arc, and their attraction to the simplicity and beauty of the language. Also probably dreams of silver bullets... That won't stop just because we make a separate community, and I really don't think there's anything wrong with it.

However, I think we're also torn a bit between maintaining basically a bugfix version of arc, or going on to develop it further.

The question then is what "further" means - which direction would it go? One answer is that it can't really be predicted; creating such a community would be a way to find out.

On the other hand I can speculate, based on what I've seen of this community so far.

People come, entranced by pg's vision of arc, and then find out that the code base itself is really small and approachable. In general, lisp variants are used by people who like to make the language fit their needs, but where most dialects would add to the language via macros, with arc (or anarki) people find it just as easy to hack on the core of the language itself. Eventually this leads them to forking it, or building their own implementation in javascript or something.

I suspect this is partly because arc is so small, and does not have many standard libraries or a package system. You can read it all in a fairly short amount of time. So the fact that most of the code is aimed at developing arc means that the easiest thing to develop with it is... arc.

This trend of exploration and extension will undoubtedly continue, and I think it will be much more free to develop into something significant if we simply look at anarki with the slightly different perspective that having a separate community site we could actually upgrade might offer. Instead of being weighed down by arc as the 'community bugfix edition', it could become a 'language based on arc' with a solid foundation, but room to grow.

The core paradigms and strengths of arc appear to be "exploratory programming", and "language hacking". I think it would be cool if we could develop the former beyond the latter, but who knows how it will turn out?

Of course, I may be entirely off-base here myself...

reply

3 points by i4cu 11 days ago | link

Ahh, I see. That make sense now.

Hmm, you know, a new anarki forum could have the benefit of adding a tags feature for posts. A few good tags could be 'lang-design', 'arc', 'anarki', 'help', etc., etc. Not only would this allow our subtypes of members to zero in on their content of interest, but would make searching for meaningful info much easier. Now that would probably make me jump over.

reply

3 points by shader 11 days ago | link

Yep, improving the forum would help a lot, in a lot of ways.

I've often thought that the structure of the news.arc forum is rather unhelpful for the arc community, especially now that we're so small and lethargic. Conversations can go extended periods of time without comment, so they get locked. Or they fall off the front page, and hard to find again. Neither is conducive to long-term development and improvement; we probably lose a lot of valuable work and ideas that way.

One thing I'm considering as part of developing a new community site is collecting and archiving all of the arclanguage.org content, so we can actually access it. And preserve it, if the site goes down.

But I end up wasting all my time on discussion, instead of actually making progress on that...

reply

3 points by shader 10 days ago | link

Somehow i managed to trip the DoS prevention, and now my home IP is blocked. I almost thought the site actually did go down...

reply

3 points by shader 2 days ago | link

Anyone know how long an IP stays banned? Or what I can do about it? Rather inconvenient not to be able to check the forum from home...

I suppose I could set up a proxy or something. And I was planning on scraping everything to a new community site anyway, so maybe I should take this as the incentive to do so.

reply

2 points by hjek 2 days ago | link

Amazing you managed to get your IP banned!

Hacker News has an IP unpanning procedure[0] but I don't think Arc Forum has one.

In the Arc 3.1 code there is a function `set-ip-ban` for unbanning users, but no `unban` op.

(Someone should add that to Anarki, actually.)

[0]: https://news.ycombinator.com/item?id=4761102

reply

3 points by i4cu 2 days ago | link

Looks as though it ranks how bad you are and always keeps the baddest of the bad-asses in cache, while never deleting any from disk. In a low volume site like this I doubt you'll get out of it without contacting them.

reply

2 points by akkartik 2 days ago | link

Hmm, I wonder if it stays banned until they restart the server. I'd ping hn@ycombinator.com.

reply

2 points by hjek 1 day ago | link

Looks like banned IPs are written to the disk even:

    (def set-ip-ban (user ip yesno (o info))
      (= (banned-ips* ip) (and yesno (list user (seconds) info)))
      (todisk banned-ips*))

reply

2 points by akkartik 11 days ago | link

I did ping the HN admins about the lock period a year or two ago, and they were kind enough to extend it for us. It's now 90 days, if I recall correctly.

reply

2 points by akkartik 13 days ago | link

We still get newcomers with questions about Arc 3.1.

reply

2 points by i4cu 13 days ago | link

Sure, but from what I can see they soon quickly discover they need to use anarki and move over.

And impacting newbies does not appear to be considered in "focus on and develop our unique points of experimental language hacking". So...

edit: maybe I'm wrong, but it seems to me what he really wants is a language design group. And I'm fine with that, but I think it's wrong to conflate anarki users with language designers. They are not one in the same.

reply

3 points by shader 11 days ago | link

I was expecting arclanguage.org to stay mostly as it is. Support for newcomers to arc would be included in that.

You may not be entirely wrong, but I probably shouldn't have tried to compress a description of a language used and developed by a loosely federated group of unique individuals into a single phrase.

I can try to unpack it a bit...

"Experimental (language) hacking" -> Exploratory programming is supposedly a primary paradigm of arc

"Experimental language hacking" -> Arc isn't exactly production ready; it's a very experimental language, and that makes it fun (and sometimes frustrating) to use, and easier to explore new directions and possibilities. You're less likely to reverently assume that the way it is is the way it must be.

"Experimental language hacking" -> And yes, we hack on arc itself. So I am thinking a bit of a language design community, I guess. In an anarchic language community though, the lines between 'users' and 'designers' become rather vague...

reply

2 points by shader 11 days ago | link

Yep. We should definitely keep answering them too.

reply

3 points by krapp 15 days ago | link

If that's an argument against us using Anarki then it also seems like an argument against anyone using Anarki, or at least against anyone blindly committing it to production. Breakage can happen with any open source project, but given the generally slow nature of the community, even if news is likely to break, it isn't likely to break often.

Also, we already have Github to check and discuss it, and I think there is a more appropriate venue than here for those issues.

reply