w3c / oss-relations

Discussions and documents linked to the relationships W3C has or should have with the Open Source Software ecosystem
2 stars 2 forks source link

OSS development in W3C groups #6

Open dontcallmedom opened 3 years ago

dontcallmedom commented 3 years ago

Compared to other standards organization, for the most part, W3C has not been driving implementation work as part of its standardization process. The W3C Process recognizes software as possible deliverables of Working Groups, but they have not in general been included in recent charters.

Some Working Groups and Community Groups have historically developed polyfills as a way to guide both the design and the early adoption of their work, but this has been done in a rather ad-hoc fashion.

Would there be a value in a more programmatic approach here? This could include defining good practices in terms of governance, developing maintenance plans, packaging considerations, licensing, etc.

This may play a special role in situation of single implementations (cf #3); this would also create situations where W3C plays a direct role in some projects governance (cf #5)

dontcallmedom commented 3 years ago

paging @dwsinger who had expressed interest in these questions

dontcallmedom commented 3 years ago

likely relevant: the W3C TAG advices on shipping polyfills

Malvoz commented 3 years ago

The W3C TAG Guidelines for creating web platform compatible components is likely relevant as well.

dwsinger commented 3 years ago

I am curious to know if we should have a more conscious program in sample code or even formal reference code. In general, these tend to be open-source-like rather than true OS (e.g. the patent license would come not 'with' the source but from the associated W3C spec.; commit privilege and review would probably be restricted to members of the WG; and so on). Other bodies 'publish' sample/reference code, often by dumping a snapshot from a repo (e.g. 3GPP, MPEG). I rather think that suitable repo release tagging would be better ;-)

dontcallmedom commented 3 years ago

note that one way some of this extraction/packaging already happens today is via reffy, a tool that extracts bits from W3C specifications and publishes some of it as NPM packages (WebIDL fragments, soon CSS syntactical definitions.)

There were discussions in at least sharing guidance on writing sample codes in the context of the MDN Product Advisory Board:

(I'm assuming at least that's what you're thinking of as sample code - i.e. sample of using the technology, rather than sample of how to implement it) ; I'm curious if you have specific ideas on how such code can benefit from better packaging / re-use - one possible usage is to support re-usable code patterns e.g. as provided in https://webrtc.github.io/samples/, but from my experience, spec sample codes are rarely developed enough to allow this, and places like MDN in general feel likely like better hosts for that.

ericprud commented 3 years ago

I am curious to know if we should have a more conscious program in sample code or even formal reference code.

Quick pedantic point; "reference implementation" implies that you have to be bug-compatible with it. Calling it "sample implementation" or "example implementation" maintains the primacy of the spec over bugs in the code.

from my experience, spec sample codes are rarely developed enough to allow this, and places like MDN in general feel likely like better hosts for that.

In part because it's someone's job to maintain these pages with updates and see-alsos, and in part because informal descriptions are typically more intuitive because they don't have to be so meticulous.The spec's examples would tend to include more features and corner cases than your average user wants to see. I don't know if there's a much value to such a corpus outside of a test suite and the narrative of the spec, but maybe...