Interesting problem how to organize information in Facebook's Open Compute Project

I got a chance to meet some of the Facebook's Open Compute Project team last week, and the meeting went much better than I expected.  One of the great questions Facebook asked was how to organize the Open Compute Project's efforts.  One typical approach would be a taxonomy of the different parts of the system - power, cooling, servers, etc.

taxonomic scheme, is a particular classification ("the taxonomy of ..."), arranged in a hierarchical structure.

A hierarchical approach makes sense for a technical crowd

A hierarchy (Greek: hierarchia (ἱεραρχία), from hierarches, "leader of sacred rites") is an arrangement of items (objects, names, values, categories, etc.) in which the items are represented as being "above," "below," or "at the same level as" one another.

A different way to look at the problem is to use an ontological approach and use knowledge management techniques.


In the context of computer and information sciences, an ontology defines a set of representational primitives with which to model a domain of knowledge or discourse. The representational primitives are typically classes (or sets), attributes (or properties), and relationships (or relations among class members). The definitions of the representational primitives include information about their meaning and constraints on their logically consistent application. In the context of database systems, ontology can be viewed as a level of abstraction of data models, analogous to hierarchical and relational models, but intended for modeling knowledge about individuals, their attributes, and their relationships to other individuals.

Note the yellow text where ontological vs. hierarchical is compared. 

I think the ontological approach could work for Open Compute Project.  I'll spend more time over the next couple of weeks circulating the idea and getting feedback.