Wednesday, December 16, 2009

Composability as a way to control Complexity

I came across this great video of a conversation with Brian Beckman on Complexity in computing, on MSDN's Channel 9.

In that video Brian Beckman compares Inherent or Essential complexity (of the problem you, programmer, are trying to solve) and Accidental complexity (not inherent in the initial problem, but introduced by the many technologies and programming languages you have to use for example.)

He also introduces Functional Programming, how it limits the ways to hook things together and dependencies on the context in which software components executes, and how that makes it much easier to compose complex systems out of small building blocks.

In summary, Composability is the way to control Complexity, and functional programs are easier to compose.

The postings on this site are my own and don’t necessarily represent positions, strategies or opinions of my employer IBM.