Endless-sky: Community management (unrelated to game development)

Created on 27 Sep 2018  Â·  66Comments  Â·  Source: endless-sky/endless-sky

@endless-sky There are 3 things I would like to very quickly address:

1: There are still a lot of people who want to give you money to develop this game and we know you won't accept it. Do you have any charitable organizations you would suggest we direct these individuals to instead?
Reference:
( https://steamcommunity.com/app/404410/discussions/0/1735466157771251816/ )

2: Due to Local God's inactivity and Wrzlprnft's stepping down, myself and Derpy would like for warp_core and jafdy to replace them as steam moderators. That way we don't have to worry about community management if one of us ends up taking a vacation or something. We have been managing on our own, but really a 4 person mod team is ideal for coverage.

3: I am still of a mind that Derpy Horse should be promoted beyond moderator on steam. Unfortunately, the moderation tools we get are few and there are changes to the Forums that should be made if possible. This would simply give the community more of an opportunity to self manage, and better regulate itself without developer input. (And frankly, that would help in being able to build across different platforms as well as allowing the beta branch to be more regularly updated off of successful builds - if that ends up being something you are ok with)

I look forward to your response when you have time!

Most helpful comment

Hello all. Sorry for the absence over the last month or two - my office moved to a new location in mid-September, and ever since then my life has been a bit of a jumble as I've tried to readjust my schedule to fit. And the truth is that my work on Endless Sky had gotten to the point where just trying to keep on top of the issues and PRs was eating up all my time and not leaving any for actually doing new development work on the game, which makes the project not much fun anymore.

I do think it would make sense to switch to a model of having a broader community of "gatekeepers" instead of just me. I think that should be relatively easy to do on Steam, as well - the developer tools would let me set up other accounts that have permission to do builds, for example, and I assume I can also add admins. If there's a clear community consensus of who would make good contributors for the GitHub repository, I can add them.

I think it's really hard for me to let go of control and let other people make changes directly without my oversight, because I'm typically so focused on trying to avoid bugs and know that the software is stable at all times. But obviously, a period of time where things are a bit chaotic but where development is as least moving forward would be better than the present state. And, I think I myself might even enjoy working on ES more if I could just see myself as one more content creator instead of telling myself I need to carry the whole weight of everything.

All 66 comments

And just because this feels rather relevant: Issue #3723 .

The bus factor here is real. Idk if the game has been abandoned, or if MZ's life just got in the way. Either way we haven't heard from the only person who can do anything with this game, at all, in almost two months. The game also hasn't been updated since summer of last year. This is not a good thing, and the stall is real.

At this point, we are starting a move over to the community fork. If the man doesn't return, we're moving there.

I can't say that moving everything to a fork is a great thing to have happen, but it sure beats the stagnation, and worse, the antipathy, that this long hiatus has caused. If (when?) you (MZ) returns, I think there really needs to be at least one more person (maybe two or three more) with the authority to merge things.

You've said you want content and missions, and there's been a fair bit of that developed, but no-one's going to develop anything if the stuff that's been made is never responded to (let alone merged). If you can do so in a reasonable amount of time (say, a month, maybe two?) then great, if not, add another person to share the workload. That's the point of having a community, right? It means having other people who are willing to help.

Case in point, there's 104 open pull requests, at least 20-40 of which are since June. And Stuff like the Bactrian Mini-Campaign (#3120) that is exactly the sort of stuff that really should be encouraged and given priority in terms of efforts to merge.

+1 for forking it. When the sole developer and person with commit rights disappears, that's exactly what should happen. Sad, but necessary, unless we want to let Endless Sky die.


What's happened here is a testament to the risks of single-developer projects, and why it's so important to recruit a trusted second developer ASAP and grow the community of people who have earned the trust to be able to commit and manage things themselves. If this happens, the project becomes immortal and the maintainer isn't under so much pressure. If it doesn't, the project dies when the maintainer loses interest.

Let's fork it and make sure Endless Sky doesn't die.

To keep getting it out there we need the steam page, sure we can keep developing, sure we can direct people to a new page, but we would need to grow the audience nearly from scratch. And when you could be starting at several hundred thousand users that is quite a tall order.

The way I understand it, we don't really have a choice. There's no way for any of us to take over the Steam side of things (or the official GitHub). So we move forward with the community build, take steps to ensure that it isn't at risk of the same problem, and continue to hope that the sole developer returns and merges all our work into the core ES. And hopefully takes steps to ensure this problem doesn't re-occur. I think that's our best bet for keeping the game alive and moving forward.

Although probably need to pick a date when we give up on that ever happening and move forward with re-establishing a steam presence. And a name. I don't know if "Endless Sky - Community Build" is different enough for Steam's rules or not.

Since the link hasn't been put here yet, here it is:
https://github.com/EndlessSkyCommunity/endless-sky

Has anyone tried to email MZ?

If we hadn't, we won't have tried this. So yes. We have. He never replied

Kiko posted this issue after he wasn’t getting an email response.

Hello all. Sorry for the absence over the last month or two - my office moved to a new location in mid-September, and ever since then my life has been a bit of a jumble as I've tried to readjust my schedule to fit. And the truth is that my work on Endless Sky had gotten to the point where just trying to keep on top of the issues and PRs was eating up all my time and not leaving any for actually doing new development work on the game, which makes the project not much fun anymore.

I do think it would make sense to switch to a model of having a broader community of "gatekeepers" instead of just me. I think that should be relatively easy to do on Steam, as well - the developer tools would let me set up other accounts that have permission to do builds, for example, and I assume I can also add admins. If there's a clear community consensus of who would make good contributors for the GitHub repository, I can add them.

I think it's really hard for me to let go of control and let other people make changes directly without my oversight, because I'm typically so focused on trying to avoid bugs and know that the software is stable at all times. But obviously, a period of time where things are a bit chaotic but where development is as least moving forward would be better than the present state. And, I think I myself might even enjoy working on ES more if I could just see myself as one more content creator instead of telling myself I need to carry the whole weight of everything.

Welcome back, MZ.

Welcome. I hope life settles down for you as new routines continue to emerge :)

