How Dan Roam's Visual Codex Works for Words too
The centerpiece of Dan Roam's excellent book The Back of the Napkin
is his visual codex. It helps you to choose the right kind of picture
for anything that you want to show:
Even if you use words instead of pictures, the framework is very
useful... it doesn't matter much whether you want to describe something
in words or shapes.
When an author introduces a concept to a reader they usually describe
what the concept is either at a simple or elaborate level. You
can see this right in the top left hand corner of the diagram... a
(word) portrait of whatever the concept is. You're telling the reader what
the concept is. Just about every Wikipedia article is like this -- it
goes into reasonable detail, describing the topic.
But that's only one way. And when the concept is unfamiliar, it might
be one of the worst approaches. Today I've been trying to get a
grip on what F# (the programming language) is all about. I can find
plenty of descriptions, clearly aimed at beginners, but none of them
really help me. That's not because they're bad descriptions -- but
because a description is not the right approach.
Here are some other possibilities:
- A comparison -- show how the new concept is similar to and different from something the reader already knows. So a simple comparison of how F# is different from or similar to VB.NET or C# would help me get a handle on it. If you're introducing a technical concept to a non technical person, compare it to something in the real world.
- Show where the concept fits in with familiar problems and
ideas. This could be as simple as saying "F# is perfect for...." and
then listing certain kinds of application. This helps me put F# on "the
map" that I carry around in my head.
- Show how it fits into a process. This is like flowchart, where one of the components is F#. "Say you want to build an application that [blank]. You realize it will need the following features: [.......]. When you come to build the app, you use F# because [show how F# offers a great fit with the requirements].
- Show why it's useful. "F# will help reduce development time in the following circumstances [.......] because it [......].
