Jon Stewart on 24 Aug 2001 07:54:48 -0000 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
hosers-talk: too tired to keep working |
so, musing... Let's make some wild generalizations. All programming code is composed of chunks which we call functions. Functions can all other functions; functions can call themselves. All functions have a property known as an interface. All functions exist as nodes in a directed graph (possibly with cycles). The interface property determines if one function is connected to another function; since it's a directed graph, this connectedness can be non-existent, one-way, or bi-directional. The functions a particular function is connected to determines which functions this particular function can utilize. Suppose that every function in the graph is connected to some other function; ie. the graph is fully-connected (ie. I forget the real term, if unless the term happens to be "connected"; I'm tired). This is a peculiar, inherent property of the graph. It simply doesn't make sense to add a node to the graph which isn't connected. All functions have roughly constant utility. Total utility is equal to the particulary utility of a function times its connections, summed over every function. Thus in any system, adding an arbitrary function adds at least constant utility. As the number of functions increases, we have a linear lower bound on utility. Even better, if we are good at designing interfaces, or lucky that our systems seemingly choose fortunate interfaces for themselves, then adding a function might bring about an increase in utility expressed in terms of the number of functions in the graph. If this is the case, we can achieve exponential growth in utility with linear growth in the added number of functions. Why, then, does it seem that we so often get sub-linear growth in utility as the size of our software systems increase? Possible reasons: 1. Poor interfaces, ill-suited to connectedness. 2. Functions vary wildly in their utility. Any others? Jon -- Jon Stewart stew1@xxxxxxxxxxx "Survey says: it was a bad idea in the first place." -- The Dismemberment Plan