Looking for new maintainers for *.purescript.org

#5

The simplest thing would probably be to move things to a new machine, and for me to keep the domain name and switch over the DNS.

Yes, I agree. So I guess the ball is in my court for getting a new machine spun up.

I don’t think any form of DNS record management automation will be worth it for what we are doing; we only have a few subdomains and they aren’t going to change very often.

#6

I would also like to be involved. I, along with @chexxor, maintain the Discourse instance, and I’d rather that and other *.purescript.org resources be held by a PureScript organization instead of a private server.

I don’t have any answers around funding except that:

  • I think it’s worth revisiting the idea of an Open Collective account if we are going to accept funding
  • I’m happy to pitch in the equivalent cost of running the Discourse each year as my contribution, or more
  • I think we should be open to corporate backing, as many of us work at organizations which are deeply invested in PureScript
  • This funding could go explicitly to our community resources, meaning hosting, bandwidth, etc, to keep the scope small

I see the costs to run *.purescript.org are small. We’re talking about $240/yr at the moment. But a PureScript organization with some funds can ensure that an uptick in usage doesn’t run anybody in particular dry.

I’ve seen a number of reports in Slack about intermittent Pursuit outages; I think that warrants a deeper look into whether the Linode box is sufficient. I don’t know if there is any monitoring on that server that would reveal the issue. This may end up increasing the cost.

I agree with @hdgarrood that it makes sense for a small group of maintainers to have SSH (and repository access) to manage these resources, and ideally changes to the repositories automatically deploy. That group of maintainers could have a Discourse area as a communication channel to discuss issues, as well.

Unrelated to the infrastructure maintenance of the *.purescript.org organization, I also care deeply about PureScript documentation and resources and things like try.purescript.org being up to date and usable and would like to broaden access for folks to help out and get updates made to them.

@paf31 As these resources are currently yours, how did you envision handing things over to the relevant people?

2 Likes
#7

@thomashoneyman that all sounds good to me. How is this Discourse instance hosted at the moment?

The Pursuit outages are definitely deserving of investigation. I’d be quite surprised if the conclusion turned out to be that it genuinely needs more resources (as opposed to a bug which is making it crash, or making a particular query eat up far more resources than it should, or something like that), but I guess the first step should be making a proper diagnosis.

#8

What do you mean by *.purescript.org resources being held by an organization rather than a private server? I’m not sure what the concrete differences would be unless we are talking about setting up a PureScript organization as a proper legal entity, which I am a bit less enthusiastic about.

#9

How is this Discourse instance hosted at the moment?

It’s hosted on a Digital Ocean server owned by @chexxor, and I perform updates via ssh.

What do you mean by *.purescript.org resources being held by an organization rather than a private server?

I mean this conceptually, not legally; a group of people (the organization) has the ability to manage *.purescript.org resources because that group has the knowledge and access necessary to do so. I would rather that things like Try PureScript, the Discourse, Pursuit, the home page, etc. are opened to that group both wrt maintaining the repositories and access to perform maintenance on the server.

I’m not endorsing a legal entity, if only because I don’t know what that would entail.


EDIT: Though, now that I think of it, an informal group of maintainers might not tangle well with accepting funding. For now costs are so low that funding is more of a side issue than anything else, so not a problem, but perhaps we’ll require something more formal in the future. For the time being, perhaps a responsibility of being a ‘maintainer’ could include pitching in for the infrastructure costs. With 4 maintainers that would work out to about $5 a month each.

2 Likes
#10

I actually do think accepting corporate funding deserves a try. I don’t really like the idea of expecting contributors to contribute financially in addition to how they (we) contribute already. I think OpenCollective could work for us: one person would pay for things like server costs and domain names from their own accounts, and then they could submit receipts and be reimbursed via OpenCollective. There might only be one person with access to the payment details or whatever but in practice I don’t think that would be a problem; it’s the actual server maintenance part which I’d like to have not just one person responsible for.

1 Like
#11

@chexxor since you talked about OpenCollective in the past: do you know who has access to the PureScript collective https://opencollective.com/purescript at the moment?

#12

I don’t know who access to that OpenCollective name, no. I believe OC has special programming to support GitHub orgs or projects to automatically allow someone with maintainer permissions to gain ownership of the OC page with the corresponding name. So I’d ask people who had those permissions to the “purescript/purescript” project back when that topic came up.

1 Like
#13

Pretty sure the company that i work for (as a contractor - i don’t speak for them at all, of course) would like to kick in at least some $$$ for server costs and so forth. I know we’re all continuously surprised and grateful at both quality and quantity of maintenance from the community, especially core contributors.

