about:standardization
about:standardization
Elika J. Etemad aka fantasai
W3C CSS Working Group Invited Expert
A standard is an agreed, repeatable way of doing something. It is a published document that contains a technical specification or other precise criteria designed to be used consistently as a rule, guideline, or definition.
— British Standards Institution
A standard
is an agreement
on technically precise criteria
so that we can consistently repeat something.
Like what?
Hot water knobs.
Paper sizes.
Measuring soil properties.
Displaying a Web page.
Open Standards
- Publicly Available
- Freely Implementable
- Transparent Process
- Public Participation
Benefits of Standardization
Process Benefits
Collaboration +
Wide Review →
Technical Merit
Consensus +
Documentation →
Interoperability
Ecosystem Benefits
Openness & Vendor-Neutrality
🠿
Competition & Diversity
🠿
Quality & Longevity
Longevity
Proprietary
| .....🐇
| 5年
|
Open
| ....................................................................................................🐢
| 100年
|
Method of Standardization
Standards are created by bringing together
the experience and expertise
of all interested parties
such as the producers, sellers, buyers, users and regulators
of a particular material, product, process or service.
— British Standards Institution
Standardization Roles
- Community Member
- Working Group Member
- Chair
- Editor
- Reviewer
- Tester
- Implementer
- End-user
How to Participate in Standards Development
- Step One Read the spec
- Step Two Complain about it
- Level 2 Opine in issues
- Level 3 Suggest improvements
- Level 4 Edit the spec
Types of Review
- Deep [Expert] Review
- Wide [Community] Review
- Horizontal [Specialist] Review
Formally Addressing a Comment
- Understand the feedback
- Analyze the problem
- Design and evaluate possible solutions
- Discuss and resolve the issue
- Edit the spec
- Respond with rationale
- Solicit commenter verification
Making Decisions
- Delegation to Editor
- Consensus of Working Group
- Working Group Vote
CSSWG Delegation Model
| early WD
| late WD
| CR
| REC
|
Editorial
| Editors
| Editors
| Editors
| WG
|
Bugfix
| WG
|
Limited Impact
| WG
|
Wide Impact
| WG
|
Communication Methods
- email / bug tracker
- chat
- telecon
- F2F
Advantages and disadvantages to each: find a good balance for your group
How to Run a Good Meeting
- Have a clear agenda
- with a discussion goal for each item
- Have an empowered chair
- to evaluate consensus, manage time + on-topicness + queuing, and shut people up when needed
- Have a scribe
- to clearly record the conclusions and, ideally, what led to them
- Support each others’ participation
- by voicing your opinions and helping others speak up
Types of Standardization Efforts
- Designing New Features
- Bugfixing Existing Features
- Documented Reverse-Engineering
Interoperability
- Specifications
- Implementations
- Test Suites
- Web Content
-
Common Standardization Failure Modes
- No shared vision / goals / values / principles
- Bad chairing
- Nobody does actual work
- Failing to solicit adequate review
- Ignoring feedback
Shared Vision: Example from CSSWG
5 Principles of Web Architecture
Web Architecture Cross-Device & Cross-Platform
- Screen / Print / Braille / Terminal / Speech / Mobile / ...
- Landscape / Portrait / High-res / Low-res / Widescreen / Phone screen / ...
- NeXT / MacOS / Windows / Linux / Irix / Solaris / Symbian / Android / iOS / BeOS / ...
- Gecko / Presto / Trident / WebKit / Servo / ...
- Mouse / Keyboard / Touchscreen / Wiimote / Voice nav / ...
Web Architecture World-Wide Web
- All Writing Systems
- All Languages
- Handle Hybrids
Web Architecture Forwards- and Backwards-Compatibility
- Forwards-compatible Parsing
- Levels, not Versions
- → Enable Progressive Enhancement & Graceful Degradation
- → Don't Break the Web&tm;
Web Architecture No Dataloss
- Visible By Default
- Readable By Default
Web Architecture Separation of Content & Style
- HTML for content & structure
- CSS for presentation
Why? Separation of Content & Style
- Efficiency of Implementation, Maintenance, Memory/Bandwidth
- Accessibility for Speech, Search, Reader Mode and Other Re-use
- Variability Exploring Choices, Changing over Time
Principles of Web Architecture
- Cross-Device & Cross-Platform
- World-Wide
- Forwards- and Backwards-Compatible
- No Dataloss
- Separated Content & Style
Fundamental Goal of the Web = Accessibility of Information
Constraints of CSS
- Unknown display size and orientation
- Unknown font availability
- Unknown content (user-generated, database-generated)
- Unknown language / writing system (localization, translation)
- No post-processing
Design Principles of CSS
- Flexible
- Powerful
- Robust
- Understandable
- Performant
Automatic Sizes
grid-template-columns: max-content max-content 1fr min-content