The historical processes boil down to:
1) Single Browser Ideates -> Single Browser Ships -> Time Passes -> Other Browsers Ship -> Standard. This caused delay in implementation and vendor prefix hell.
2) W3C Ideates -> W3C Bikesheds -> Browsers Implement. This causes things like AppCache that work on paper, but don't adequately cover developer use cases and address the needs of the platform.
The ideal process (in my opinion)
1) Single Vendor Ideates -> W3C Evaluates/Refines -> Browsers Implement Under Feature Flags -> Standard -> Feature Flags are removed. This process, depending on the size/scope of the change, should take about 6mo to a year. For a permanent irrevocable change to a cross-browser API? That is mature and prudent.
edit: formatting.