A Trace in the Sand
by Ruth Malan
What's a Trace?
This Trace is just where I jot notes as I explore in and around the territories I associate with architects architecting architecture at software, systems, system-of-systems and enterprise scopes.
And for fun:
9/3/12: Perception is tricksy stuff. And here again the broader compass of our inquiry serves to extend our ability to take different points of view. Rashomon* comes to mind, reminding us the reality we perceive is constructed. And the stories we tell ourselves contribute to shaping the fiction that is our own perception-yielding self. Collaborating, too, with all the mess of interacting intention and accident of other "selves" and their being-doing (and their self-revealing/self-deceiving). For our reality is mutually constructed of interacting fictions, our perception and the stories we tell, both.
Reality is a delicate construct. If we want to build a shared reality, we need to construct a shared narrative. Draw in and on the perspectives of others, reveal (mis)understandings, build -- in the world and in our conception -- a reality we continually probe and test. And watch for unintended consequences, but also do what we can to forestall those we can envisage, knowing though, that our perception of now is already tenuous and our conceits of then only more so. Complex. And yet simple. For actions unfold. Habits hold us in old patterns. Change is hard.
Of course, that perception is tricksy business is what allows magicians to create their illusions, and the likes of Dan Ariely and Daniel Kahneman to make careers of unraveling some of the mysteries of our unreliable perception and sense-making and personal and social narrative spinning.
See also Sleights of Mind. But consider, Rashomon was released in 1950. 1950! I'm beginning to think that Kurosawa might have crystallized much of what sentience is about (and not). What a mind! But it is also likely that he didn't put everything I -- or you -- see into his movies. That is what art is about -- a canvas for collaborative interaction and dynamic emergence. Context factors -- the artist's, and ours.
We watched Seven Samurai with Ryan over the weekend. All kinds of wonderful. (E.g., security scenarios, visualization, and you can't win purely on defense.) If you haven't delved into Kurosawa, or haven't returned for a long time, do -- and thank Dana for he introduced me to Rashomon after way too many years of my life have been spent. :-)
9/5/12: Which is a nice segue, as it turns out, to this post:
I like this point:
Which reminds me of this:
9/6/12: Sara loves her "robots are people too" t-shirt. And her creeper anatomy t-shirt (it's an inside joke). And Ryan loves his xkcd t-shirts but someone needs to ask Randall to make "pick and print" happen with t-shirts on his site so we can express our identity with a bigger xkcd vocabulary!
* Rashomon is an intense movie, impressive for many reasons including its exploration of reality as not one fixed external objective "fact" but internally negotiated and constructed -- varyingly by people whose encounter is different for many reasons including different perspective or (disad)vantage point and internal rationalizing-sensemaking/storymaking. I found it an emotionally tough movie -- rape and murder is a challenging subject for a movie that explores such already difficult material. Fitting. Awesome. But tough.
Using Richer Abstractions
"Surprising how easily we lose sight of the fact that words are the raw material out of which literature is crafted" -- Francine Prose (via Maria Popova) <-- except that now we have richer building blocks, by referential inclusion -- already powerful in literature in dead-tree book form, but ever so much more powerful in digital form. Now we can, for instance, compose a narrative poem with music, so that not only is the narrative told through powerful lyrics passed in by reference, but also by its melody, tempo, tone, rhythm. To that we can add visual imagery adding yet more layers of allusion, etc... A poem-song of songs, a poem of paintings. A composition of building blocks that may themselves be composite forms. Do we still call that literature if it relies on words threaded in songs, with their richer sound, and literal imagery richly inlaid with allusion. You get the point. Technology may give us the tools to make "giant cats of house-cats" (hat tip to Michael Feathers), but it is the command* of a vocabulary of rich abstractions and exquisite sense of fit that marks the master (in art and in systems development). And then there is Brian Andreas, who shows that even with just words a story can be carried in single a tweet. Quite magical really!
I need to scan Charles Duhigg's book on habits to see if it is useful in this context... I'd bucketed it under habits like you know, cough, Twitter-addiction, but it occurs to me that there is a category of technical (and opportunity) debt that is decision debt and there's the stuff we don't get to because we, or our stakeholders, are just stuck down in the grooves worn by habit.
Decision debt? You know: decisions we're been deferring 'until we "know more" and "have more time to explore the implications"', that have been causing entropy to mount... (We "borrow" time now against the future, defering decisions that will take longer later because the non-decision decision gets rutted into other decisions raising more rework later, or will diminish our capacity/elasticity/agility later.) It is worth considering when a decision is de facto being made by avoiding making a decision -- and what are the odds of the whatever-happens-in-the-presence-of-no-decision decision being better than one made under uncertainty but with a clear "stakes in the ground we need to test/iterate on." Then we shift our habit more to probing and adapting, than to getting coupled to the past through mounting entropy. All with the "extraordinary moment" caveat in place -- we're talking about architecturally significant decisions.
And yes, I am aware we don't always know all that will turn out to be architecturally significant. So we should just shrug and punt? Or allow our attention to pulse to some rhythm, repeatedly considering where to seek feedback and (re)consider what is architecturally significant, what is make-or-break important to structural/system integrity and system value.
9/12/12: As for Twitter addiction, this is interesting:
9/14/12: This, via Michael Feathers:
The element of unpredictable future cost is certainly pivotal. "Technical debt" is a concept that, at least, carries a grok-level hit that undisciplined "spending" now incurs downstream cost -- payback with interest. At sort of "developing world" interest rates.... ;-)
I like Martin Fowler's treatment:
but it by no means deserves to be the last word, mostly because while insightful and useful, I think it is missing key points. I look forward to reading what Michael Feathers does.
In the meantime:
I mentioned that here, but didn't give it quite the highlight I should have. Michael wonders what our systems would be like, if we renewed them analogously to cells in our bodies. See also his latest talk on InfoQ -- Technical Debt. I was responding to much the same "symptoms" in my commentary, further elaborated here. I do very much like Michael's point that we should see software systems as organically growing systems. I think there is a hybrid point to be made though. Fallible though we are, and incomplete as our understanding and uncertain though the design space is, we are intentional learning sorts of beings, and we (can, if we so invest) design to make our systems better -- design and redesign, and renew.
As analogies go... here's a thought from last year:
and this too:
10/17/12: This, from Charlie Alfred, expands on the observations above, with useful examples that illuminate how analogies are used, but also with potential for misuse (if we don't understand the mechanism design):
Charlie further noted:
Analogies are a tool in our creativity/problem finding-solving toolkit, but if we orient ourselves too pedantically then we miss their utility. Further, if we use analogies, we need to be sensitive to the fact that not everyone has the same facility with applying, leveraging and getting utility (as opposed to frustration and misapplication) from them -- directly, and indirectly. Including from where they break down/are weak/need to be complemented or hybridized -- or dropped. And then, we need to be clear where our application of the analogy is to be used. Good stuff. Charlie always pushes my thinking (in good ways).
Over the years I have written a lot about sketching, modeling and visualization in architectural design of software and systems, and I thought it might be useful to pull together some pointers to my notes, as well as to some other related work.
So, here are some notes on sketching as a way to:
Sketching is useful in JEDUF, or just enough design upfront, and evolving and adapting the design as a dance between intention, emegence and recovery (aka "refactoring") from this chaordic lurching towards great, avoiding with all the might we can muster (not much, generally) becoming canalized too early by the coupling not just in the code but the human perceptions and more that get wrapped around the system.
Of course that gets us into visualizing, and why, and how, and what. My notes on this topic are widely scattered through this Trace, but here are some of them:
In short, visualizing architecture is a smoke and mirrors kind of thing. Huh? The distinction between the design as envisioned (i.e., design intent) and the design reflection (of what is e.g., views on the codebase, in the case of software architecture). Tools like Lattix and other variations on the DSM theme can go both ways -- expressing design intent with elements and design rules for allowed dependencies, and reflection or views on the codebase, showing the as-is structure (in so far as the elements and static dependencies reveals structure). There's also visualizing the properties of the system. Etc. In the visualization zoo slideset, I started to lay out the various dimensions of the software visualization space. I should probably update it and stick it on Slideshare so others can bounce ideas and examples off it and help move it in a useful direction. We need better visualization tools. Tools that help us understand and navigate complex systems, identify (potential, emerging and already) trouble spots, experiment with changing the structure, etc. Complex systems are complex, to be sure, but also sheer volume of code impedes "grok" level insight gathering (to "see" the system, but also to figure out where to steer attention).
Posts and presentations, etc., from other people, adding useful perspective:
For fun/by analogy (making visible that which we don't usually see because it is hidden, goes too fast, is too small or too far away, etc.):
And more here: Software Visualization Tools and Resources. I haven't updated that in quite a while -- please do send along a heads-up to other tools and resources that would be good to have on the list.
On Visualization as an Aid to Perception: One way to get a "pressure map" of the system is to just ask. That is, ask the team to map the hotspots they perceive. For example, visually map the collected "sensory experience" or perceptions, among the team, of troublespots in the code base, including the extended team of QA/testing and operations as well as customer relations and marketing and sales* (they hear what the customers are freaking out about, and when and why it is getting harder to sell) [in a product context; translate to stakeholders/impacted persons in services context]. Sure, getting objective metrics like code change is important, and should be on the "dashboard." Too. This relates to my mention of Rashomon. Anyway, I do get that it is important to have system signals that don't rely on perception. But mapping (mis)perception also tells us lots of things. And people, for all our perceptual frailty, are enormously capable too -- so capable, that for intuition, ingenuity and creativity we aren't yet matched (entirely, though we may be surpassed locally) by the capability-expanding tools we've created for ourselves and our fellow travellers on "spaceship earth." And that can make us confident in our perception. Over-confident. So. Proceed with caution. But proceed!
This is an awesome visualization of "tell the truth, but tell it slant" (via Maria Popova). Sometimes our visualization is more about "putting the source of the smell on the table" in a "commitment to objectivity" way.
Also related -- I need to take a look back at the work I was doing on the "visualization zoo" where I was classifying concerns and approaches. For example, system health monitoring (which I playfully think of being analogous to patient monitoring in ICU) is an area of concern that bundles a bunch of concerns.
* Of course, the further from code, the more we're looking at experience, but code drives the experience of users and system integrators, etc. Too often these voices on the experience side aren't heard directly by the development team.
9/11/12: Thought-provoking talk/exciting insights and useful pointers:
Aside on Trace style: I realize that those who first encounter me through a quirky post are likely to tag me "fluff" and move on without sticking around to see if, for example, a post with a 2-year old's drawing is going to turn up anything interesting. On the one hand, I think I should attend better to a broader spectrum of folk who want something "directly relevant". On the other, that would mean I was writing articles, not Tracing some of my playful exploration. It would have value -- undoubtedly more than this. But this is how I think and remember -- at least, what I think here, I tend to remember enough to be able to use Google as a memory crutch, so its a nice symbiosis. Besides, this is dynamic. Our life is where we do our living. My Trace and my work is about being fully dimensional, and bring that richness (of my encounter, and what it builds in me) to everything I do, trying to cram as much texture, hope and compassion into my life as I can. For I believe that we, we have to be the best story we will encounter. It doesn't do to think that fully dimensional vibrant people exist only in books, in other people's fictions. But out of our fullness of life, we create with more perspective, more tools for innovating not just in the technical system but the sociotechnical systems that weave through them.
This is awesome:
though I was disappointed not to have, in addition to "be educable," the admonishment to develop an ability to attend to and see the shaping forces even as they reshape and emerge, and the larger patterns that reveal them. And failing that, to listen more to "mom" or others that have that canny ability to discern the structural drivers and forces in play.
9/6/12: Of course the following tweet is just begging for a link to Getting Past ‘But’::
But I wouldn't want Simon to think I was "hijacking his podium" or something like that, even though it would, coming from me, be a non-threatening collaborative gesture. Non threatening? People just don't take me seriously. For instance, I think we need to learn more from bonobos:
I say we should learn from a Japanese man making foreign art films in the 50's. Clearly I'm not a competitve threat. ;-)
Besides, I'm one of those people who identifies with George W. (Bush) when he said "People tend to misunderestimate me." What? They do. ;-)
Software Architecture Workshop
Do come along! It'll be fun. And you have ever so much to teach me. :-) And I'll give you a chance to, too. That's what makes it fun. We draw forth from our experience, mine and yours, and make connections between the experiences and concepts and techniques and heuristics, etc. that we all bring, and weave a new set of mental models, cognitive and experiential tooling, that raise the platform of our capability. Too fluffy? Ok, we work on creating a draft architecture, we muck in, and get the work done. And tell and debrief stories. And... so forth. Learning by doing, asking and reflecting.
EA and Politics
I understand the need to advocate for EA rising to the full scope that the name promises -- architecture of the enterprise, no less. I do it myself. Have done for years. In our seminal "what it tales to be great" paper on the role of the architect (2004) and the follow-up paper on EA and strategic business advantage (2005), we laid out the different scopes of EA, and what is gained at each widening of scope (from infrastructure to IT or business technology to the full compass of the business, not just technology). The Fractal and Emergent (2010) paper went further, laying out a way to see the intimate relationship between architecture and strategy at different scopes of business initiative, and balancing intentionality and emergence for agility and responsiveness. That said, what is important, I think, is to recognize the diversity of predicaments enterprise architects, CIOs and CTOs and Strategy VPs, Chief Innovation Officers, and so forth, face. There is a spread in how strategy is understood and practiced (see, for example, Strategy Safari), so I think it is natural that there will be a spread in how ready organizations are going to be to embrace various conceptions of the scope of EA and what they will be willing to charter architects to do (from marker carrying advisors to effective partners in designing and leading strategic initiatives, etc.).
9/13/12: As definitions go, my orientation is that some of these concepts are rich enough to allow multiple interpretations and orientations and these should be context dependent. Our take on strategy, for example, should quite arguably be different if we "just don't have a clue" (because the context is in turmoil) versus situations where we are elaborating a, at least for the time being, fairly stable ecosystem. Yeah, yeah, always we need to be on the watch for disruptions and opportunities to disrupt, but too much turmoil and uncertainty is costly to ecosystems. My notion is textured and not naive, though I try to simplify for communication in contexts where simplicity is an entry point. (I do not make that assumption in this Trace. Here you get nuance, but fragmented, so you have to be quick thinking and pretty well steeped in the issues here.)
So hey, two thoughts from this speechifying night:
Skimming tweets tonight, it struck me again how wickedly smart the people I follow are. And I love that so many show up with such striking vibrant personality in just 140 char bites. Sara asked to see my tweet stream tonight, and she wondered why I don't tweet much. Well, I expect those who tolerate my oversharing know where to find it. :-) Want to know what she said? Well, I'm going to tell you anyway. She said "You should tweet more. People would want to create another account just so they could follow you twice." Girls are so nice. We really need more in our field! ;-)
Well, have to be up at 6am to get tweener off to school. Wrenching as it is to tear myself away from y'all. ;-) (Y'all? The voices in my head, and you. Who'd you think I meant?)
Back to Busy
Drat. I've exceeded my Trace quota for September already, so I'll try to back off on this procrastination/release valve for a while. Let me know when you've done something cool that I should mention. Other than that, I'm going to go do useful stuff people will hug (figuratively, figuratively) me for. :-) Oh well...
What? I should listen to Vonnegut? o.
9/8/12 Oh man, now I have more to read!
9/8/12: I used to like to put napster easter eggs in posts. Then napster failed me.
But this I can do:
(David Troupes is awesome -- sharp and penetrating without being cynical and bleak; hard in these times when we have become disabused of so many of our illusions about our broader humanity, and closer selves. And he's about to become -- if not already -- a new dad. Perhaps he'll finish the story! Although I also love that it is unfinished... It just seems to fit... :-)
Chaordic, with Discipline
A good read (via Dave Gray):
Makes you respect what we did in Fractal and Emergent all the more, doesn't it? ;-)
I still need to buy/read The Connected Company. Those who have read it should let me know how much it departs from what Dave published via blogs and such over the past year or so.
Something like Broccoli
Busy days... I made some sketchnotes on the flight today; I will at least share my "overview of my overview" of architects architecting architecture. Soon. Maybe. Not that anyone is interested [enough to say so and tip the scales of inertia]. ;-)
It occured to me that, in the realm of the possible, these might be two reader reactions to my Trace:
Well, at a minimum, I ratchet up the diversity quotient in the reading diet of anyone who stops by here. And that's a good thing. Sort of like eating your broccoli. ;-)
9/12/12: I clearly prove the exception:
A sad day. Heartsore for those who lost loved ones.
Interesting points and comment-conversation. It takes me back. In the early/mid 90's, I worked in the Software Technology Lab at HP Labs under Martin Griss on the "Flexible Software Factory" project. Later (mid-90's), I worked with Derek Coleman on Team Fusion, focusing on architecture and evolutionary development. Anyway, reuse was important because many of HP's businesses used product family/product lines to serve elaborated market niches. In the ecosystems work that y'all are so steadfastly refusing to encourage me to share (wink), I explore this strategy further (in the meantime, Fractal and Emergent is the go-to). Suffice it to say, product lines still have a place. And systems built of compound building blocks -- of richer abstractions -- aren't going away. Value delivery is our goal, indeed! How we reach that goal is a key matter of technical strategy -- gameplays we set up (and adjust, adaptively, of course) with a longer view and business sustainability in mind.
This is a great talk on what I call the "cottage revolution":
Not Just Software
I know I'm not a great speaker, and many women who are comfortable speaking in smaller settings likewise don't feel like they are "good" at speaking in a large group context. But I also wonder how much that is because we aren't encouraged. And how much that is because our credibility meter for women is, generally speaking, de facto set very low.
9/13/12: Why are men men and women female? (In the same sentence!!) When I see "men" and "females", I always wonder "female of what species?"
I don't mean for this to be a political statement, but a comment on a meme. Ok, with that as context, here is the meme:
A Google image search on my site for "no strategy" has one of my images in fourth place. Wahoo! That's like fame! ;-) The scroll-over on the image is... "shoot first and aim later"-- in some corporate cultures that is embraced as a value integral to identity. There is some debate going on as to just how much more turbulent these times are than in the past, but I think the interesting question has more to do with where is there relatively more stability, where is an ecosystem being violently disrupted, which are plumb ready for disruption, and so forth. Not to mention, when do we want to really shake things up, and when do we want to harvest the orchards we've planted. Everyone impressed and disappointed by the iPhone 5 take note.
This, via Kris Meukens, makes many interesting/important points:
Last night we saw the play, To Kill a Mockingbird. Standing ovation well done. So much deserves comment, but hurried. This struck me:
I agree, and don't. When open, even a crack to others, we allow the potential of being bumped off our rutted trajectory. Like the scene where Scout talks to Mr. Cunningham. A perturbation of kindness. Not relevant to architects? Life is relevant to architects! How much more effective so small an intervention, than attempting to dictate a decision when minds are set against it? We need to find the "trimtab".
Welcome back from the Summer y'all -- visits to my sites, even this one, are back to pre-Summer levels of... scariness*. :-)
Off to Germany this weekend, and The Netherlands the weekend after. So. Excited!
Tonight -- dancing in the streets in Bloomington. The Lotus festival is really a wonderful annual event. Always a good sign when a town closes off streets for music. :-)
* Scariness? Well... not exactly. But part of the territory of putting my thinking "out there," is that for the most part people go "meh" and bounce off to something more to their tastes and inclination. Still, it means being judged, assessed, ... categorized.
Well, my break from Tracing while in Europe cured most folk of the habit of checking in on me. Something to be grateful for, huh? Obviously no-one would want to like encourage me to Trace. ;-)
Anyhoo. Catching up. Saw this:
Thanks Richard! Great list! @RiczWest is such a warm person to meet at the "twitter watercooler," he will missed during his break from Twitter. Of course my "architecture on my mind" depiction is distinctly sketchy, but nice of Richard to be positive about it. Spain? I'm envious! Well, hopefully Richard will find time and inclination to tweet out architecture insights and highlights of his time in Spain from time to time.
But it is good to have Peter Bakker back! I'm going to have to scoop up his links to checklists, to persist them in collection form. ;-)
I also write at:
- Bredemeyer Resources for Architects
Architects and Architecture
- Todd Hoff (highly recommended)
- Anna Liu
- JD Meier
Architect Professional Organizations
Agile and Lean
Agile and Testing
Other Software Thought Leaders
- CapGeminini's CTOblog
CTOs and CIOs
CEOs (Web 2.0)
- Don MacAskill (SmugMug)
- Wired's monkey_bites
Social Networking/Web 2.0+ Watch
- Dan Roam
- David Sibbet (The Grove)
Strategy, BI and Competitive Intelligence
- Freakonomics blog
Um... and these
- CNN Money Business of Green videos