On a side note, we've been making progress over on a community fork, trying to get stuff worked out in your absence. Right now, we're pretty much making headway with content

Indeed, the entire point of the issue is to take weight off of you, and continue development on a game that we all love. The point of a hobby is to have fun, not to be a complete second job.

I still suggest Derpy as the first extra "gatekeeper," and i know other individuals would also make great admins and examples.

I can fully understand wanting to do everything oneself, and ensuring everything is perfect at all times, but you've got a fairly decent community of people eager to contribute. Let them contribute according to their strengths, and everyone will be better off.

That being said, welcome back. We're glad you weren't run over by a bus or anything like that.

Personally, I'd suggest Amazonite/Derpy and MCO. There's a few others that'd be good too.

I would second MCO, he's pretty legit and knows what's up.

If I might make a related suggestion: Amazonite and MCO have been working at merging stuff into the Community Build. Chances are you could probably merge all of that stuff straight over. It'd be a solid first step in clearing the backlog of merges and getting new content into the game.

If anyone's going to get direct access to the repository, I'd nominate @tehhowch above myself or MCO. He has the most commits to the repository, excluding @endless-sky of course, and about a fourth of the open PRs are also great additions to the game from him.
Another possible candidate could be @Pointedstick.

theres no reason there can't be three or four people in the team, who still bow to MZ and won't step on his toes. Each gatekeeper specialized in different departments, a workflow maintained, and a shared weight and responsibility focused in different departments.

Mostly I would want Derpy to handle steam, announcements, news, and community management.

That's a good idea. It would probably be better to have people focusing on areas of strength, although coding and story are probably the two biggest areas that come to mind in terms of here on Github itself.

When it comes to story, that is defo shared between everyone. Code+story are things i think MZ would mostly want to handle himself for fun. It's also paramount to ensure his vision is being kept. I know both MCO and Derpy are good for story content in the same way, if MZ has to back away from the project for a month or so again.

(Had to fix my really, really bad grammar)

After some discussion, we have a list of people that we'd definitely like to see become collaborators to the repository. The ordering of these people is how I'd order them priority wise though and not something we agreed on, but I will list my reasons for why I'd order them this way.

  1. @tehhowch: Although he hasn't weighed in yet, so I'd wait to see what he thinks about the situation, I think tehhowch definitely deserves access given all the work he's done improving the code and adding new features to the game. As I'd mentioned previously, he's had the most commits by a long shot helping to make the game better and a decent amount of the current open PRs are amazing pieces of work from him. Out of all of us who have contributed to the game, tehhowch is probably the best when it comes to working with the source code.
  2. Myself: I don't want to put much here aside from the fact that others have mentioned me lest I seem to be stroking my own ego. Let's just say that I already have a track record of creating good mission content for the game. One of the main things holding me back on doing that has been a lack of motivation to do so given how long some of my PRs have sat, so having collaborator access would give me the reason and motivation to write more missions for the game.
  3. @mcofficer: Others have suggested MCO, and he has expressed interest in becoming a collaborator, but he's hesitant to become one for the same reason for me putting him as third on this list; MCO has been around for a while and definitely helped the game by giving feedback and helping out on the community side of things, but he hasn't actually contributed directly to the game yet as far as getting PRs merged goes. He is seen as trustworthy by community members though and definitely has an eye for what kind of PRs would be good to merge and which ones wouldn't.

