pandorabox-io / in-game

Random code and stuff for in-game things
MIT License
3 stars 0 forks source link

Managing new ideas #4

Open S-S-X opened 3 years ago

S-S-X commented 3 years ago

Any good ideas on how to manage new good ideas?

Currently there's this in-game repository, wiki is also available.

Maybe we need few more labels to mark ideas if there will be many ideas and some are more in brainstorming stage while some almost ready to start actual implementation.

chat is more like brainstorming thing, sometimes ideas end up being github issues and possibly implemented if throwing ideas directly to github as issues then I thing it should be separate repository just for these issues and from there when it is determined that idea is good enough it should be closed there and moved to pandorabox.io repo

So this repository (in-game) would be for new ideas and preliminary discussion, when idea is nearly ready to be implmented it can be moved to pandorabox.io repo as new issue linking here.

Steps for new idea:

Current state (see https://github.com/pandorabox-io/in-game/issues/4#issuecomment-919904386)

For bugs and non-game-related issues (unless its about the lua code stuff here), they should be added to https://github.com/pandorabox-io/pandorabox.io/issues, or to a specific mod's issues.

If need for filtering out ideas arises then that can be easily allowed by mass updating idea issues restoring removed idea label.

S-S-X commented 3 years ago

Added documentation label for this to remind that whatever methods will be used those should be documented somewhere, probably in wiki. Simple list of steps / life cycle of new ideas with links could very well be enough. Could be useful to link to this repository from discord #ideas channel too.

Klaranth commented 3 years ago

Can this be made 'sticky' to stay on top of this list?

OgelGames commented 3 years ago

Yep, good idea too :D

FeXoR-o-Illuria commented 3 years ago

What about a category "Ideas" in the wiki? :)

S-S-X commented 3 years ago

Also another possible option provided by github, just few hours ago learned that it exists so no idea if it is good or not but it had built in tag for ideas 😄 https://github.com/pandorabox-io/in-game/discussions/categories/ideas

Klaranth commented 3 years ago

Also another possible option provided by github, just few hours ago learned that it exists so no idea if it is good or not but it had built in tag for ideas 😄 https://github.com/pandorabox-io/in-game/discussions/categories/ideas

Basically the same, just a different page? Would the only adjustment be that people's mailbox won't explode again? Can we test it out and see how it behaves with half a dozen test ideas?
If we all agree to use this over the issue pages, I have no problem moving open issues over.

Klaranth commented 3 years ago

On the subject of labels, If an idea hasn't generated a discussion or even one reply after 7 days, move it to Possible Close. One week after that, still no response. it gets closed. Not deleted, as sometimes someone wants to go through the closed ideas when they are bored and want to write some code for fun. That way the list will only show active discussions and new fresh ideas.

S-S-X commented 3 years ago

Basically the same, just a different page?

There's that voting thing, yes same could be done with reactions but vote up/down provided by discussions is probably better suited to determine what changes/additions should be considered more seriously.

If we all agree to use this over the issue pages, I have no problem moving open issues over.

I think we should not agree on that just yet but few ideas with active discussion or few new ideas could be moved/created there to see how it works. Then after used for some time determine if it is a lot better and make decisions about moving issues after that, I don't think there's any reason to rush it and doing so might just generate unnecessary work.

On the subject of labels, If an idea hasn't generated a discussion or even one reply after 7 days, move it to Possible Close. One week after that, still no response. it gets closed.

In my opinion 2 weeks to close is way too short unless it is clearly very bad idea or impossible to implement. I think possible close label should not be used because there was no discussion but instead if it has been actively determined that issue should be closed because it will not be implemented, is already implemented or discussion is moved elsewhere.

Working with issues filtering by labels or milestones would give better results, for clearly inactive issues that do not have clear reason for closing there could simply be "inactive" label and that would allow simple filtering. Another good option to list active issues is to use "recently updated" sorting in issue list.

S-S-X commented 3 years ago

Linking from github discussion to issues works bit different compared to links between github issues.

When linking issues to other issues github mentions link on target issue but linking from discussions does not add this backlink. This does have both upsides and downsides: less cluttering up existing issues but can make finding related useful things harder.

S-S-X commented 3 years ago

Discussions cannot be currently closed or archived in any way, only locked to not allow any more replies. This is not good and probably makes discussions lot worse system for idea lifecycle management.

Closing discussions might be added as new feature later but no decisions (at least no public decisions) about that done yet.

Klaranth commented 3 years ago

Well, right now, it is relatively easy to move discussions to issues.

I will be moving all new discussions into Issues, remove them at discussions, and from now on I will keep using Issues to place new ideas.

Klaranth commented 3 years ago

SX stated: Simple list of steps / life cycle of new ideas with links could very well be enough.

The simple question will be : What can we agree on?

1) - Some ideas are simply not possible, or labeled non-trivial, or have been discussed before. Those I close after 4 weeks. There is always a chance an impossible idea will generate a discussion that leads to a different problem that CAN be solved. Hence, giving it 4 weeks to blossom.

