How to manage community editions

Note This thread was split from the announcement of Tidbits. That one serves as the showcase for and discussion of the recipe edition. This one is about community editions more generally.

Everyone in here talking about their cooking UX, meanwhile I’m interested in the community edition framework/ecosystem. :grin:

Some questions… Is the community getting onboard? Anyone planning to launch a new edition? How is the collaboration going to work? Make a big PR for @Scott_Sauyet to consider? Or make an edition proposal first somewhere/somehow? What would be the criteria for acceptance or rejection? Who will decide? Is @Scott_Sauyet the benevolent dicator for life (BDFL) of the TW5-CommunityEditions?

We all know there are lots of potential “editions” out there. Any current or prospective edition maintainer interested in migrating to, or at least making an edition available at TW5-CommunityEditions?

FWIW I’d love to see a tested and bug-free Todo list/Projectify edition.

Wdyt?

@simon

Ps, I could make my MPTW edition available in TW5-CommunityEditions. It’s a bit light on functionality though. Would it meet the criteria for inclusion?

Pps, this might be better moved to a fresh topic to keep it distinct from the Tidbits bugs conversation!

Great. Because that was the larger goal. Recipes was just a demonstration of the idea. Albeit a demonstration that took about three times as long as expected!

There was a lot of interested talk about this in the threads mentioned in the first paragraph of the OP:

But there were no real decisions. I’ve been putting off working on a recipe edition for far too long. In coming back to it, I thought I could use it to put up a target for discussion on the whole idea. But I jumped the gun on an announcement when I was finally fairly satisfied with this edition itself. I really would like to have at least two more sample editions before I try to come up with another target: a community editions platform of some sort.

I have a number of vague ideas about it, and I don’t mind being the one to put in a stake in the ground. It’s so much easier to have these discussions when they sound more like, “Why don’t we do this instead of that?” than like, “Well, we could try any of these options.” When this approach is done well, the final product could end up entirely unlike or nearly identical to the original approach, but everyone has been able to have their say.

I would hope that it would happen here in Talk, maybe with a dedicated channel.

Good questions! Next, question, please? :wink:

I’m thinking of discussions here in Talk, ideally using some Discourse voting mechanism. A discussion goes on for a while, and someone says “Call the question”, and we post a poll here. If we get at least n votes, with at least p percent voting yes, the edition / change/ whatever is accepted. For instance, @SnapSam asks about a potential new edition. Discussion ensues. Changes are proposed, some are accepted by Sam, some rejected, changes are made, and as new suggestions seem to peter out, @Springer says, “Call the question”, and @Thomas_Chuffart, @vilc, @TiddlyTitch , and I and ten more people all like @Springer’s post, enough to end the debate. And you, @simon, or one of the other Editions moderators – what, weren’t you volunteering to be a moderator, Simon? Sorry you’ve been drafted – you post a poll and a week later we check it for the thresholds. Enough voters? Check! A high enough percent of “yes” votes? Check! The edition is chosen for inclusion, and added to our fancy-dancy new tool.

Agreed. I was thinking of TODO as a likely candidate for an edition. I have used Projectify, but as with any such tools, I seem to have abandoned it after a short period. :frowning: I think we’d need to have its creator or a regular user work on such an edition.

No.

God, no!

I needed a break from this work, but expect to get back to it in the next few days. My goal was to do much simpler proofs of concept for two other editions; I didn’t know what editions yet. And then I thought there would be just barely enough content to hang our discussion on.

I would like to stay involved, and if we have some Community Editions moderators, I would be happy to serve as one of them.

But, while I’m reasonably good at building things, I’m not so great at maintaining them!

I don’t know. How well does it meet the Criteria? :slight_smile:

A community edition:

  1. must serve a useful and relatively common purpose.
  2. should have a clear, narrow scope and a complexity ceiling — roughly 1,000 words of explanation should suffice to understand the whole thing.
  3. should work out of the box without configuration.
  4. should be self-documenting from within.
  5. should ship with illustrative sample content — ideally as a separate JSON bundle so the empty and populated artifacts are both first-class.
  6. should make common customizations easy — palette-based theming, user-facing strings in well-named tiddlers, no hardcoded UI strings or colors.
  7. should showcase idiomatic, modern TiddlyWiki — educational as well as functional; modern techniques preferred but not pushed.
  8. should be maintainable — prefer core TW and established community plugins over custom wikitext.
  9. should follow TW namespace conventions — keep implementation details someplace like $:/community/recipes/....
  10. should be deployment-agnostic — single-file HTML, but nothing that breaks under Node or a server.