I don't know if Tehhowch or MCO would also want heightened abilities on Steam, but I could definitely use them seeing as how I'm already a moderator there.

I just send @Amazinite and @tehhowch invites to get push access to the repository. Welcome to a brave new world...

I think it'll take me a bit to want to do stuff without fearing I break something.
While you're here, could we get an update on the status of the end of the Wanderer campaign? I know we have people who have been waiting for v0.9.9, and I expected that the end of the Wanderer campaign being added to the repository would mean v0.9.9 is almost here.

Hopefully one where we can all work together to make ES the game we all want it to be. I'm looking forward to it.

I think it'll take me a bit to want to do stuff without fearing I break something.
While you're here, could we get an update on the status of the end of the Wanderer campaign? I know we have people who have been waiting for v0.9.9, and I expected that the end of the Wanderer campaign being added to the repository would mean v0.9.9 is almost here

:thinking in progress:

With the Free Worlds campaign, I already knew when I began it how I was hoping for it to end. For the Wanderers, I'm still kind of waiting for inspiration to strike. I know that it'll involve a choice between two different genetic branches that could be their future - one based on collaborating with other species, and one based on building military strength in order to interact with others on their own terms. But I don't have all the details figured out. One of the weaknesses of the Wanderer campaign is that I took a piecemeal approach to writing it, so it doesn't hang together as well. For the last third of it, I really want to make sure I know how it's going to be structured before I begin writing it.

Understandable. Perhaps v0.9.9 could be released without the finale to the Wanderer campaign then if you aren't sure on how it should end quite yet. And so that v0.9.9 still has a fair amount of new content for people to play with, #3120, #3151, #3216, #3298, #3761, and #3781 could be merged for a total of 78 new missions. (Although out of those PRs that add new missions, @Zitchas and I are still working on polishing #3761.)

Welcome back. I might humbly request commit access for myself since I do a lot of content creation and I _love_ reviewing patches. I pulled back recently because the project seemed to be dying, but if that's no longer the case...
n4feebfc17dc0b

I promise not to break anything, and if I do, to fix it ASAP. This game's stability and relative lack of obvious bugs is incredibly impressive and that needs to be maintained. Even with direct commit access, I'd continue to submit PRs rather then pushing directly for all but the most trivial patches (like error corrections in mission text).

If you want evidence of this, I invite you to check out my record with the KDE project, visible at https://phabricator.kde.org/people/commits/11806/

To maintain some structure to the way new things get pushed can I suggest some rules for merging new content/code.

All proposed content (excluding simple bug/typo fixes) is PRed, even if you have write assess. This is to allow everything to be reviewed.
People with push assess only merge things related to what they do (ie, tehhowch merges code and Amazinite merges content).
You don't merge your own stuff. This means that 2 people will have looked and approved every addition, the PR creator and the merger).

I do think though that a community fork or a second experimental branch would be ideal as a testing ground: everything deemed safe/tested goes straight into master, everything that needs testing on a scale the PR-author cannot provide but still seems a good idea, goes into experimental and then into master (or not).With more maintainers that would probably easier to do (“if in doubt, just put it in experimental“). It might ease the feeling of loosing control on your side, MZ, too.

@jafdy I was personally already planning to still PR content I make for review purposes. I’m also all on board with me not merging anything code related that I don’t entirely understand.
“You don’t merge your own stuff” though sounds like we’re just back at square one; if I only merge data changes and Tehhowch only merges code changes, but we each propose our own data and code changes respectively, then the only person that could approve our stuff is MZ, which somewhat negates the idea of MZ seeing himself “as one more content creator instead of telling [himself he needs] to carry the whole weight of everything.”

