mirror of https://gitee.com/bigwinds/arangodb
34 lines
1.4 KiB
Markdown
34 lines
1.4 KiB
Markdown
---
|
|
layout: default
|
|
title: CommonJS Process
|
|
---
|
|
|
|
CommonJS Process
|
|
================
|
|
|
|
The CommonJS group has, to date, operated in an informal manner. Our goal is to make meaningful progress toward these goals:
|
|
|
|
1. Design reasonable APIs for common application needs
|
|
2. Document those designs
|
|
3. Implement those designs in different interpreters and environments
|
|
|
|
The process followed through the development of CommonJS 0.5 has been:
|
|
|
|
1. Discussion of an API area is started on the mailing list
|
|
2. A page is created [on the wiki][wiki] to collect proposals and prior art
|
|
3. Further discussion and iteration on the proposals
|
|
4. A rough consensus is reached
|
|
5. The proposal graduates from the wiki to this website
|
|
|
|
So far, achieving rough consensus among the group has been a successful route to meeting these goals. Everyone involved has interoperability on their mind and interop necessarily involves compromise and minimal [bikeshedding][].
|
|
|
|
As applications built upon the CommonJS APIs start appearing, we will likely need more process to handle changes to the API.
|
|
|
|
Further reading
|
|
---------------
|
|
|
|
For an interesting take on API design from a highly regarded master, take a look at [this tech talk by Josh Bloch][bloch].
|
|
|
|
[wiki]: http://wiki.commonjs.org/ "CommonJS Wiki"
|
|
[bikeshedding]: http://en.wikipedia.org/wiki/Parkinson%27s_Law_of_Triviality "Parkinson's Law of Triviality"
|
|
[bloch]: http://www.youtube.com/watch?v=aAb7hSCtvGw "Josh Bloch on API design" |