Tuesday: partly sunny, chances of showers
Maybe it’s all the rain during this season. I sure look forward to those dry, maybe sunny days when I notice them on my dashboard weather widget. Alas, I’m often disappointed. A nice, bright sun a few days away mysteriously turns into a cloud or rain drops. It’s a big disappointment. Often I call up the weather station and complain. Why can’t they be more accurate? Why don’t they develop better processes? Sometimes it gets nasty and I threaten to sue them. I mean, if I’ve planned my picnic because Saturday is forecasted to be sunny, shouldn’t somebody have to pay to clean my soggy picnic blanket?
Actually, that doesn’t happen. In fact, we’d consider somebody a tad looney if they asserted that somehow the weather forecast should be guaranteed. We know that science is always advancing but weather forecasting is imprecise because the complexity of the “weather system” ensures it is affected by processes described by chaos and complexity theory. There is an inherent limit on precision.
The most common analogy for software development is some form of construction. In fact, we talk about system architecture, building components, software construction. Creating software is less like building and more like weather forecasting.
Methods and processes for constructing buildings are quite well established. And all buildings share far more commonalities than differences. Most importantly, interacting with buildings involves human cognition in extremely limited ways. Software, on the other hand, involves a tremendous amount of human cognition and social effects. There is conceptualization, definition, communication, attitudes, opinions, assumptions, the entire spectrum of human complexity. Given this, we might be advised to study meteorology as much as architecture.
2 Responses to “Tuesday: partly sunny, chances of showers”
Sorry, comments are closed for this article.
November 16th, 2006 at 01:15 AM
Ah, but we don’t build software – compilers build software. We just design it:
http://vagueware.com/2006/11/12/design-as-code-why-ruby-rocks
December 21st, 2006 at 08:13 PM
Having a spouse as an Architect I know that architecture is not an exact science either – similar to my view of the software “engineering” process. In fact, my spouse and I often share work stories and are both surprised how similar our two professions are. Both professions use methodologies and even patterns to help manage the design, implementation and quality of projects, but both are held hostage to how accurately that methodology can reduce project risks. In fact, software design uses the concept of “patterns” that was inspired by Alexander’s patterns in architecture, both use the same principles.
My blog can be found at: http://snakesgemscoffee.blogspot.com/