I think part of the point of trusting both of you with your positions is so that you can merge whatever needs merging. And the fact that he trusts you to not merge stuff that you aren't confident in. That being said, we have a community for a reason, and part of that is for checking stuff over.

It is true that that is counter productive as things stand but it would be come required with more than 3 or 4 people with merge permissions. The main point is that nothing should go in without review by someone who knows what they are talking about.

by saying that you dont merge your own stuff simply means (in my understanding) that the other one must do the review and the merging of what you did, and if i understood correctly there are 3 of you now who can merge stuff (counting MZ)

ie : if @Amazinite makes some stuff, then it should be @tehhowch or MZ that merges it after review

@hellminister IMO merging one's own stuff is fine. Merging without allowing for proper review & community feedback is not something amazinite or I will be doing.

They wouldn't have been made collaborators if the community as a whole, and mz, didn't trust them to some degree. Of course there will be checks and balances, but artificial checks (never merging ones own stuff) only serves to complicate matters.

Just to check, have Amazinite and tehhowch got the assess to steam yet?

Nope, still just a moderator.

Can I request that this is changed (so we don't have a steam based bus number of 1).

@Pointedstick Welcome to the club.

Thanks, I look forward to being able to put my money where my mouth is soon and catch up to you and @tehhowch!

TBH I would still like to see the moderator and dev promotions happen. That being said, I do understand @endless-sky's reluctance to give over too much control to some individuals without having a good foundation for trust. So I may have been asking too much, too soon.

I hope to see the number of moderators reach back towards 4 active, and would like to see @Amazinite have better community controls over the forums.

Steam just doesn't have any rights management or roles in between moderator and developer

Officer? I've heard mention of it a couple of times.
Regardless having a full(er) set of moderators would be nice, as it stands Amazinite is the only fully active moderator.

Officer? I've heard mention of it a couple of times.

you rang?

Hence the problem, Wrzlprnft. I am requesting Derpy be listed as a dev, but I understand MZ not doing so.

I need to look into how the Steam NDAs work, because adding someone as a developer would mean giving them full access to the Steam internal documentation. I'm not sure if the NDA is per-"company" or per-individual.

I very much admire @endless-sky's stern vision and taste in designing the game, him being very demanding at times. What's been created here is already beautiful, and best of luck to all in the future.

in the light of recent events (ee8cc7185a10afbef2b24808a835eb62e2164c84, #4056), here's a suggestion:

In order to ensure the quality of commits, collaborators should always wait for at least one other collaborator to approve even simple changes before merging them. We all know that opinions are subjective, so even when you think something is perfectly fine, it might be best to get a second opinion first. Also, we're all humans and errors happen, even to the best of us.

I'm aware that this arrangement is slightly hindered by the fact that only 1 collaborator is fluent in c++, so changes to the codebases might need either more thorough reviews by community members or direct intervention from @endless-sky to be merged.

(Note that this is not a shot against Pointed in particular - as I said, opinions are subjective and therefore his opinion wasn't per se wrong - i'd just like this repo to be on the safe side when it comes to permanent changes. after all, we don't have to meet a certain commit count per day)

I feel a strong sense of deja vu. This is the exact reason I wanted that rule in the first place.

(Note that this is not a shot against Pointed in particular

It's okay, I can take my lumps. :)

But keep in mind there's no such thing as a permanent change when it comes to source code, data files, and images in a git repo. In my experience with open-source projects, it's better to err on the side of being too adventurous than too conservative. When the pace of development is fast, mistakes can be easily rolled back or corrected later, but when the community or the maintainers become too concerned with preventing all mistakes, what happens is that the perfect becomes the enemy of the good and things that are 90% done wither on the vine and bit-rot as their authors become frustrated and drift away. Also, it doesn't even work because mistakes will always be made anyway; better to get them into the codebase (or better yet, into production) faster so more eyeballs can spot them.

This pattern is seen over and over again. For more information, see

Anyway, I'm going to revert the cancerous commit and submit a PR that changes it to "Karkinos", which I think sounds completely awesome!

But keep in mind there's no such thing as a permanent change when it comes to source code, data files, and images in a git repo. In my experience with open-source projects, it's better to err on the side of being too adventurous than too conservative.

let me specify this further - i'm afraid that we might lose the quality that MZ has built over the years with his careful selection of merges. I'll leave it open whether he was over-conservative with his merges (or just overworked), but the fact remains that what we have here is a very, very stable repo even on the development branch, while all experimental changes happening on their authors' respective forks.
i'm not the one to tell if this is the perfect system (if such a thing exists), but it is something i wouldn't want to lose, especially without MZ approving of it.

That is a very fair point!

As a note, I only ever (at least intend to) directly commit simple bug changes. (Examples: https://github.com/endless-sky/endless-sky/commit/4d23a2fc4c552b61dfba76f695bf3bd7983a7c4d was direct because it was a change I had made elsewhere in those missions but had missed, https://github.com/endless-sky/endless-sky/commit/4fc70b6fc13ce5e8fd0f6e97adf3f322b13c5418 fixed an error in https://github.com/endless-sky/endless-sky/commit/55986e5c879e9e2da7979e316234e8bf49793327, https://github.com/endless-sky/endless-sky/commit/9f3dc8ce8f98286cf0b000a9d68655f8b975f5a7 was part of https://github.com/endless-sky/endless-sky/commit/4123e68f48049f67aa1ac2933331f54ec5e41a6a but was committed on its own for merge conflict reasons, https://github.com/endless-sky/endless-sky/commit/1d618b47695ad9bf2de9ffd7ea7f80da023c5770 was just a slew of error fixes from recently added PRs.)

In terms of PRs, I actually tend to let things sit for a while as a matter of allowing me to think the change through and allow more eyes on the PR. e.g. with #4051 you'll notice it took me three days to comment because I was thinking the change over (yes, even seemingly small changes can take some time to think over) and realized there was an issue with it when I was playing and spotted the Modified Argosy in a shipyard and I noticed that #4051 would make the Raven more expensive than it. Other examples include #4017 with the two day gap between Pointed asking for objections and me objecting, #3120 still sitting due to just how big of an addition it is even though I think it's ready, the three day gap between me approving and merging #3984, etc.

I had noticed #4056, but hadn't had the time to comment on it because it wasn't even open for a day. :)

At the least we you (because I can't merge) should take more time over things, just to let a few people look over them before they get merged. This is doubly true for things that are just good practice (like Muspel/Norn). If that PR had stayed open for a full day that would have let that get caught while not dropping any momentum from the project, I'm not saying we should make a rule that a PR needs to be open for at least a day.

Having PRs open for a day or more would not hurt the momentum any, and issues would get spotted easier. There's no hurry IMHO.

For your information, I've forked the game two months ago and since then made hundreds of code and data tweaks; it's located at https://github.com/finite-galaxy/finite-galaxy.
I realize this is probably not the correct place to post (cf. #4082), but I do believe having this (and other) fork(s), which experiment with new ideas, could help with the development of Endless Sky's main distribution, therefore I decided to announce it here on github.

@finite-galaxy https://github.com/EndlessSkyCommunity/endless-sky already exists to try out PRs intended for the main game without making massively incompatible changes in the process.

to be fair, that fork has fallen behind quite a bit since the community was granted access to this repo.

And so that v0.9.9 still has a fair amount of new content for people to play with, #3120, #3151, #3216, #3298, #3761, and #3781 could be merged for a total of 78 new missions. (Although out of those PRs that add new missions, @Zitchas and I are still working on polishing #3761.)

Well now #3761 and #3120 are completely done and in. A little bit ago I asked the Discord server if they'd be fine with releasing v0.9.9 without the Wanderer campaign's conclusion, and it was an overwhelming yes.
image

It's still up to @endless-sky, but I'd say we're pretty good to go right now. Just need to update the changelog.

It seems like the community processes are in-place and working, with releases completed now. Does this mean the issue should be closed?

There are still some hurdles to be taken. we need a working release schedule (we are very close to 0.9.10, but until it's out, we don't have a working schedule yet). and we are still lacking mods for the steam forums, right now those who have been given permissions years ago are trying their best while we have a handful of people ready to jump into action but can't.

It seems like the community processes are in-place and working, with releases completed now. Does this mean the issue should be closed?

The vast majority of issues that were brought up were either outright not addressed or only addressed passively. I admit my frustration, as we essentially got the canned "lol steam or something" response nearly a year ago and have since then seen very little movement.

But no the issue is not resolved, and thus should not be closed.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ph2000bis picture ph2000bis  Â·  3Comments

Lorantine picture Lorantine  Â·  3Comments

Bladewood picture Bladewood  Â·  3Comments

DingusShingleton picture DingusShingleton  Â·  3Comments

Safari-Is-Amazing picture Safari-Is-Amazing  Â·  3Comments