
Tim Bray wrote:
3. General advice on making standards
3.1 Dare to do less. Consider Gall's Law. Try to hit 80/20 points. Build "The simplest thing that could possibly work". When in doubt, leave it out.
This is my major concern with the route which OCCI has been heading to date. When the group was set up, I understood that our aim was to quickly write down and agree the common core between existing IaaS APIs: Amazon, Sun, GoGrid, ElasticHosts, etc. We've done some work in that direction (the nouns, verbs and attributes), but have also proposed a lot which would be going beyond what any/most IaaSes have actually implemented to date. For example: embedding of OVF, proposed extensions such as a search service, billing and reporting. We shouldn't be working on these - we should stick to 3 nouns, ~15 verbs, ~15 attributes (of which we have a good draft) and should wrap these in the simplest possible wire format (e.g. fix actuator URLs for each verb. Represent nouns as a single level JSON hash listing the attributes as key-value pairs). See the ElasticHosts application/json format at http://www.elastichosts.com/products/api for how simple this can be (or equivalently GoGrid, Sun, etc. - though I believe that Sun's JSON has unnecessarily deep data structures). Then we should declare victory and go home! Richard.