Or what should we be looking to relax or tighten up in this criteria?

I fhink you’ve done an amazing job with this so far, and I think its a great step forward on making Tiddlywiki more accessible to new users as a whole. :grin:

as far as critique, Id want to touch on the skill ceilong part you pointed out.

rather than limiting it, we could give them ratings of complexity? something like how biking paths are with beginner intermediate advanced etc.

Just food for thought (and yes, that is a pun because of your recipe edition)

Thank you. That is the entire goal. I’m glad to hear this seems to be headed in the right direction.

Maybe. Perhaps eventually. The thrust of the motivating threads for this, though, was to make it easier for beginners to understand and appreciate TiddlyWiki. My thought was that an approach to Community Editions needs to stress simplicity.

Clearly, editions in general can have whatever level of complexity they need to serve their purpose.

I did soften https://github.com/CrossEye/TW5-CommunityEditions/blob/main/Philosophy/EditionCriteria.md to replace “An edition must…” with “A community edition must”, and I will edit the OP to that end too.

I’ll let it marinate. :wink:

This is great!

I’d love to publish this (as well future community editions) as a template on Tiddlyhost. If I pull down from Tidbits — Community Recipe Edition v1.0.1 is that going to be always a freshly built latest version?

I could do my own build if needed, but a simple curl fetch would be convenient.

I think that would be great!

I’m hoping that eventually the URL will change, but it should always be a simple fetch.

I didn’t talk about it much in the OP, but this was supposed to be Stage 1 of a multi-stage process. However, it’s consumed all my free time (and too much of my sleep time as well) for a few weeks, and outside my small roadmap and the feedback I get here, I probably will sit on it for a little while. Especially as local politics is going to capture a lot of my free time for the next few weeks.

However the plan was (and still is, even if delayed) that Stages 2 and 3 were to try to build sample editions for two other familiar domains. And with a few at hand, Stage 4 was to build a UI to manage community editions. At that point, I would expect the URL to change. Ideally, I would love it to be something like editions.tiddlywiki.com, pointing to a Docker container running somewhere. A small Stage 5 would be to introduce this to the TiddlyWiki front page, so that first-time users can try working with TW with something relevant to their needs. I hope after a short hiatus, I can return to these goals.

Something like this is what I was thinking:

https://tiddlyhost.com/explore/user/tw5-ce

At the moment it’s updated manually, but if the Community Editions repo takes off we might want to create some automation to make sure it’s always fresh.

(To see how the sausage is made, look here.)

That makes perfect sense to me, but I’m hoping for another mechanism as well, as discussed.

Got it. Another food reference in relation to this project, huh?!

Right.

Whilst that is pondered I simply want to comment TiddlyHost/you is a BDOH (Benevolent Donator Of Hosting)! One with longevity and edurance.

IMVHO, You can well decide, informatively, on what editions are replete and best workable on TH.

Just a comment
TT

Dunno. Though some miscellaneous comments might help towards a denouement.

Q 1: excise the words “and relatively common” as they add unnecessary complexity?

Q 2: excise the word “, narrow”. Define “complexity ceiling” or simply ditch it and say: “Limit explanation to less than 1,000 words wherever possible.” ?

You get the idea?
Simples may be better?

TT

I like the idea of Tiddlyhost being impartial. It’s just a distribution channel, rather than a curation service.

That said, I do hope TW5-CommunityEditions can become the preferred and trusted place to find well maintained, well tested TiddlyWiki editions, and that Tiddlyhost is one of the ways users can consume those editions.

FWIW there is some discussion here about the idea that Tiddlyhost could take on a curatorial role in collaboration with the wider community. FWIW, I think the TW5-CommunityEditions is a better place to do that. Someone who doesn’t want to use Tiddlyhost, should be able to consume/use the (semi-?) official community editions, right?