1 Like
#14

I actually do think accepting corporate funding deserves a try.

I do as well, so long as it doesn’t introduce any legal busywork. I will have to educate myself more about how Open Collective handles this, though.

Here’s what I’m hearing in this thread so far:

  • A group of maintainers, approved by @paf31, has access to a server which manages the *.purescript.org resources and to the relevant repositories
  • Infrastructure costs are covered by a PureScript Open Collective account, funded by companies which use PureScript

Next steps include:

  • Anyone else who is interested in helping maintain the projects mentioning that so that @paf31 is aware of them and can eventually sign off on the group
  • @hdgarrood setting up the new server (having already volunteered to do so)
  • Someone with maintainer access to purescript/purescript seeing if they can claim the open collective account (@hdgarrood again?)
  • @chexxor and I moving the Discourse over to the new server

And once some of these steps are completed, there’s:

  • The new group of maintainers should receive SSH access to the server and maintainer access to the relevant repositories (like Try PureScript)
  • Those of us who believe our companies will support PureScript-the-organization asking the relevant people in our organization for a monthly or yearly pledge

Side note: especially with all his work to improve Try PureScript last year, I’d like to nominate @natefaubion to be a part of this as well.

1 Like
#15

I had forgotten about the server hosting the Discourse instance when I said I’d get a new one spun up; now that I’ve been reminded that it exists, I wonder if it might make more sense to leave Discourse where it is, and move Pursuit and Try PureScript over to the same server?

I’ve managed to claim the PureScript OpenCollective account by the way: https://opencollective.com/purescript.

3 Likes
#16

I was hoping to move over to a server on an account owned by maintainers@purescript.org or something like that, with access given to other email addresses (person1@purescript.org, person2@purescript.org). Kind of like an admin / moderator relationship, where the maintainers account owns the server but the others can access and make adjustments. Each person in the maintainer group would get a purescript.org email address.

As things change over time and maintainers come and go, the maintainers account would remain the single point of access for things like Open Collective and the server, and the other maintainer email addresses would remain active so long as the maintainer does.

This wouldn’t in any way reflect a legal organization, but would at least make resources like the server be conceptually “PureScript-owned.”

Great work on the Open Collective account! Now to become a backer…

#17

Hmm… I can’t see people using @purescript.org email addresses and I don’t understand what they would give us here. I definitely don’t want to maintain an email server, and I don’t think the cost of paying someone to host one for us would be worth it. Existing cloud hosting solutions already give you the ability to allow multiple users to access a particular acount with different access levels: for example, at work, all of the devs are able to create, destroy, and monitor individual ‘droplets’ (VMs) in our DigitalOcean account, but only one or two can access the billing information and other admin settings (eg droplet limit).

#18

So it turns out OpenCollective only supports payouts via PayPal, which is a pretty huge turnoff for me. I don’t have a PayPal account right now and I really don’t want to sign up for one.

#19

Oh wait, turns out I do, and I had forgotten about it. Never mind.

#20

That’s reasonable. With decent access control I suppose the emails are an unnecessary hassle. Fine by me! @chexxor, what do you think of migrating the DigitalOcean account in this way?

#21

While custom domain for emails would be cool, I don’t know of any tools which restrict or permit account access by a user’s email domain, but instead simply by inviting people to a group using arbitrary email addresses.

Yeah, that sounds good. Several months ago I created a group in DigitalOcean named “PureScript Community” and moved a snapshot of the existing Discourse instance over to it, but I discovered the new instance rehydrated from that snapshot had a new IP address, which meant I couldn’t change the https://discourse.purescript.org DNS entry to point to it. I believe that was the only blocker for doing that.

@hdgarrood, did you create a group for this on your account? I don’t know whether who creates the account affects anything, or if ownership of a DigitalOcean group can be transferred.

#22

For what it’s worth, Namecheap gives us free email forwarding:

https://www.namecheap.com/support/knowledgebase/article.aspx/308/2214/how-to-set-up-free-email-forwarding

1 Like
#23

@chexxor yeah I created a group a couple of days ago. Up to you: I’m happy to use the one you created already, or to invite you to the one I created. It might be easier to use the one you created already if you already have a snapshot with Discourse all set up.

#24

Oh also, another thing that occurred to me is that it might be nice to put each app on a separate droplet, for the sake of security, easier monitoring, and so that if one app misbehaves it doesn’t affect the others. But that might cost more and complicate things a little. Perhaps we should just get the Discourse instance up and running first.

1 Like