Keep it small and simple. Solid forgot the KISS principle and now it is an interwoven mess of procedures, teams, panels, repositories, and more. Here are some ideas that appeal to me personally to simplify:
-
Have two github organizations to separate different concerns:
- Solid: Everything that has to do with specification development, nothing more.
- SolidProject: Everything that has to do with implementation of the specification.
-
Solid github organization has:
- specification repository.
- panel-discussion repository.
- solidproject-website repository.
- (probably some more, I didnāt go through the list)
-
Solid Project website focuses on clearly explaining the spec, and what it brings to implementers.
- Change the site look&feel from a product website to a documentation website.
- Create accessible documentation for a broad (dev) audience, add diagrams, animations, etc.
- Does the site need a separate staging repo? I think not.
- Does the site need a process on top of the PR process? I think not.
- Define a github team for Editors, have projects with a kanban board for issue tracking
- Define templates for issues and PRās, assign clear labels for issues.
- Kill the MIT website, or have it redirect. It is yet another confusing entrypoint to Solid initiative.
-
Panel Discussion repository squashes all panel repoās into one single location.
- Have one top-level README to drill-down into the panel structure.
- Have issue labels indicating to which panel the issue belongs.
- Have teams per panel, and a project + kanban board per panel, Assign issues to panel members.
- Update a Changelog upon closing an issue, part of Definition of Done. What was the outcome?
- Have stalebot auto-close issues untouched for 6 months. They are probably unimportant.
- Use new Discussions feature of github, if you donāt want to use forum (add pointer instead).
- Remove elaborate, overly formal Process repository. Small explainer + some bullet points suffice.
- Could even remove issue tracker from Specification repo: all goes through panel discussion.
-
SolidProject repo contains all the various code projects.
- Should only contain āofficialā repoās (probably already does).
- Have clear naming conventions, libs, tools, sdks, reference impls, examples, pocs, etc.
- Archive every repo that is old an out-of-date.
- Mention all official repoās on Solid Project website in a single page and highlight their purpose.
-
Solid community forum can become more interesting for the community + core members.
- An easy way to improve and liven up the forum is to assign active members as moderator.
- If moderators become inactive, after a while, they lose their spot if they donāt pick up.
-
Solid initiative now consists of only 4 parts forming an onion model from outside in:
- Solid Project website: First point of contact, top-level entry, onboarding, facilitate early adopters.
- Solid Community forum: Free-form discussion, ideation, sharing insights, giving feedback.
- Solid Panel discussion: Formalising feedback for standardization, elaborate technical concepts.
- Solid Gitter channel: Active member day-to-day chatter, hop in for quick question / feedback
Thoughts?
(PS. Also posted to Improving the effectiveness of Panels issue in github Process repository.)