2) - Issues that are still open after 4 weeks, but have had no discussion about, I will nudge @S-S-X , @OgelGames to take a good look at it and make a decision.

3) - Issues that have a discussion going on, will hopefully lead to a PR and implementation. When discussion stagnates, they fall under item 2).

That said, having a LOT of open issues / ideas is not a good situation. they need to be addressed. I will aim to have at least 1 issue a day dealt with, either moving forward, starting a discussion or closing it.

Can we all agree on a protocol like this? Do I need to make adjustments? Will this clarify the process?

S-S-X commented 3 years ago

Issues that have a discussion going on, will hopefully lead to a PR and implementation

If people was able to agree on something at least then hopefully yes but moving from agreement to usable pull request / usable implementation (even just proof of concept) can take significant amount of time.

That said, having a LOT of open issues / ideas is not a good situation. they need to be addressed.

Why exactly having many open ideas is bad situation?

I will aim to have at least 1 issue a day dealt with, either moving forward, starting a discussion or closing it.

If aiming for good results and closing issues here before having actual implementation then that simply will not happen unless you pay for code... Definition of done here when people agreed on something could be:

Moving issues elsewhere for implementation changes visibility. This can affect efficiency and delay before final solution is ready. It might make implementation part more efficient and faster or it might make it less efficient and slower.

How it affects actual implementation part depends on multiple things and cannot really be easily predicted, multiple open issues might also be good in some cases but that will not reduce open issue count here.

Klaranth commented 3 years ago

That said, having a LOT of open issues / ideas is not a good situation. they need to be addressed. Why exactly having many open ideas is bad situation?

Many is not the problem. A LOT is.
To me a lot of open issues may happen when an influx of ideas occurs, and nobody does anything with the ideas. Sitting in the list, gathering dust.

I doubt we will ever see an empty list here and that is NOT what I aim for. The aim will be quality over quantity. We should keep in mind, though, to not let things slack.

I still don't know what to do with Minigame labeled ideas. they will probably sit in the list until somebody decides to build them. Should we add them to a list in-game? Keep them only here and hoping people will find them? Should we actively look for players willing to invest time in it? I don't know. You tell me.

S-S-X commented 3 years ago

To me a lot of open issues may happen when an influx of ideas occurs, and nobody does anything with the ideas. Sitting in the list, gathering dust.

Sometimes it just takes time before someone finds time to actually begin implementing ideas, it is not just about gathering dust. It is more about not enough people who know how to do it even if they would like to implement something or do not currently have enough time to do it.

Basically not enough people/manhours to actually write code as fast as people come up with ideas that would be good enough to actually iimplement.

I still don't know what to do with Minigame labeled ideas. they will probably sit in the list until somebody decides to build them. Should we add them to a list in-game? Keep them only here and hoping people will find them? Should we actively look for players willing to invest time in it? I don't know. You tell me.

Having some list of ideas in game that can be directly implemented in game could be good idea, worth to try it in my opinion. There's that global infoscreen system, it could be improved by adding infoscreens around world and updating list of things to implement in game. Possibly even offer some bounty system for public things like that to possibly find more players who would be willing to invest time to do things like that in game.

OgelGames commented 3 years ago

I spent some time updating labels and moving some issues, basic concept for labeling is:

For bugs and non-game-related issues (unless its about the lua code stuff here), they should be added to https://github.com/pandorabox-io/pandorabox.io/issues, or to a specific mod's issues.

S-S-X commented 3 years ago

An issue without one of these would be assumed to be not about an idea.

Originally I've added idea label to allow easily filtering out idea issues and allow using other labels with issues that are not ideas. There's not been many issues that are not game improvement ideas, actually I think just this one and #1 so far. That functionality is not currently very high demand but I thought it would be good to explain this here if some day later it becomes relevant again.

OgelGames commented 3 years ago

Originally I've added idea label to allow easily filtering out idea issues and allow using other labels with issues that are not ideas.

True... It is still possible (though less convenient) to filter them though:

https://github.com/pandorabox-io/in-game/issues?q=is%3Aissue+is%3Aopen+-label%3AEnhancement+-label%3AAddition+-label%3A%22In-game+task%22+-label%3A%22Event+idea%22+-label%3A%22Mod+request%22

S-S-X commented 3 years ago

Originally I've added idea label to allow easily filtering out idea issues and allow using other labels with issues that are not ideas.

True... It is still possible (though less convenient) to filter them though:

https://github.com/pandorabox-io/in-game/issues?q=is%3Aissue+is%3Aopen+-label%3AEnhancement+-label%3AAddition+-label%3A%22In-game+task%22+-label%3A%22Event+idea%22+-label%3A%22Mod+request%22

Actually that's not possible because of "and allow using other labels with issues that are not ideas".

Klaranth commented 3 years ago
  • Categorize ideas with one of the labels; Enhancement, Addition, In-game task, Event idea, Mod request. An issue without one of these would be assumed to be not about an idea.

Never gonna keep track of that, unless ... The first step labels are labeled : 1 - [labelname]

  • When appropriate, add one of the "status" labels; Active voting, TODO, WIP, Waiting. And these labeled with prefix '2 - '