As we wrapped up a group discussion I was reminded about the wonderful discussion of correlation and causality from Freakonomics. How do they differ? When is it one, and when is it the other? Why do people confuse them? The book illustrates eloquently the differences between them. And any mention of causality needs the obligatory reference to the Merovingian: You see there is only one constant. One universal. It is the only real truth. Causality. Action, reaction. Cause and effect.
- I have 8 years of classical piano training; I haven’t played the piano in a very long time though.
- When I was young and foolish I’ve done a bit of rock-climbing.
- The first framework I’ve ever extended was Digital Research’s CP/M; it came with the source code for the BDOS and a skeleton for the BIOS that provided the 8080 interrupt-driven entry points.
- My musical preferences span an unusually wide range. For example classical, ethnic, electronic, progressive rock and rock.
- I like all wheel drive station wagons and dislike motorcycles.
Two of the projects I’ve been involved with since I started in Microsoft’s p&p group have just shipped:
- The Web Service Software Factory helps developers build Web services. This version employs the Windows Communication Framework (WCF).
- The Web Client Software Factory caters to developers building Web-based applications. It uses the Workflow Foundation (WF).
Both ship in source code and include reference implementations.
If you haven’t heard of software factories my colleagues Jack Greenfield, Keith Short, Steve Cook, Stuart Kent have an excellent book with the same title.
I’ve just wrapped up work on a patterns article. While doing the analysis with my co-authors (an co-workers) Ade Miller and Wojtek Kozaczynski I wondered about the connection between software patterns and Metcalfe’s Law.
By the way, if you’re interested in reading about how Metcalfe came up with the ideas that ultimately led to Ethernet read Michael Hiltzik’s book; you will thank me later.
Clearly the more people know about patterns, the better you can communicate with them (since instead of waving hands you would say Decorator, Broker or Service-Oriented Decomposition). Regardless of whether the growth is quadratic or not, the value of patterns increases with the number of people who use them. Stated otherwise, patterns exhibit positive network effects.