-Simon

Ps, one thing I suspect that will be key the success of TW-CE: The experience for existing or potential edition maintainers to a. have their edition included in TW-CE, b. keep it fresh and built/tested against the latest TW5 core. Can we make that easy? Can we make that fun?

I’m not so sure about that. I do want to exclude the wiki that tracks all the drivers scheduled to take Aunt Muriel to her 73 scheduled monthly doctor’s appointments, with overrides to exclude for a week or so those drivers subject of her latest prejudice rant. This wiki may be extremely useful, but it probably wouldn’t make a good community edition.

I guess I agree; the scope could be very wide, so long as it’s something easily understandable/describable.

Yeah, “complexity ceiling” is my inner programmer coming out.

How does this sound as a replacement:

A community edition

  • should have a clear and easily describable scope. It should not require much more than 1,000 words of explanation.

?

It’s not my place to say, but I heartily agree.

That sounds like exactly the relationship I would like to have.

TW-CE offers some combination of empty/contentful versions in some number of languages. For each one it offers the ability to view it on TH, plus offers a single-file download and a link to clone this version on TH, and possibly a link to the source version (or zip) for Node users.

I’ve done some real thinking about that, and I have a few very tentative answers.

I won’t be able to start coding this until early next month, though. I’m chair of a local political party, and this time of year is almost as busy as the month before a national election. Moreover, I have one more small TW thing I’d like to finish up before I get back to this. But get back to it I will!

Right. And the case for that is overwhelming IMO.

Something I forgot to explain in my post is that though I do not host my wikis on TH (have own host) I frequently monitor Tiddlywikis on TH for new beautiful designs and innovations.

TH is the easiest place to get a good sense of what TiddlyWikians are doing today.
Meaning: TH is The Centre Point for many, many active TWs.

So. I checked. As a not-hosted. Could I download the Tidbits Edition from your indexical at … TiddlyHost/Community-Eds ?

Yes!


Upshot: Could be a great one-stop source for any user (including those not-hosted on TiddlyHost) needing a Community Edition?

Best, TT

Sounds v. good Holmes.

TT

Since the discussion, has been reframed, I would like to add a criterion for community editions at large:

  • Can be readily integrated into an empty wiki.

By implication it would be only one click.

The only real way to do that is through plugins. Plugins have the additional and major benefit of being versioned.

What would differentiate the edition from just being a plugin collection is that itw ould come with some examples and maybe even sample data (e.g. some pre-defined recipes), while the plugin by itself would not ship with any examples.

I believe this would be essential to the long-term success of community editions. Compare with many of Mohammad’s plugins: while Mohammad endorses Mehregan edition, users can get most of its functionality through the plugins it decomposes down to, and they are quite popular indeed in our little community.

My definition of an edition is that it is an empty wiki. So I don’t agree with this take. An edition might contain several plugins, or it might not contain any. (For example, MPTW5 has no plugins.)

The key attribute of an edition is that comes out of the box ready to use, no assembly required.

You might say the distinction doesn’t matter, but if you consider the user experience, getting started with an empty TiddlyWiki and a plugin is not simple. You said one click, but that’s not my experience. If I start at https://tiddlywiki.com/#Community%20Plugins one click doesn’t get me very far.

To be clear, I’m not saying an edition can’t be also made available as a plugin for those who want to consume it that way. But I don’t think plugins are the best way for a user to get started with an edition like Tidbits.

I disagree. While some editions would be easily implemented that way, to me the idea of editions, or at least these editions is that they are self-contained full wikis. They will contain plugins, maybe many of them, but they may also override core systems as needed, from fairly small things like animation speed to entire new layouts, entirely new UX.

For instance, TidBits ships with two widely used plugins, Autocomplete and Relink. What if the wiki you want to add TidBits too is incompatible with one of them? What if the stylesheet I write hides important information in your application?

To me, a plugin is something that does a specific job and does it across a great variety of use-cases. An edition is larger. It is not meant for importing anywhere. If it can be built out of plugins, great, but we shouldn’t try to restrict ourselves to that.